glew/auto/bin/make_html.pl
Julian Squires 7f510379f6
Fix perl @INC for scripts which include make.pl
In perl 5.26, and some earlier perls that have been proactively
patched (Debian's perl 5.24, for example), '.' was removed from @INC
for security reasons.  For details, see:
  http://blogs.perl.org/users/todd_rinaldo/2016/11/how-removing-from-inc-is-about-to-break-cpan.html
  https://www.masteringperl.org/2017/01/perl-v5-26-removes-from-inc-but-dont-think-youre-safe/
et cetera.

This breaks the generation scripts which source make.pl with
  do 'bin/make.pl'

Although this might be indicative that it's time to refactor these
scripts, I opted for the simplest possible fix for now: restoring '.'
to @INC in each script that depends on make.pl.
2017-03-26 15:44:59 -04:00

57 lines
1.4 KiB
Perl
Executable File

#!/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;
use lib '.';
do 'bin/make.pl';
#---------------------------------------------------------------------------------------
my @extlist = ();
my %extensions = ();
my $group = "";
my $cur_group = "";
if (@ARGV)
{
@extlist = @ARGV;
my $n = 1;
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;
$cur_group =~ s/^(?:W?)GL(?:X?)_([A-Z0-9]+?)_.*$/$1/;
$extname =~ s/^(?:W?)GL(?:X?)_(.*)$/$1/;
if ($cur_group ne $group)
{
if ($group ne "")
{
print "<tr><td><br></td><td></td><td></td></tr>\n";
}
$group = $cur_group;
}
{
if ($exturl)
{
print "<tr><td class=\"num\">$n</td><td>&nbsp;</td><td><a href=\"$exturl\">$extname</a></td></tr>\n";
}
else
{
print "<tr><td class=\"num\">$n</td><td>&nbsp;</td><td>$extname</td></tr>\n";
}
$n++;
}
}
print "</table>\n"
}