diff options
author | Andrew Dunstan | 2008-01-31 03:26:14 +0000 |
---|---|---|
committer | Andrew Dunstan | 2008-01-31 03:26:14 +0000 |
commit | f444c8c2be3412ac1dfd9b5832a348332f006851 (patch) | |
tree | e09432efcd3e6722036bfe3ea9eeeff6f759cabc | |
parent | 6b7ff409b435a6da73f9862f20f1a9cdf6f846c4 (diff) |
Fix test that wrongly excluded some dumpbin symbols.
Keep the intermediate symbol file rather then blowing it away, for easier debugging.
-rw-r--r-- | src/tools/msvc/gendef.pl | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/tools/msvc/gendef.pl b/src/tools/msvc/gendef.pl index 6ca6ea8856..30959ee8d3 100644 --- a/src/tools/msvc/gendef.pl +++ b/src/tools/msvc/gendef.pl @@ -18,14 +18,16 @@ print "Generating $defname.DEF from directory $ARGV[0]\n"; while (<$ARGV[0]/*.obj>) { + my $symfile = $_; + $symfile=~ s/\.obj$/.sym/i; print "."; system("dumpbin /symbols /out:symbols.out $_ >NUL") && die "Could not call dumpbin"; open(F, "<symbols.out") || die "Could not open symbols.out for $_\n"; while (<F>) { s/\(\)//g; - next unless /^\d/; my @pieces = split; + next unless $pieces[0] =~ /^[A-F0-9]{3}$/; next unless $pieces[6]; next if ($pieces[2] eq "UNDEF"); next unless ($pieces[4] eq "External"); @@ -41,7 +43,7 @@ while (<$ARGV[0]/*.obj>) push @def, $pieces[6]; } close(F); - unlink("symbols.out"); + rename("symbols.out",$symfile); } print "\n"; |