mirror of
https://github.com/nigels-com/glew.git
synced 2024-11-24 06:45:07 +00:00
[CoreSupport] Add make_initd.pl code generator for declaring all the _glewInit functions
This allows the initializers to call each other according to the interdependencies.
This commit is contained in:
parent
fda28dbfb0
commit
5469959471
@ -198,6 +198,10 @@ $(S.DEST)/glew.c: $(EXT)/.dummy
|
||||
$(BIN)/make_def_var.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_def_var.pl GL $(GL_EXT_SPEC) >> $@
|
||||
echo -e "\n#endif /* !GLEW_MX */\n" >> $@;
|
||||
echo -e "" >> $@;
|
||||
$(BIN)/make_initd.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_initd.pl GL $(GL_EXT_SPEC) >> $@
|
||||
echo -e "" >> $@;
|
||||
$(BIN)/make_init.pl GL $(GL_CORE_SPEC) >> $@
|
||||
$(BIN)/make_init.pl GL $(GL_EXT_SPEC) >> $@
|
||||
cat $(SRC)/glew_init_gl.c >> $@
|
||||
|
44
auto/bin/make_initd.pl
Executable file
44
auto/bin/make_initd.pl
Executable file
@ -0,0 +1,44 @@
|
||||
#!/usr/bin/perl
|
||||
##
|
||||
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
|
||||
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
|
||||
##
|
||||
## This program is distributed under the terms and conditions of the GNU
|
||||
## General Public License Version 2 as published by the Free Software
|
||||
## Foundation or, at your option, any later version.
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
do 'bin/make.pl';
|
||||
|
||||
## Output declarations for the _glewInit_[extension] functions defined
|
||||
## by make_init.pl script. These are necessary for for initializers to
|
||||
## call each other, such as a core GL 3 context that depends on certain
|
||||
## extensions.
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
my @extlist = ();
|
||||
my %extensions = ();
|
||||
|
||||
our $type = shift;
|
||||
|
||||
if (@ARGV)
|
||||
{
|
||||
@extlist = @ARGV;
|
||||
|
||||
foreach my $ext (sort @extlist)
|
||||
{
|
||||
my ($extname, $exturl, $extstring, $types, $tokens, $functions, $exacts) =
|
||||
parse_ext($ext);
|
||||
|
||||
#print "#ifdef $extname\n\n";
|
||||
if (keys %$functions)
|
||||
{
|
||||
print "static GLboolean _glewInit_$extname (" . $type .
|
||||
"EW_CONTEXT_ARG_DEF_INIT);\n";
|
||||
}
|
||||
#print "#endif /* $extname */\n\n";
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user