[125325] trunk/dports/devel/libtool

larryv at macports.org larryv at macports.org
Sat Sep 13 10:58:49 PDT 2014


Revision: 125325
          https://trac.macports.org/changeset/125325
Author:   larryv at macports.org
Date:     2014-09-13 10:58:49 -0700 (Sat, 13 Sep 2014)
Log Message:
-----------
libtool: Fix symbol lookup on Yosemite and later

Libtool's M4 macros and configure scripts incorrectly detect
MACOSX_DEPLOYMENT_TARGET and call the linker with `-undefined suppress`
instead of `-undefined dynamic_lookup`. This could cause dyld(1) to
segfault when it tries to load undefined symbols (see #44596).

Modified Paths:
--------------
    trunk/dports/devel/libtool/Portfile

Added Paths:
-----------
    trunk/dports/devel/libtool/files/yosemite-symbol-lookup.patch

Modified: trunk/dports/devel/libtool/Portfile
===================================================================
--- trunk/dports/devel/libtool/Portfile	2014-09-13 17:58:47 UTC (rev 125324)
+++ trunk/dports/devel/libtool/Portfile	2014-09-13 17:58:49 UTC (rev 125325)
@@ -5,7 +5,7 @@
 
 name                libtool
 version             2.4.2
-revision            3
+revision            4
 categories          devel sysutils
 platforms           darwin freebsd
 # Scripts are GPL-2+, libltdl is LGPL-2+, but all parts that tend to be
@@ -34,6 +34,9 @@
 # committed upstream -> remove for libtool 2.4.3
 patchfiles      ltmain.m4sh-allow-clang-stdlib.diff
 
+# Fix detection of MACOSX_DEPLOYMENT_TARGET on Yosemite and later.
+patchfiles-append   yosemite-symbol-lookup.patch
+
 platform darwin {
     configure.env   GREP=/usr/bin/grep \
                     SED=/usr/bin/sed

Added: trunk/dports/devel/libtool/files/yosemite-symbol-lookup.patch
===================================================================
--- trunk/dports/devel/libtool/files/yosemite-symbol-lookup.patch	                        (rev 0)
+++ trunk/dports/devel/libtool/files/yosemite-symbol-lookup.patch	2014-09-13 17:58:49 UTC (rev 125325)
@@ -0,0 +1,156 @@
+Index: configure
+===================================================================
+--- configure.orig
++++ configure
+@@ -7765,7 +7765,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: libltdl/configure
+===================================================================
+--- libltdl/configure.orig
++++ libltdl/configure
+@@ -6978,7 +6978,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: libltdl/m4/libtool.m4
+===================================================================
+--- libltdl/m4/libtool.m4.orig
++++ libltdl/m4/libtool.m4
+@@ -1052,7 +1052,7 @@ _LT_EOF
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[[012]]*)
++	10.[[012]][[,.]]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/cdemo/configure
+===================================================================
+--- tests/cdemo/configure.orig
++++ tests/cdemo/configure
+@@ -6858,7 +6858,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/demo/configure
+===================================================================
+--- tests/demo/configure.orig
++++ tests/demo/configure
+@@ -6856,7 +6856,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/depdemo/configure
+===================================================================
+--- tests/depdemo/configure.orig
++++ tests/depdemo/configure
+@@ -6853,7 +6853,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/f77demo/configure
+===================================================================
+--- tests/f77demo/configure.orig
++++ tests/f77demo/configure
+@@ -7854,7 +7854,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/fcdemo/configure
+===================================================================
+--- tests/fcdemo/configure.orig
++++ tests/fcdemo/configure
+@@ -7953,7 +7953,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/mdemo/configure
+===================================================================
+--- tests/mdemo/configure.orig
++++ tests/mdemo/configure
+@@ -6885,7 +6885,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/mdemo2/configure
+===================================================================
+--- tests/mdemo2/configure.orig
++++ tests/mdemo2/configure
+@@ -6858,7 +6858,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/pdemo/configure
+===================================================================
+--- tests/pdemo/configure.orig
++++ tests/pdemo/configure
+@@ -6861,7 +6861,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+Index: tests/tagdemo/configure
+===================================================================
+--- tests/tagdemo/configure.orig
++++ tests/tagdemo/configure
+@@ -7878,7 +7878,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
+       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
+ 	10.0,*86*-darwin8*|10.0,*-darwin[91]*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
+-	10.[012]*)
++	10.[012][,.]*)
+ 	  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
+ 	10.*)
+ 	  _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140913/06fa3fdf/attachment-0001.html>


More information about the macports-changes mailing list