This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to Test::Harness 3.05
[perl5.git] / h2pl / mkvars
1 #!/usr/bin/perl
2
3 require 'sizeof.ph';
4
5 $LIB = '/usr/local/lib/perl';
6
7 foreach $include (@ARGV) {
8     printf STDERR "including %s\n", $include;
9     do $include;
10     warn "sourcing $include: $@\n" if ($@);
11     if (!open (INCLUDE,"$LIB/$include")) {
12         warn "can't open $LIB/$include: $!\n"; 
13         next; 
14     } 
15     while (<INCLUDE>) {
16         chop;
17         if (/^\s*eval\s+'sub\s+(\w+)\s.*[^{]$/ || /^\s*sub\s+(\w+)\s.*[^{]$/) {
18             $var = $1;
19             $val = eval "&$var;";
20             if ($@) {
21                 warn "$@: $_";
22                 print <<EOT;
23 warn "\$$var isn't correctly set" if defined \$_main{'$var'};
24 EOT
25                 next;
26             } 
27             ( $nval = sprintf ("%x",$val ) ) =~ tr/a-z/A-Z/;
28             printf "\$%s = 0x%s;\n", $var, $nval;
29         } 
30     }
31