Commit 9dbcfdd8 authored by Bertrand Marc's avatar Bertrand Marc

New upstream version 2.1.0

parent 11dff721
The OpenGL Extension Wrangler Library The OpenGL Extension Wrangler Library
Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org> Copyright (C) 2002-2007, Milan Ikits <milan ikits[]ieee org>
Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org> Copyright (C) 2002-2007, Marcelo E. Magallon <mmagallo[]debian org>
Copyright (C) 2002, Lev Povalahev Copyright (C) 2002, Lev Povalahev
All rights reserved. All rights reserved.
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met: modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, * Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer. this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, * Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution. and/or other materials provided with the distribution.
* The name of the author may be used to endorse or promote products * The name of the author may be used to endorse or promote products
derived from this software without specific prior written permission. derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
THE POSSIBILITY OF SUCH DAMAGE. THE POSSIBILITY OF SUCH DAMAGE.
Mesa 3-D graphics library Mesa 3-D graphics library
Version: 7.0 Version: 7.0
Copyright (C) 1999-2007 Brian Paul All Rights Reserved. Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"), copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense, the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions: Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software. in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Copyright (c) 2007 The Khronos Group Inc. Copyright (c) 2007 The Khronos Group Inc.
Permission is hereby granted, free of charge, to any person obtaining a Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and/or associated documentation files (the copy of this software and/or associated documentation files (the
"Materials"), to deal in the Materials without restriction, including "Materials"), to deal in the Materials without restriction, including
without limitation the rights to use, copy, modify, merge, publish, without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Materials, and to distribute, sublicense, and/or sell copies of the Materials, and to
permit persons to whom the Materials are furnished to do so, subject to permit persons to whom the Materials are furnished to do so, subject to
the following conditions: the following conditions:
The above copyright notice and this permission notice shall be included The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Materials. in all copies or substantial portions of the Materials.
THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
#!/bin/bash #!/bin/bash
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
## ##
## Parameters: ## Parameters:
## ##
## $1: Extensions directory ## $1: Extensions directory
## $2: Registry directory ## $2: Registry directory
## $3: The black list ## $3: The black list
set -e set -e
# clean up # clean up
rm -f $1/*.bak rm -f $1/*.bak
This diff is collapsed.
#!/usr/bin/perl #!/usr/bin/perl
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
use strict; use strict;
use warnings; use warnings;
do 'bin/make.pl'; use lib '.';
do 'bin/make.pl';
# function pointer declaration
sub make_pfn_decl($%) # function pointer declaration
{ sub make_pfn_decl($%)
return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;"; {
} return "PFN" . (uc $_[0]) . "PROC " . prefixname($_[0]) . " = NULL;";
}
my @extlist = ();
my %extensions = (); my @extlist = ();
my %extensions = ();
our $type = shift;
our $type = shift;
if (@ARGV)
{ if (@ARGV)
@extlist = @ARGV; {
@extlist = @ARGV;
foreach my $ext (sort @extlist)
{ foreach my $ext (sort @extlist)
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); {
output_decls($functions, \&make_pfn_decl); my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext);
} output_decls($functions, \&make_pfn_decl);
} }
}
#!/usr/bin/perl #!/usr/bin/perl
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
use strict; use strict;
use warnings; use warnings;
do 'bin/make.pl'; use lib '.';
do 'bin/make.pl';
my @extlist = ();
my %extensions = (); my @extlist = ();
my %extensions = ();
our $type = shift;
our $type = shift;
if (@ARGV)
{ if (@ARGV)
@extlist = @ARGV; {
@extlist = @ARGV;
foreach my $ext (sort @extlist)
{ foreach my $ext (sort @extlist)
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); {
my $extvar = $extname; my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext);
$extvar =~ s/GL(X*)_/GL$1EW_/; my $extvar = $extname;
print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n"; $extvar =~ s/GL(X*)_/GL$1EW_/;
} print "GLboolean " . prefix_varname($extvar) . " = GL_FALSE;\n";
} }
}
#!/usr/bin/perl #!/usr/bin/perl
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
use strict; use strict;
use warnings; use warnings;
do 'bin/make.pl'; use lib '.';
do 'bin/make.pl';
##
## Make Extension-enabled Index ##
## ## Make Extension-enabled Index
##
my @extlist = ();
my @extlist = ();
if (@ARGV)
{ if (@ARGV)
@extlist = @ARGV; {
@extlist = @ARGV;
print "/* Detected in the extension string or strings */\n";
print "static GLboolean _glewExtensionString[" . scalar @extlist . "];\n"; print "/* Detected in the extension string or strings */\n";
print "static GLboolean _glewExtensionString[" . scalar @extlist . "];\n";
print "/* Detected via extension string or experimental mode */\n";
print "static GLboolean* _glewExtensionEnabled[] = {\n";; print "/* Detected via extension string or experimental mode */\n";
print "static GLboolean* _glewExtensionEnabled[] = {\n";;
foreach my $ext (sort @extlist)
{ foreach my $ext (sort @extlist)
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = {
parse_ext($ext); my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) =
parse_ext($ext);
my $extvar = $extname;
$extvar =~ s/GL(X*)_/GL$1EW_/; my $extvar = $extname;
$extvar =~ s/GL(X*)_/GL$1EW_/;
print "#ifdef $extname\n";
print " &__$extvar,\n"; print "#ifdef $extname\n";
print "#endif\n"; print " &__$extvar,\n";
} print "#endif\n";
}
print " NULL\n};\n";
} print " NULL\n};\n";
}
#!/usr/bin/perl #!/usr/bin/perl
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
use strict; use strict;
use warnings; use warnings;
do 'bin/make.pl'; use lib '.';
do 'bin/make.pl';
# token
sub make_define($$) # token
{ sub make_define($$)
return "#define $_[0] $_[1]" {
} return "#define $_[0] $_[1]"
}
# type declaration
sub make_type($$) # type declaration
{ sub make_type($$)
return "@_;" {
} return "@_;"
}
# function pointer type declaration
sub make_pfn_type($%) # function pointer type declaration
{ sub make_pfn_type($%)
our $api; {
return join(' ', "typedef", $_[1]->{rtype}, our $api;
"($api * PFN" . (uc $_[0]) . "PROC)", return join(' ', "typedef", $_[1]->{rtype},
"(" . $_[1]->{parms} . ")") . ";"; "($api * PFN" . (uc $_[0]) . "PROC)",
} "(" . $_[1]->{parms} . ")") . ";";
}
# function name alias
sub make_pfn_alias($%) # function name alias
{ sub make_pfn_alias($%)
our $type; {
return join(" ", "#define", $_[0], $type . "EW_GET_FUN(" . prefixname($_[0]) . ")") our $type;
} return join(" ", "#define", $_[0], $type . "EW_GET_FUN(" . prefixname($_[0]) . ")")
}
my @extlist = ();
my %extensions = (); my @extlist = ();
my %extensions = ();
our $api = shift;
our $type = shift; our $api = shift;
our $type = shift;
if (@ARGV)
{ if (@ARGV)
@extlist = @ARGV; {
@extlist = @ARGV;
foreach my $ext (sort @extlist)
{ foreach my $ext (sort @extlist)
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); {
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext);
make_separator($extname);
print "#ifndef $extname\n#define $extname 1\n"; make_separator($extname);
output_tokens($tokens, \&make_define); print "#ifndef $extname\n#define $extname 1\n";
output_types($types, \&make_type); output_tokens($tokens, \&make_define);
output_exacts($exacts, \&make_exact); output_types($types, \&make_type);
output_decls($functions, \&make_pfn_type); output_exacts($exacts, \&make_exact);
output_decls($functions, \&make_pfn_alias); output_decls($functions, \&make_pfn_type);
output_decls($functions, \&make_pfn_alias);
my $extvar = $extname;
$extvar =~ s/GL(X*)_/GL$1EW_/; 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"; print "\n#define $extvar " . $type . "EW_GET_VAR(" . prefix_varname($extvar) . ")\n";
} print "\n#endif /* $extname */\n\n";
} }
}
#!/usr/bin/perl #!/usr/bin/perl
## ##
## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org> ## Copyright (C) 2002-2008, Marcelo E. Magallon <mmagallo[]debian org>
## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org> ## Copyright (C) 2002-2008, Milan Ikits <milan ikits[]ieee org>
## ##
## This program is distributed under the terms and conditions of the GNU ## This program is distributed under the terms and conditions of the GNU
## General Public License Version 2 as published by the Free Software ## General Public License Version 2 as published by the Free Software
## Foundation or, at your option, any later version. ## Foundation or, at your option, any later version.
use strict; use strict;
use warnings; use warnings;
do 'bin/make.pl'; use lib '.';
do 'bin/make.pl';
#---------------------------------------------------------------------------------------
#---------------------------------------------------------------------------------------
my @extlist = ();
my %extensions = (); my @extlist = ();
my $group = ""; my %extensions = ();
my $cur_group = ""; my $group = "";
my $cur_group = "";
if (@ARGV)
{ if (@ARGV)
@extlist = @ARGV; {
my $n = 1; @extlist = @ARGV;
print "<table border=\"0\" width=\"100%\" cellpadding=\"1\" cellspacing=\"0\" align=\"center\">\n"; my $n = 1;
foreach my $ext (sort @extlist) print "<table border=\"0\" width=\"100%\" cellpadding=\"1\" cellspacing=\"0\" align=\"center\">\n";
{ foreach my $ext (sort @extlist)
my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext); {
$cur_group = $extname; my ($extname, $exturl, $extstring, $reuse, $types, $tokens, $functions, $exacts) = parse_ext($ext);
$cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/; $cur_group = $extname;
$extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/; $cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/;
if ($cur_group ne $group) $extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/;
{ if ($cur_group ne $group)
if ($group ne "") {
{ if ($group ne "")
print "<tr><td><br></td><td></td><td></td></tr>\n"; {
} print "<tr><td><br></td><td></td><td></td></tr>\n";
$group = $cur_group; }
} <