[131326] trunk/dports/lang/perl5.18

larryv at macports.org larryv at macports.org
Fri Jan 9 12:14:49 PST 2015


Revision: 131326
          https://trac.macports.org/changeset/131326
Author:   larryv at macports.org
Date:     2015-01-09 12:14:49 -0800 (Fri, 09 Jan 2015)
Log Message:
-----------
perl5.18: Fix `Config{ld}` on newer OSes (r131305)

Also bring over some other fixes from `perl5.16`.

Revision Links:
--------------
    https://trac.macports.org/changeset/131305

Modified Paths:
--------------
    trunk/dports/lang/perl5.18/Portfile

Added Paths:
-----------
    trunk/dports/lang/perl5.18/files/avoid-bind9-linking.patch
    trunk/dports/lang/perl5.18/files/avoid-no-cpp-precomp-PR38913.patch
    trunk/dports/lang/perl5.18/files/clean-up-paths.patch
    trunk/dports/lang/perl5.18/files/fix-ld-modification.patch
    trunk/dports/lang/perl5.18/files/fix-miniperl-linking-PR36438.patch

Modified: trunk/dports/lang/perl5.18/Portfile
===================================================================
--- trunk/dports/lang/perl5.18/Portfile	2015-01-09 20:08:48 UTC (rev 131325)
+++ trunk/dports/lang/perl5.18/Portfile	2015-01-09 20:14:49 UTC (rev 131326)
@@ -6,6 +6,7 @@
 name                perl5.18
 version             5.18.4
 set branch          [join [lrange [split ${version} .] 0 1] .]
+revision            1
 categories          lang
 platforms           darwin freebsd linux
 license             {Artistic-1 GPL}
@@ -28,10 +29,22 @@
 checksums           rmd160  d97181a98f7acc80125b0d2a182a6a2cd7542ceb \
                     sha256  1fb4d27b75cd244e849f253320260efe1750641aaff4a18ce0d67556ff1b96a5
 
-patchfiles          install-under-short-version-PR43480.patch
+patchfiles          clean-up-paths.patch \
+                    avoid-no-cpp-precomp-PR38913.patch \
+                    install-under-short-version-PR43480.patch \
+                    fix-ld-modification.patch
 
+# Prevent build from picking up the bind9 port's static libbind, which
+# duplicates symbols from /usr/lib/libdl (r10638).
+patchfiles-append   avoid-bind9-linking.patch
+
+# Prevent miniperl linking from accidentally finding our libstdc++
+# (#36438).
+patchfiles-append   fix-miniperl-linking-PR36438.patch
+
 post-patch {
-    reinplace "s|/opt/local|${prefix}|g" ${worksrcpath}/Configure
+    reinplace -W ${worksrcpath} "s|__PREFIX__|${prefix}|g" \
+            Configure Makefile.SH
 }
 
 configure.ccache    no
@@ -52,7 +65,7 @@
                     -Dusethreads \
                     -Duseshrplib \
                    {-Dcc="$CC"} \
-                   {-Dld="$CC"} \
+                   {-Dld="env MACOSX_DEPLOYMENT_TARGET=$MACOSX_DEPLOYMENT_TARGET $CC"} \
                     -Dman1ext=1pm \
                     -Dman3ext=3pm \
                     -Dman1dir='${prefix}/share/man/man1p' \

Copied: trunk/dports/lang/perl5.18/files/avoid-bind9-linking.patch (from rev 131325, trunk/dports/lang/perl5.16/files/avoid-bind9-linking.patch)
===================================================================
--- trunk/dports/lang/perl5.18/files/avoid-bind9-linking.patch	                        (rev 0)
+++ trunk/dports/lang/perl5.18/files/avoid-bind9-linking.patch	2015-01-09 20:14:49 UTC (rev 131326)
@@ -0,0 +1,13 @@
+Index: hints/darwin.sh
+===================================================================
+--- hints/darwin.sh.orig
++++ hints/darwin.sh
+@@ -315,6 +315,8 @@ i_dbm=undef;
+ # NeilW says this should be acceptable on all darwin versions.
+ ranlib='ranlib'
+ 
++libswanted="$(echo $libswanted | sed -e 's/bind //' -e 's/ bind//')"
++
+ ##
+ # Build process
+ ##

Copied: trunk/dports/lang/perl5.18/files/avoid-no-cpp-precomp-PR38913.patch (from rev 131325, trunk/dports/lang/perl5.16/files/avoid-no-cpp-precomp-PR38913.patch)
===================================================================
--- trunk/dports/lang/perl5.18/files/avoid-no-cpp-precomp-PR38913.patch	                        (rev 0)
+++ trunk/dports/lang/perl5.18/files/avoid-no-cpp-precomp-PR38913.patch	2015-01-09 20:14:49 UTC (rev 131326)
@@ -0,0 +1,13 @@
+Index: hints/darwin.sh
+===================================================================
+--- hints/darwin.sh.orig
++++ hints/darwin.sh
+@@ -129,8 +129,6 @@ esac
+ 
+ # Avoid Apple's cpp precompiler, better for extensions
+ if [ "X`echo | ${cc} -no-cpp-precomp -E - 2>&1 >/dev/null`" = "X" ]; then
+-    cppflags="${cppflags} -no-cpp-precomp"
+-
+     # This is necessary because perl's build system doesn't
+     # apply cppflags to cc compile lines as it should.
+     ccflags="${ccflags} ${cppflags}"

Copied: trunk/dports/lang/perl5.18/files/clean-up-paths.patch (from rev 131325, trunk/dports/lang/perl5.16/files/clean-up-paths.patch)
===================================================================
--- trunk/dports/lang/perl5.18/files/clean-up-paths.patch	                        (rev 0)
+++ trunk/dports/lang/perl5.18/files/clean-up-paths.patch	2015-01-09 20:14:49 UTC (rev 131326)
@@ -0,0 +1,39 @@
+Index: Configure
+===================================================================
+--- Configure.orig
++++ Configure
+@@ -106,8 +106,8 @@ if test -d c:/. || ( uname -a | grep -i 
+ fi
+ 
+ : Proper PATH setting
+-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
+-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
++paths='/bin /usr/bin /usr/ucb /usr/lbin'
++paths="$paths /opt/bin __PREFIX__/bin __PREFIX__ /opt/lbin"
+ paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
+ paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
+ paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
+@@ -1328,7 +1328,7 @@ archobjs=''
+ archname=''
+ : Possible local include directories to search.
+ : Set locincpth to "" in a hint file to defeat local include searches.
+-locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
++locincpth="__PREFIX__/include /usr/gnu/include"
+ locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
+ :
+ : no include file wanted by default
+@@ -1342,12 +1342,12 @@ libnames=''
+ : change the next line if compiling for Xenix/286 on Xenix/386
+ xlibpth='/usr/lib/386 /lib/386'
+ : Possible local library directories to search.
+-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
++loclibpth="__PREFIX__/lib /usr/gnu/lib"
+ loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
+ 
+ : general looking path for locating libraries
+ glibpth="/lib /usr/lib $xlibpth"
+-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
++glibpth="$glibpth /usr/ccs/lib /usr/ucblib"
+ test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
+ test -f /shlib/libc.so     && glibpth="/shlib $glibpth"
+ test -d /usr/lib64         && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"

Copied: trunk/dports/lang/perl5.18/files/fix-ld-modification.patch (from rev 131325, trunk/dports/lang/perl5.16/files/fix-ld-modification.patch)
===================================================================
--- trunk/dports/lang/perl5.18/files/fix-ld-modification.patch	                        (rev 0)
+++ trunk/dports/lang/perl5.18/files/fix-ld-modification.patch	2015-01-09 20:14:49 UTC (rev 131326)
@@ -0,0 +1,21 @@
+Index: hints/darwin.sh
+===================================================================
+--- hints/darwin.sh.orig
++++ hints/darwin.sh
+@@ -141,7 +141,6 @@ esac
+ 
+ # Shared library extension is .dylib.
+ # Bundle extension is .bundle.
+-ld='cc';
+ so='dylib';
+ dlext='bundle';
+ usedl='define';
+@@ -182,7 +181,7 @@ case "$osvers" in
+ *) 
+    lddlflags="${ldflags} -bundle -undefined dynamic_lookup"
+    case "$ld" in
+-       *MACOSX_DEVELOPMENT_TARGET*) ;;
++       *MACOSX_DEPLOYMENT_TARGET*) ;;
+        *) ld="env MACOSX_DEPLOYMENT_TARGET=10.3 ${ld}" ;;
+    esac
+    ;;

Copied: trunk/dports/lang/perl5.18/files/fix-miniperl-linking-PR36438.patch (from rev 131325, trunk/dports/lang/perl5.16/files/fix-miniperl-linking-PR36438.patch)
===================================================================
--- trunk/dports/lang/perl5.18/files/fix-miniperl-linking-PR36438.patch	                        (rev 0)
+++ trunk/dports/lang/perl5.18/files/fix-miniperl-linking-PR36438.patch	2015-01-09 20:14:49 UTC (rev 131326)
@@ -0,0 +1,14 @@
+Index: Makefile.SH
+===================================================================
+--- Makefile.SH.orig
++++ Makefile.SH
+@@ -870,7 +870,8 @@ NAMESPACEFLAGS = -force_flat_namespace
+ 		$spitshell >>$Makefile <<'!NO!SUBS!'
+ $(MINIPERL_EXE): $& $(mini_obj)
+ 	- at rm -f miniperl.xok
+-	$(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o $(MINIPERL_EXE) \
++	unset LIBRARY_PATH && \
++	$(CC) $(subst -L__PREFIX__/lib,,$(CLDFLAGS)) $(NAMESPACEFLAGS) -o $(MINIPERL_EXE) \
+ 	    $(mini_obj) $(libs)
+ 	$(LDLIBPTH) $(RUN) ./miniperl$(HOST_EXE_EXT) -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
+ !NO!SUBS!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150109/fdf8df56/attachment.html>


More information about the macports-changes mailing list