summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dunstan2009-06-05 18:29:56 +0000
committerAndrew Dunstan2009-06-05 18:29:56 +0000
commit1735676910cdfda9078676426f937949c010f432 (patch)
treed61307ea9ad0b997c896d5abb553744260e7ed76
parent78337e94b8579a2c641d0b5d996f4c028176d235 (diff)
Search for versioned perl library instead of using hardcoded name on Windows. Backpatch to release 8.3
-rw-r--r--src/pl/plperl/GNUmakefile3
-rw-r--r--src/tools/msvc/Mkvcbuild.pm14
2 files changed, 10 insertions, 7 deletions
diff --git a/src/pl/plperl/GNUmakefile b/src/pl/plperl/GNUmakefile
index 09adae5501..a3c3495aac 100644
--- a/src/pl/plperl/GNUmakefile
+++ b/src/pl/plperl/GNUmakefile
@@ -19,7 +19,8 @@ ifneq (,$(findstring yes, $(shared_libperl)$(allow_nonpic_in_shlib)))
ifeq ($(PORTNAME), win32)
perl_archlibexp := $(subst \,/,$(perl_archlibexp))
perl_privlibexp := $(subst \,/,$(perl_privlibexp))
-perl_embed_ldflags = -L$(perl_archlibexp)/CORE -lperl58
+perl_lib := $(basename $(notdir $(wildcard $(perl_archlibexp)/CORE/perl[5-9]*.lib)))
+perl_embed_ldflags = -L$(perl_archlibexp)/CORE -l$(perl_lib)
override CPPFLAGS += -DPLPERL_HAVE_UID_GID
# Perl on win32 contains /* within comment all over the header file,
# so disable this warning.
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 4754f16b27..66b7f6a928 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -104,14 +104,16 @@ sub mkvcbuild
}
}
$plperl->AddReference($postgres);
- if (-e $solution->{options}->{perl} . '\lib\CORE\perl510.lib')
+ my @perl_libs = grep {/perl\d+.lib$/ }
+ glob($solution->{options}->{perl} . '\lib\CORE\perl*.lib');
+ if (@perl_libs == 1)
{
- $plperl->AddLibrary($solution->{options}->{perl} . '\lib\CORE\perl510.lib');
- }
- else
- {
- $plperl->AddLibrary($solution->{options}->{perl} . '\lib\CORE\perl58.lib');
+ $plperl->AddLibrary($perl_libs[0]);
}
+ else
+ {
+ die "could not identify perl library version";
+ }
}
if ($solution->{options}->{python})