Subset patch/branch for GLEW as used for NVIDIA Cg Toolkit purposes

This commit is contained in:
Nigel Stewart 2011-01-01 11:04:18 -06:00
parent 4a9b2a7b42
commit d7caf51f8e
4 changed files with 22 additions and 1 deletions

View File

@ -30,6 +30,8 @@ if (@ARGV)
foreach my $ext (sort @extlist) foreach my $ext (sort @extlist)
{ {
my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext); my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
print "\n#if !defined(GLEW_SUBSET) || defined(GLEW_SUBSET_$extname)\n";
output_decls($functions, \&make_pfn_decl); output_decls($functions, \&make_pfn_decl);
print "\n#endif /* GLEW_SUBSET_$extname */\n";
} }
} }

View File

@ -55,12 +55,15 @@ if (@ARGV)
my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext); my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
make_separator($extname); make_separator($extname);
print "#ifndef $extname\n#define $extname 1\n"; print "#ifndef $extname\n";
output_tokens($tokens, \&make_define); output_tokens($tokens, \&make_define);
output_types($types, \&make_type); output_types($types, \&make_type);
output_exacts($exacts, \&make_exact); output_exacts($exacts, \&make_exact);
output_decls($functions, \&make_pfn_type); output_decls($functions, \&make_pfn_type);
print "\n#if !defined(GLEW_SUBSET) || defined(GLEW_SUBSET_$extname)\n";
print "#define $extname 1\n";
output_decls($functions, \&make_pfn_alias); output_decls($functions, \&make_pfn_alias);
print "\n#endif /* GLEW_SUBSET_$extname */\n";
my $extvar = $extname; my $extvar = $extname;
$extvar =~ s/GL(X*)_/GL$1EW_/; $extvar =~ s/GL(X*)_/GL$1EW_/;

View File

@ -31,6 +31,8 @@ if (@ARGV)
foreach my $ext (sort @extlist) foreach my $ext (sort @extlist)
{ {
my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext); my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) = parse_ext($ext);
print "\n#if !defined(GLEW_SUBSET) || defined(GLEW_SUBSET_$extname)\n";
output_decls($functions, \&make_pfn_decl); output_decls($functions, \&make_pfn_decl);
print "\n#endif /* GLEW_SUBSET_$extname */\n";
} }
} }

View File

@ -158,6 +158,20 @@ typedef _W64 int ptrdiff_t;
#endif /* _WIN32 */ #endif /* _WIN32 */
/* GLEW depends on extension string entry points for internal purposes */
#ifdef GLEW_SUBSET
#ifndef GLEW_SUBSET_WGL_ARB_extensions_string
#define GLEW_SUBSET_WGL_ARB_extensions_string
#endif
#ifndef GLEW_SUBSET_WGL_EXT_extensions_string
#define GLEW_SUBSET_WGL_EXT_extensions_string
#endif
#ifndef GLEW_SUBSET_GLX_VERSION_1_2
#define GLEW_SUBSET_GLX_VERSION_1_2
#endif
#endif
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif