32 lines
689 B
Perl
32 lines
689 B
Perl
#!/usr/bin/perl
|
|
|
|
require 'sizeof.ph';
|
|
|
|
$LIB = '/usr/local/lib/perl';
|
|
|
|
foreach $include (@ARGV) {
|
|
printf STDERR "including %s\n", $include;
|
|
do $include;
|
|
warn "sourcing $include: $@\n" if ($@);
|
|
if (!open (INCLUDE,"$LIB/$include")) {
|
|
warn "can't open $LIB/$include: $!\n";
|
|
next;
|
|
}
|
|
while (<INCLUDE>) {
|
|
chop;
|
|
if (/^\s*eval\s+'sub\s+(\w+)\s.*[^{]$/ || /^\s*sub\s+(\w+)\s.*[^{]$/) {
|
|
$var = $1;
|
|
$val = eval "&$var;";
|
|
if ($@) {
|
|
warn "$@: $_";
|
|
print <<EOT;
|
|
warn "\$$var isn't correctly set" if defined \$_main{'$var'};
|
|
EOT
|
|
next;
|
|
}
|
|
( $nval = sprintf ("%x",$val ) ) =~ tr/a-z/A-Z/;
|
|
printf "\$%s = 0x%s;\n", $var, $nval;
|
|
}
|
|
}
|
|
}
|