mirror of
https://github.com/postgres/postgres.git
synced 2026-01-05 23:38:41 +03:00
MSVC: Place gendef.pl temporary file in the target directory.
Until now, it used the current working directory. This makes it safe for simultaneous invocations of gendef.pl, with different target directories, to run from a single current working directory, such as $(top_srcdir). The MSVC build system will soon rely on this. Christian Ullrich, reviewed by Michael Paquier.
This commit is contained in:
@@ -3,6 +3,7 @@ my @def;
|
||||
use warnings;
|
||||
use strict;
|
||||
use 5.8.0;
|
||||
use File::Spec::Functions qw(splitpath catpath);
|
||||
use List::Util qw(max);
|
||||
|
||||
#
|
||||
@@ -14,9 +15,11 @@ use List::Util qw(max);
|
||||
sub dumpsyms
|
||||
{
|
||||
my ($objfile, $symfile) = @_;
|
||||
system("dumpbin /symbols /out:symbols.out $_ >NUL")
|
||||
my ($symvol, $symdirs, $symbase) = splitpath($symfile);
|
||||
my $tmpfile = catpath($symvol, $symdirs, "symbols.out");
|
||||
system("dumpbin /symbols /out:$tmpfile $_ >NUL")
|
||||
&& die "Could not call dumpbin";
|
||||
rename("symbols.out", $symfile);
|
||||
rename($tmpfile, $symfile);
|
||||
}
|
||||
|
||||
# Given a symbol file path, loops over its contents
|
||||
|
||||
Reference in New Issue
Block a user