postgres.git / summary / log / commit / refs
commit 7240962f8626ff09bb8f9e71ecdb074775bdd035
Author: Magnus Hagander <magnus@hagander.net>
Date: Fri Mar 02 11:40:49 2018 +0000
First released in: 11.0
Fix msvc builds for ActivePerl > 5.24
From this version ActivePerl ships both a .lib and a .a file for the
perl library, which our code would detect as there being no library
available. Instead, we should pick the .lib version and use that.
Report and suggested fix in bug #15065
Author: Heath Lord
src/tools/msvc/Mkvcbuild.pm | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index d8c279ab926..123292f48d8 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -524,9 +524,11 @@ sub mkvcbuild
my $perl_path = $solution->{options}->{perl} . '\lib\CORE\*perl*';
# ActivePerl 5.16 provided perl516.lib; 5.18 provided libperl518.a
+ # Starting with ActivePerl 5.24, both perlnn.lib and libperlnn.a are provided.
+ # In this case, prefer .lib.
my @perl_libs =
grep { /perl\d+\.lib$|libperl\d+\.a$/ } glob($perl_path);
- if (@perl_libs == 1)
+ if (@perl_libs > 0)
{
$plperl->AddLibrary($perl_libs[0]);
}
[parent: 17b340abf83d]