mirror of
https://github.com/nigels-com/glew.git
synced 2024-11-21 21:35:06 +00:00
added customized subset selection
git-svn-id: https://glew.svn.sourceforge.net/svnroot/glew/trunk/glew@326 783a27ee-832a-0410-bc00-9f386506c6dd
This commit is contained in:
parent
15fd29673a
commit
254737d17b
2
TODO.txt
2
TODO.txt
@ -1,8 +1,6 @@
|
||||
|
||||
Major:
|
||||
- add OpenGL 2.0 support
|
||||
- add support for initialization on first use
|
||||
- add text file for selecting a subset of the extensions
|
||||
|
||||
Minor:
|
||||
- add support for all SUN, MTX, and OML extensions
|
||||
|
108
auto/Makefile
108
auto/Makefile
@ -19,6 +19,20 @@ CORE = core
|
||||
EXT = extensions
|
||||
BLACKLIST = blacklist
|
||||
|
||||
GL_CORE_SPEC := $(CORE)/GL_VERSION*
|
||||
GLX_CORE_SPEC := $(CORE)/GLX_VERSION*
|
||||
ifeq (custom,$(MAKECMDGOALS))
|
||||
#GL_CORE_SPEC := $(shell grep GL_VERSION custom.txt | sed -e 's/\(.*\)/$(CORE)\/\1/g;')
|
||||
GL_EXT_SPEC := $(shell grep "^[ \t]*GL_" custom.txt | grep -v GL_VERSION | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
|
||||
WGL_EXT_SPEC := $(shell grep "^[ \t]*WGL_" custom.txt | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
|
||||
#GLX_CORE_SPEC := $(shell grep GLX_VERSION custom.txt | sed -e 's/\(.*\)/$(CORE)\/\1/g;')
|
||||
GLX_EXT_SPEC := $(shell grep "^[ \t]*GLX_" custom.txt | grep -v GLX_VERSION | sed -e 's/\(.*\)/$(EXT)\/\1/g;')
|
||||
else
|
||||
GL_EXT_SPEC := $(EXT)/GL_*
|
||||
WGL_EXT_SPEC := $(EXT)/WGL_*
|
||||
GLX_EXT_SPEC := $(EXT)/GLX_*
|
||||
endif
|
||||
|
||||
PARSE_SPEC = parse_spec.pl
|
||||
SYSTEM = $(strip $(shell uname -s))
|
||||
|
||||
@ -30,7 +44,7 @@ D.DEST = $(TOP)/doc
|
||||
TARGETS = $(I.DEST)/glew.h $(I.DEST)/wglew.h $(I.DEST)/glxew.h $(S.DEST)/glew_gl.c $(S.DEST)/glew_str.c $(S.DEST)/glew_wgl.c $(S.DEST)/glew_glx.c $(S.DEST)/glewinfo.c \
|
||||
$(D.DEST)/glew.html $(D.DEST)/wglew.html $(D.DEST)/glxew.html
|
||||
|
||||
all: $(TARGETS)
|
||||
all custom: $(TARGETS)
|
||||
|
||||
registry: $(REGISTRY)/.dummy
|
||||
ext: $(EXT)/.dummy
|
||||
@ -58,14 +72,14 @@ endif
|
||||
$(I.DEST)/glew.h: $(EXT)/.dummy
|
||||
test -d $(I.DEST) || mkdir -p $(I.DEST)
|
||||
cp -f $(SRC)/glew_head.h $@
|
||||
$(BIN)/make_header.pl GLAPIENTRY GL $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_header.pl GLAPIENTRY GL $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_header.pl GLAPIENTRY GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_header.pl GLAPIENTRY GL $(GL_EXT_SPEC) >> $@
|
||||
echo -e "/* ------------------------------------------------------------------------- */\n\n#if defined(GLEW_MX) && defined(_WIN32)\n#define GLEW_FUN_EXPORT\n#else\n#define GLEW_FUN_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n" >> $@
|
||||
echo -e "#if defined(GLEW_MX)\n#define GLEW_VAR_EXPORT\n#else\n#define GLEW_VAR_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n" >> $@
|
||||
echo -e "#if defined(GLEW_MX) && defined(_WIN32)\nstruct GLEWContextStruct\n{\n#endif /* GLEW_MX */" >> $@
|
||||
$(BIN)/make_struct_fun.pl GLEW_FUN_EXPORT $(CORE)/GL_VERSION* $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_struct_fun.pl GLEW_FUN_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
|
||||
echo -e "\n#if defined(GLEW_MX) && !defined(_WIN32)\nstruct GLEWContextStruct\n{\n#endif /* GLEW_MX */\n" >> $@
|
||||
$(BIN)/make_struct_var.pl GLEW_VAR_EXPORT $(CORE)/GL_VERSION* $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_struct_var.pl GLEW_VAR_EXPORT $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
|
||||
echo -e "\n#ifdef GLEW_MX\n}; /* GLEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
|
||||
perl -e 's/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/GLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_1;\nGLEW_VAR_EXPORT GLboolean __GLEW_VERSION_1_2;/' -pi $@
|
||||
rm -f $@.bak
|
||||
@ -73,21 +87,21 @@ $(I.DEST)/glew.h: $(EXT)/.dummy
|
||||
|
||||
$(I.DEST)/wglew.h: $(EXT)/.dummy
|
||||
cp -f $(SRC)/wglew_head.h $@
|
||||
$(BIN)/make_header.pl WINAPI WGL $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_header.pl WINAPI WGL $(WGL_EXT_SPEC) >> $@
|
||||
echo -e "/* ------------------------------------------------------------------------- */\n\n#ifdef GLEW_MX\n#define WGLEW_EXPORT\n#else\n#define WGLEW_EXPORT GLEWAPI\n#endif /* GLEW_MX */\n\n#ifdef GLEW_MX\nstruct WGLEWContextStruct\n{\n#endif /* GLEW_MX */" >> $@
|
||||
$(BIN)/make_struct_fun.pl WGLEW_EXPORT $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_struct_var.pl WGLEW_EXPORT $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_struct_fun.pl WGLEW_EXPORT $(WGL_EXT_SPEC) >> $@
|
||||
$(BIN)/make_struct_var.pl WGLEW_EXPORT $(WGL_EXT_SPEC) >> $@
|
||||
echo -e "\n#ifdef GLEW_MX\n}; /* WGLEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
|
||||
cat $(SRC)/wglew_tail.h >> $@
|
||||
|
||||
$(I.DEST)/glxew.h: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glxew_head.h $@
|
||||
$(BIN)/make_header.pl '' GLX $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_header.pl '' GLX $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_header.pl '' GLX $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_header.pl '' GLX $(GLX_EXT_SPEC) >> $@
|
||||
echo -e "/* ------------------------------------------------------------------------- */\n\n#ifdef GLEW_MX\n#define GLXEW_EXPORT\n#else\n#define GLXEW_EXPORT extern\n#endif /* GLEW_MX */" >> $@
|
||||
$(BIN)/make_struct_fun.pl extern $(CORE)/GLX_VERSION* $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_struct_fun.pl extern $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
|
||||
echo -e "\n#if defined(GLEW_MX)\nstruct GLXEWContextStruct\n{\n#endif /* GLEW_MX */\n" >> $@
|
||||
$(BIN)/make_struct_var.pl GLXEW_EXPORT $(CORE)/GLX_VERSION* $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_struct_var.pl GLXEW_EXPORT $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
|
||||
echo -e "\n#ifdef GLEW_MX\n}; /* GLXEWContextStruct */\n#endif /* GLEW_MX */\n" >> $@
|
||||
perl -e 's/GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;/GLXEW_EXPORT GLboolean __GLXEW_VERSION_1_0;\nGLXEW_EXPORT GLboolean __GLXEW_VERSION_1_1;\nGLXEW_EXPORT GLboolean __GLXEW_VERSION_1_2;/' -pi $@
|
||||
cat $(SRC)/glxew_tail.h >> $@
|
||||
@ -95,17 +109,17 @@ $(I.DEST)/glxew.h: $(EXT)/.dummy
|
||||
|
||||
$(S.DEST)/glew_gl.c: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glew_gl_head.c $@
|
||||
$(BIN)/make_def_fun.pl GL $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_def_fun.pl GL $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_def_fun.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_def_fun.pl GL $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_gl_fun.c >> $@
|
||||
$(BIN)/make_def_var.pl GL $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_def_var.pl GL $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_def_var.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_def_var.pl GL $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_gl_var.c >> $@
|
||||
$(BIN)/make_init.pl GL $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_init.pl GL $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_init.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_init.pl GL $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_gl_init.c >> $@
|
||||
$(BIN)/make_list.pl $(CORE)/GL_VERSION* | grep -v '\"GL_VERSION' >> $@
|
||||
$(BIN)/make_list.pl $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_list.pl $(GL_CORE_SPEC) | grep -v '\"GL_VERSION' >> $@
|
||||
$(BIN)/make_list.pl $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_gl_tail.c >> $@
|
||||
perl -e "s/GLEW_VERSION_STRING/$(GLEW_MAJOR)\.$(GLEW_MINOR)\.$(GLEW_MICRO)/g" -pi $@
|
||||
perl -e "s/GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader\(GLEW_CONTEXT_ARG_VAR_INIT\);/{ GLEW_ARB_vertex_shader = !_glewInit_GL_ARB_vertex_shader(GLEW_CONTEXT_ARG_VAR_INIT); _glewInit_GL_ARB_vertex_program(GLEW_CONTEXT_ARG_VAR_INIT); }/g" -pi $@
|
||||
@ -113,39 +127,39 @@ $(S.DEST)/glew_gl.c: $(EXT)/.dummy
|
||||
|
||||
$(S.DEST)/glew_wgl.c: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glew_wgl_head.c $@
|
||||
$(BIN)/make_def_fun.pl WGL $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_def_var.pl WGL $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_def_fun.pl WGL $(WGL_EXT_SPEC) >> $@
|
||||
$(BIN)/make_def_var.pl WGL $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_wgl_var.c >> $@
|
||||
$(BIN)/make_init.pl WGL $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_init.pl WGL $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_wgl_init.c >> $@
|
||||
$(BIN)/make_list.pl $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_list.pl $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_wgl_tail.c >> $@
|
||||
rm -f $@.bak
|
||||
|
||||
$(S.DEST)/glew_glx.c: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glew_glx_head.c $@
|
||||
$(BIN)/make_def_fun.pl GLX $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_def_fun.pl GLX $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_def_fun.pl GLX $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_def_fun.pl GLX $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_glx_fun.c >> $@
|
||||
$(BIN)/make_def_var.pl GLX $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_def_var.pl GLX $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_def_var.pl GLX $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_def_var.pl GLX $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_glx_var.c >> $@
|
||||
$(BIN)/make_init.pl GLX $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_init.pl GLX $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_init.pl GLX $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_init.pl GLX $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_glx_init.c >> $@
|
||||
$(BIN)/make_list.pl $(CORE)/GLX_VERSION_1_3 | grep -v '\"GLX_VERSION' >> $@
|
||||
$(BIN)/make_list.pl $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_list.pl $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_glx_tail.c >> $@
|
||||
$(BIN)/fix_OML_sync_control.sh $@
|
||||
rm -f $@.bak
|
||||
|
||||
$(S.DEST)/glew_str.c: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glew_str_head.c $@
|
||||
$(BIN)/make_str.pl $(CORE)/GL_VERSION* $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_str.pl $(GL_CORE_SPEC) $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_str_wgl.c >> $@
|
||||
$(BIN)/make_str.pl $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_str.pl $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_str_glx.c >> $@
|
||||
$(BIN)/make_str.pl $(CORE)/GLX_VERSION* $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_str.pl $(GLX_CORE_SPEC) $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_str_tail.c >> $@
|
||||
# $(BIN)/fix_OML_sync_control.sh $@
|
||||
# perl -e "s/GLEW_VERSION_STRING/$(GLEW_MAJOR)\.$(GLEW_MINOR)\.$(GLEW_MICRO)/g" -pi $@
|
||||
@ -155,39 +169,39 @@ $(S.DEST)/glew_str.c: $(EXT)/.dummy
|
||||
|
||||
$(S.DEST)/glewinfo.c: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glewinfo_head.c $@
|
||||
$(BIN)/make_info.pl $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_info.pl $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_info.pl $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_info.pl $(GL_EXT_SPEC) >> $@
|
||||
echo -e "#ifdef _WIN32\n" >> $@
|
||||
$(BIN)/make_info.pl $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_info.pl $(WGL_EXT_SPEC) >> $@
|
||||
echo -e "#else /* _UNIX */\n" >> $@
|
||||
$(BIN)/make_info.pl $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_info.pl $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_info.pl $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_info.pl $(GLX_EXT_SPEC) >> $@
|
||||
echo -e "#endif /* _WIN32 */\n" >> $@
|
||||
|
||||
cat $(SRC)/glewinfo_gl.c >> $@
|
||||
$(BIN)/make_info_list.pl $(CORE)/GL_VERSION* >> $@
|
||||
$(BIN)/make_info_list.pl $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_info_list.pl $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_info_list.pl $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glewinfo_wgl.c >> $@
|
||||
$(BIN)/make_info_list.pl $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_info_list.pl $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glewinfo_glx.c >> $@
|
||||
$(BIN)/make_info_list.pl $(CORE)/GLX_VERSION* >> $@
|
||||
$(BIN)/make_info_list.pl $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_info_list.pl $(GLX_CORE_SPEC) >> $@
|
||||
$(BIN)/make_info_list.pl $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glewinfo_tail.c >> $@
|
||||
$(BIN)/fix_OML_sync_control.sh $@
|
||||
|
||||
$(D.DEST)/glew.html: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glew_head.html $@
|
||||
$(BIN)/make_html.pl $(EXT)/GL_* >> $@
|
||||
$(BIN)/make_html.pl $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_tail.html >> $@
|
||||
|
||||
$(D.DEST)/wglew.html: $(EXT)/.dummy
|
||||
cp -f $(SRC)/wglew_head.html $@
|
||||
$(BIN)/make_html.pl $(EXT)/WGL_* >> $@
|
||||
$(BIN)/make_html.pl $(WGL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_tail.html >> $@
|
||||
|
||||
$(D.DEST)/glxew.html: $(EXT)/.dummy
|
||||
cp -f $(SRC)/glxew_head.html $@
|
||||
$(BIN)/make_html.pl $(EXT)/GLX_* >> $@
|
||||
$(BIN)/make_html.pl $(GLX_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_tail.html >> $@
|
||||
|
||||
clean:
|
||||
|
@ -26,13 +26,14 @@ our $type = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
output_decls($functions, \&make_pfn_decl);
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
output_decls($functions, \&make_pfn_decl);
|
||||
}
|
||||
}
|
||||
|
@ -20,15 +20,16 @@ our $type = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n";
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n";
|
||||
}
|
||||
}
|
||||
|
@ -49,26 +49,33 @@ our $type = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
my $extstr = $extlist[0];
|
||||
printf STDERR "FASZI: $extstr \n";
|
||||
#if (length($extstr) > 1)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
|
||||
make_separator($extname);
|
||||
print "#ifndef $extname\n#define $extname 1\n";
|
||||
output_tokens($tokens, \&make_define);
|
||||
output_types($types, \&make_type);
|
||||
output_exacts($exacts, \&make_exact);
|
||||
output_decls($functions, \&make_pfn_type);
|
||||
output_decls($functions, \&make_pfn_alias);
|
||||
make_separator($extname);
|
||||
print "#ifndef $extname\n#define $extname 1\n";
|
||||
output_tokens($tokens, \&make_define);
|
||||
output_types($types, \&make_type);
|
||||
output_exacts($exacts, \&make_exact);
|
||||
output_decls($functions, \&make_pfn_type);
|
||||
output_decls($functions, \&make_pfn_alias);
|
||||
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
|
||||
print "\n#define $extvar " . $type . "EW_GET_VAR(" . prefix_varname($extvar) . ")\n";
|
||||
print "\n#endif /* $extname */\n\n";
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
|
||||
print "\n#define $extvar " . $type . "EW_GET_VAR(" . prefix_varname($extvar) . ")\n";
|
||||
print "\n#endif /* $extname */\n\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#} else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
#}
|
||||
|
||||
|
@ -22,28 +22,29 @@ my $cur_group = "";
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
$cur_group = $extname;
|
||||
$cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/;
|
||||
$extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/;
|
||||
if ($cur_group ne $group)
|
||||
{
|
||||
$group = $cur_group;
|
||||
print "<br>\n";
|
||||
}
|
||||
if ($exturl)
|
||||
{
|
||||
print "<a href=\"$exturl\">$extname</a><br>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print "$extname<br>\n";
|
||||
}
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
$cur_group = $extname;
|
||||
$cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/;
|
||||
$extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/;
|
||||
if ($cur_group ne $group)
|
||||
{
|
||||
$group = $cur_group;
|
||||
print "<br>\n";
|
||||
}
|
||||
if ($exturl)
|
||||
{
|
||||
print "<a href=\"$exturl\">$extname</a><br>\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print "$extname<br>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -29,33 +29,34 @@ my %extensions = ();
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
my $extpre = $extname;
|
||||
$extpre =~ s/(GLX|GLW|GL).*/$1/;
|
||||
$extpre = lc $extpre;
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
my $extpre = $extname;
|
||||
$extpre =~ s/(GLX|GLW|GL).*/$1/;
|
||||
$extpre = lc $extpre;
|
||||
|
||||
#make_separator($extname);
|
||||
#print "#ifdef $extname\n\n";
|
||||
print "static void _glewInfo_$extname (void)\n{\n";
|
||||
if ($extvar =~ /VERSION/)
|
||||
{
|
||||
print " glewPrintExt(\"$extname\", $extvar, $extvar);\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " glewPrintExt(\"$extname\", $extvar, $extpre" .
|
||||
"ewGetExtension(\"$extname\"));\n";
|
||||
}
|
||||
output_decls($functions, \&make_pfn_info);
|
||||
print "}\n\n";
|
||||
#print "#endif /* $extname */\n\n";
|
||||
#make_separator($extname);
|
||||
#print "#ifdef $extname\n\n";
|
||||
print "static void _glewInfo_$extname (void)\n{\n";
|
||||
if ($extvar =~ /VERSION/)
|
||||
{
|
||||
print " glewPrintExt(\"$extname\", $extvar, $extvar);\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " glewPrintExt(\"$extname\", $extvar, $extpre" .
|
||||
"ewGetExtension(\"$extname\"));\n";
|
||||
}
|
||||
output_decls($functions, \&make_pfn_info);
|
||||
print "}\n\n";
|
||||
#print "#endif /* $extname */\n\n";
|
||||
}
|
||||
}
|
||||
|
@ -35,16 +35,17 @@ my %extensions = ();
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
|
||||
print "#ifdef $extname\n";
|
||||
print " _glewInfo_$extname();\n";
|
||||
print "#endif /* $extname */\n";
|
||||
print "#ifdef $extname\n";
|
||||
print " _glewInfo_$extname();\n";
|
||||
print "#endif /* $extname */\n";
|
||||
}
|
||||
}
|
||||
|
@ -31,28 +31,29 @@ our $type = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) =
|
||||
parse_ext($ext);
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) =
|
||||
parse_ext($ext);
|
||||
|
||||
#make_separator($extname);
|
||||
#print "#ifdef $extname\n\n";
|
||||
my $extvar = $extname;
|
||||
my $extvardef = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
if (keys %$functions)
|
||||
{
|
||||
print "static GLboolean _glewInit_$extname (" . $type .
|
||||
"EW_CONTEXT_ARG_DEF_INIT)\n{\n GLboolean r = GL_FALSE;\n";
|
||||
output_decls($functions, \&make_pfn_def_init);
|
||||
print "\n return r;\n}\n\n";
|
||||
}
|
||||
#print "\nGLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n\n";
|
||||
#print "#endif /* $extname */\n\n";
|
||||
#make_separator($extname);
|
||||
#print "#ifdef $extname\n\n";
|
||||
my $extvar = $extname;
|
||||
my $extvardef = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
if (keys %$functions)
|
||||
{
|
||||
print "static GLboolean _glewInit_$extname (" . $type .
|
||||
"EW_CONTEXT_ARG_DEF_INIT)\n{\n GLboolean r = GL_FALSE;\n";
|
||||
output_decls($functions, \&make_pfn_def_init);
|
||||
print "\n return r;\n}\n\n";
|
||||
}
|
||||
#print "\nGLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n\n";
|
||||
#print "#endif /* $extname */\n\n";
|
||||
}
|
||||
}
|
||||
|
@ -29,35 +29,37 @@ my %extensions = ();
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
|
||||
my $extpre = $extname;
|
||||
$extpre =~ s/^(W?)GL(X?).*$/\l$1gl\l$2ew/;
|
||||
|
||||
#my $pextvar = prefix_varname($extvar);
|
||||
|
||||
#print "#ifdef $extname\n";
|
||||
print " " . $extvar . " = " . $extpre . "GetExtension(\"$extname\");\n";
|
||||
if (keys %$functions)
|
||||
{
|
||||
if ($extname =~ /WGL_.*/)
|
||||
{
|
||||
print " if (glewExperimental || " . $extvar . "|| crippled) " . $extvar . "= !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " if (glewExperimental || " . $extvar . ") " . $extvar . " = !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
|
||||
}
|
||||
}
|
||||
#print "#endif /* $extname */\n";
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
|
||||
my $extpre = $extname;
|
||||
$extpre =~ s/^(W?)GL(X?).*$/\l$1gl\l$2ew/;
|
||||
|
||||
#my $pextvar = prefix_varname($extvar);
|
||||
|
||||
#print "#ifdef $extname\n";
|
||||
print " " . $extvar . " = " . $extpre . "GetExtension(\"$extname\");\n";
|
||||
if (keys %$functions)
|
||||
{
|
||||
if ($extname =~ /WGL_.*/)
|
||||
{
|
||||
print " if (glewExperimental || " . $extvar . "|| crippled) " . $extvar . "= !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
print " if (glewExperimental || " . $extvar . ") " . $extvar . " = !_glewInit_$extname(GLEW_CONTEXT_ARG_VAR_INIT);\n";
|
||||
}
|
||||
}
|
||||
#print "#endif /* $extname */\n";
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -20,34 +20,34 @@ our $export = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
my $curexttype = "";
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $exttype = $extname;
|
||||
$exttype =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$3/;
|
||||
my $extrem = $extname;
|
||||
$extrem =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$4/;
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/(W*)GL(X*)_/$1GL$2EW_/;
|
||||
if(!($exttype =~ $curexttype))
|
||||
my $curexttype = "";
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
if(length($curexttype) > 0)
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $exttype = $extname;
|
||||
$exttype =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$3/;
|
||||
my $extrem = $extname;
|
||||
$extrem =~ s/(W*?)GL(X*?)_(.*?_)(.*)/$4/;
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/(W*)GL(X*)_/$1GL$2EW_/;
|
||||
if(!($exttype =~ $curexttype))
|
||||
{
|
||||
print " }\n";
|
||||
if(length($curexttype) > 0)
|
||||
{
|
||||
print " }\n";
|
||||
}
|
||||
print " if (_glewStrSame2(&pos, &len, (const GLubyte*)\"$exttype\", " . length($exttype) . "))\n";
|
||||
print " {\n";
|
||||
$curexttype = $exttype;
|
||||
}
|
||||
print " if (_glewStrSame2(&pos, &len, (const GLubyte*)\"$exttype\", " . length($exttype) . "))\n";
|
||||
print " {\n";
|
||||
$curexttype = $exttype;
|
||||
print " if (_glewStrSame3(pos, len, (const GLubyte*)\"$extrem\", ". length($extrem) . "))\n";
|
||||
print " return $extvar;\n";
|
||||
}
|
||||
print " if (_glewStrSame3(pos, len, (const GLubyte*)\"$extrem\", ". length($extrem) . "))\n";
|
||||
print " return $extvar;\n";
|
||||
}
|
||||
|
||||
print " }\n";
|
||||
print " }\n";
|
||||
}
|
||||
|
@ -27,13 +27,15 @@ our $export = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
output_decls($functions, \&make_pfn_decl);
|
||||
}
|
||||
}
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
output_decls($functions, \&make_pfn_decl);
|
||||
}
|
||||
#} else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
#}
|
||||
|
@ -20,15 +20,16 @@ our $export = shift;
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
} else {
|
||||
local $/;
|
||||
@extlist = split "\n", (<>);
|
||||
}
|
||||
# } else {
|
||||
# local $/;
|
||||
# @extlist = split "\n", (<>);
|
||||
# }
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
print $export . " GLboolean " . prefix_varname($extvar) . ";\n";
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $types, $tokens, $functions, $exacts) = parse_ext($ext);
|
||||
my $extvar = $extname;
|
||||
$extvar =~ s/GL(X*)_/GL$1EW_/;
|
||||
print $export . " GLboolean " . prefix_varname($extvar) . ";\n";
|
||||
}
|
||||
}
|
||||
|
7
auto/custom.txt
Normal file
7
auto/custom.txt
Normal file
@ -0,0 +1,7 @@
|
||||
WGL_ARB_extensions_string
|
||||
WGL_EXT_extensions_string
|
||||
WGL_ARB_pixel_format
|
||||
WGL_ARB_pbuffer
|
||||
WGL_NV_float_buffer
|
||||
WGL_ATI_pixel_format_float
|
||||
WGL_ARB_multisample
|
Loading…
Reference in New Issue
Block a user