Fix test that wrongly excluded some dumpbin symbols.
Keep the intermediate symbol file rather then blowing it away, for easier debugging.
This commit is contained in:
parent
0688d84041
commit
0a4ef62bf8
|
@ -2,7 +2,7 @@ my @def;
|
||||||
#
|
#
|
||||||
# Script that generates a .DEF file for all objects in a directory
|
# Script that generates a .DEF file for all objects in a directory
|
||||||
#
|
#
|
||||||
# $PostgreSQL: pgsql/src/tools/msvc/gendef.pl,v 1.6 2007/05/03 14:04:03 mha Exp $
|
# $PostgreSQL: pgsql/src/tools/msvc/gendef.pl,v 1.7 2008/01/31 03:26:14 adunstan Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
die "Usage: gendef.pl <modulepath>\n" unless ($ARGV[0] =~ /\\([^\\]+$)/);
|
die "Usage: gendef.pl <modulepath>\n" unless ($ARGV[0] =~ /\\([^\\]+$)/);
|
||||||
|
@ -18,14 +18,16 @@ print "Generating $defname.DEF from directory $ARGV[0]\n";
|
||||||
|
|
||||||
while (<$ARGV[0]/*.obj>)
|
while (<$ARGV[0]/*.obj>)
|
||||||
{
|
{
|
||||||
|
my $symfile = $_;
|
||||||
|
$symfile=~ s/\.obj$/.sym/i;
|
||||||
print ".";
|
print ".";
|
||||||
system("dumpbin /symbols /out:symbols.out $_ >NUL") && die "Could not call dumpbin";
|
system("dumpbin /symbols /out:symbols.out $_ >NUL") && die "Could not call dumpbin";
|
||||||
open(F, "<symbols.out") || die "Could not open symbols.out for $_\n";
|
open(F, "<symbols.out") || die "Could not open symbols.out for $_\n";
|
||||||
while (<F>)
|
while (<F>)
|
||||||
{
|
{
|
||||||
s/\(\)//g;
|
s/\(\)//g;
|
||||||
next unless /^\d/;
|
|
||||||
my @pieces = split;
|
my @pieces = split;
|
||||||
|
next unless $pieces[0] =~ /^[A-F0-9]{3}$/;
|
||||||
next unless $pieces[6];
|
next unless $pieces[6];
|
||||||
next if ($pieces[2] eq "UNDEF");
|
next if ($pieces[2] eq "UNDEF");
|
||||||
next unless ($pieces[4] eq "External");
|
next unless ($pieces[4] eq "External");
|
||||||
|
@ -41,7 +43,7 @@ while (<$ARGV[0]/*.obj>)
|
||||||
push @def, $pieces[6];
|
push @def, $pieces[6];
|
||||||
}
|
}
|
||||||
close(F);
|
close(F);
|
||||||
unlink("symbols.out");
|
rename("symbols.out",$symfile);
|
||||||
}
|
}
|
||||||
print "\n";
|
print "\n";
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue