(unknown)

Ileana Dumitrescu <[email protected]>
Newsgroups gmane.comp.gnu.libtool.cvs
Message-ID <[email protected]>
branch: master
commit f0507df8a780e3fda3eef05bce2c74ec8d032c8e
Author: Ileana Dumitrescu <[email protected]>
AuthorDate: Thu Jun 20 16:57:26 2024 +0300

    m4: Disable chained fixups for macOS
    
    Append '-no_fixup_chains' flag to disable chained fixups since it
    is not compatible with '-undefined dynamic_lookup'.
    
    * m4/libtool.m4: AC_VAR_APPEND will handle appending the option to
      the variable, which allows the '+=' extension to be used by shells
      that provide this capability for more efficient scaling. Also, bump
      minimum required version of autoconf from 2.62 to 2.64.
    * tests/no-executables.at: Set cache variable for link test.
    * NO-THANKS: Add thanks for Carlo Cabrera and Dave Allured.
---
 NO-THANKS               |  2 ++
 m4/libtool.m4           | 24 ++++++++++++++++++++++--
 tests/no-executables.at |  1 +
 3 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/NO-THANKS b/NO-THANKS
index 6b6a2415..9e0264bb 100644
--- a/NO-THANKS
+++ b/NO-THANKS
@@ -75,12 +75,14 @@ Andreas Stieger		[email protected]
 Brent Leback			[email protected]
 Camilo La Rota			[email protected]
 Carl D. Roth			[email protected]
+Carlo Cabrera			[email protected]
 Chris P. Ross			[email protected]
 Christian Rössel		[email protected]
 Christopher Hulbert		[email protected]
 Craig Tierney			[email protected]
 Dan McMahill			[email protected]
 Daniel Richard G.		[email protected]
+Dave Allured			[email protected]
 Dave Yost			[email protected]
 Dimitri Papadopoulos		[email protected]
 Donn Washburn			[email protected]
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index 1187330a..bd6c9947 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -60,7 +60,7 @@ esac
 # LT_INIT([OPTIONS])
 # ------------------
 AC_DEFUN([LT_INIT],
-[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
+[AC_PREREQ([2.64])dnl We use AC_PATH_PROGS_FEATURE_CHECK
 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
 AC_BEFORE([$0], [LT_LANG])dnl
 AC_BEFORE([$0], [LT_OUTPUT])dnl
@@ -974,6 +974,7 @@ _lt_linker_boilerplate=`cat conftest.err`
 $RM -r conftest*
 ])# _LT_LINKER_BOILERPLATE
 
+
 # _LT_REQUIRED_DARWIN_CHECKS
 # -------------------------
 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
@@ -1024,6 +1025,21 @@ m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
 	rm -f conftest.*
       fi])
 
+    # Feature test to disable chained fixups since it is not
+    # compatible with '-undefined dynamic_lookup'
+    AC_CACHE_CHECK([for -no_fixup_chains linker flag],
+      [lt_cv_support_no_fixup_chains],
+      [ save_LDFLAGS=$LDFLAGS
+        LDFLAGS="$LDFLAGS -Wl,-no_fixup_chains"
+        AC_LINK_IFELSE(
+          [AC_LANG_PROGRAM([],[])],
+          lt_cv_support_no_fixup_chains=yes,
+          lt_cv_support_no_fixup_chains=no
+        )
+        LDFLAGS=$save_LDFLAGS
+      ]
+    )
+
     AC_CACHE_CHECK([for -exported_symbols_list linker flag],
       [lt_cv_ld_exported_symbols_list],
       [lt_cv_ld_exported_symbols_list=no
@@ -1073,7 +1089,11 @@ _LT_EOF
         10.[[012]],*|,*powerpc*-darwin[[5-8]]*)
           _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
         *)
-          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
+          _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup'
+          if test yes = "$lt_cv_support_no_fixup_chains"; then
+            AS_VAR_APPEND([_lt_dar_allow_undefined], [' $wl-no_fixup_chains'])
+          fi
+        ;;
       esac
     ;;
   esac
diff --git a/tests/no-executables.at b/tests/no-executables.at
index 46225a6f..7530fe36 100644
--- a/tests/no-executables.at
+++ b/tests/no-executables.at
@@ -50,6 +50,7 @@ AM_PROG_GCJ
 lt_cv_shlibpath_overrides_runpath=no
 lt_cv_archive_cmds_need_lc=no
 lt_cv_cc_needs_belf=no
+lt_cv_support_no_fixup_chains=no
 lt_cv_ld_exported_symbols_list=no
 lt_cv_prog_compiler_static_works=no
 lt_cv_aix_libpath=/usr/lib:/lib
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.