libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] libtool: consistently pass compiler_flags for darwin


From: Carl Dong
Subject: [PATCH] libtool: consistently pass compiler_flags for darwin
Date: Tue, 22 Sep 2020 17:46:17 -0400

This fixes clang cross-compilations targeting darwin where if we don't
pass compiler_flags to clang, it assumes it's compiling for the host and
will fail to link with a "file format not recognized" error.

* m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Pass compiler_flags to
partial linking commands.
---
 m4/libtool.m4 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index f2d1f398..1e6a6c87 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -1130,8 +1130,8 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
     _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > 
\$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib 
-bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
     m4_if([$1], [CXX],
 [   if test yes != "$lt_cv_apple_cc_single_mod"; then
-      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o 
\$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib 
\$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname 
\$verstring$_lt_dsymutil"
-      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > 
\$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs 
-nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag 
-o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name 
\$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
+      _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o 
\$lib-master.o \$libobjs \$compiler_flags~\$CC -dynamiclib 
\$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags 
-install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
+      _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > 
\$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs 
-nostdlib -o \$lib-master.o \$libobjs \$compiler_flags~\$CC -dynamiclib 
\$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags 
-install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
     fi
 ],[])
   else
-- 
2.25.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]