postgres.git / summary / log / commit / refs

commit    5fe33744432f7509a07bccef51d07be64f3827f0
Author:   Andrew Dunstan <andrew@dunslane.net>
Date:     Fri Apr 08 02:16:43 2011 +0000
First released in: 9.1.0, 8.3.15, 8.4.8, 9.0.4

    Avoid use of mixed slash style paths in arguments to xcopy in MSVC builds.
    
    Some versions of xcopy, notably on Windows 7 don't like it. Backpatch
    to 8.3, where we first used xcopy.


src/tools/msvc/Install.pm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm index bda08ac1ae1..c9925bfac05 100644 --- a/src/tools/msvc/Install.pm +++ b/src/tools/msvc/Install.pm @@ -424,15 +424,16 @@ sub CopyIncludeFiles my $D; opendir($D, 'src/include') || croak "Could not opendir on src/include!\n"; - while (my $d = readdir($D)) + # some xcopy progs don't like mixed slash style paths + (my $ctarget = $target) =~ s!/!\\!g; + while (my $d = readdir($D)) { next if ($d =~ /^\./); next if ($d eq 'CVS'); - next unless (-d 'src/include/' . $d); + next unless (-d "src/include/$d"); - EnsureDirectories($target . '/include/server', $d); - system( - "xcopy /s /i /q /r /y src\\include\\$d\\*.h \"$target\\include\\server\\$d\\\"") + EnsureDirectories("$target/include/server/$d"); + system(qq{xcopy /s /i /q /r /y src\\include\\$d\\*.h "$ctarget\\include\\server\\$d\\"}) && croak("Failed to copy include directory $d\n"); } closedir($D); [parent: d5b9c9f7335d]