Browse Source
2.5.4 was released on Wed 20 Nov[^1]. A few patches have been merged: - emscripten-dllinker merged as v2.5.3-41-gd8a93445 - response-files merged as v2.5.3-25-geed74d65 Then clang-libs and embed-bitcode were conflicting, so they were rebased and their filename were bumped too. [^1]: https://savannah.gnu.org/news/?id=10693pull/176/head
committed by
Steve Lhomme
8 changed files with 22 additions and 140 deletions
@ -1,36 +0,0 @@ |
|||
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
|
|||
--- a/build-aux/ltmain.in
|
|||
+++ b/build-aux/ltmain.in
|
|||
@@ -6397,6 +6397,7 @@ func_mode_link ()
|
|||
case $host in |
|||
*-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; |
|||
*-*-sysv4*uw2*) add_dir=-L$dir ;; |
|||
+ *-*-emscripten*) add_dir=-L$dir ;;
|
|||
*-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ |
|||
*-*-unixware7*) add_dir=-L$dir ;; |
|||
*-*-darwin* ) |
|||
diff --git a/m4/libtool.m4 b/m4/libtool.m4
|
|||
--- a/m4/libtool.m4
|
|||
+++ b/m4/libtool.m4
|
|||
@@ -3081,6 +3081,21 @@ uts4*)
|
|||
shlibpath_var=LD_LIBRARY_PATH |
|||
;; |
|||
|
|||
+emscripten*)
|
|||
+ version_type=none
|
|||
+ need_lib_prefix=no
|
|||
+ need_version=no
|
|||
+ library_names_spec='$libname$release$shared_ext'
|
|||
+ soname_spec='$libname$release$shared_ext'
|
|||
+ finish_cmds=
|
|||
+ dynamic_linker="Emscripten linker"
|
|||
+ _LT_COMPILER_PIC($1)='-fPIC'
|
|||
+ _LT_TAGVAR(archive_cmds, $1)='$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib'
|
|||
+ _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -sSIDE_MODULE=2 -shared $libobjs $deplibs $compiler_flags -o $lib -s EXPORTED_FUNCTIONS=@$output_objdir/$soname.expsym'
|
|||
+ _LT_TAGVAR(archive_cmds_need_lc, $1)=no
|
|||
+ _LT_TAGVAR(no_undefined_flag, $1)=
|
|||
+ ;;
|
|||
+
|
|||
*) |
|||
dynamic_linker=no |
|||
;; |
|||
@ -1,83 +0,0 @@ |
|||
From 5fe8ae738927cd2c7e6d786b359e39876c84630c Mon Sep 17 00:00:00 2001 |
|||
From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin@martin.st> |
|||
Date: Wed, 10 Oct 2018 10:47:21 +0300 |
|||
Subject: [PATCH] Prefer response files over linker scripts for mingw tools |
|||
|
|||
The GCC/binutils tools support response files just fine, while |
|||
lld (impersonating GNU ld) only supports response files, not |
|||
linker scripts. Using a linker script as input just to pass a |
|||
list of files is overkill for cases when a response file is enough. |
|||
---
|
|||
libtool-2.4.6/build-aux/ltmain.in | 28 ++++++++++++++-------------- |
|||
libtool-2.4.6/m4/libtool.m4 | 2 ++ |
|||
2 files changed, 16 insertions(+), 14 deletions(-) |
|||
|
|||
diff --git libtool-2.4.6/build-aux/ltmain.in.orig libtool-2.4.6/build-aux/ltmain.in
|
|||
index 2641327..f6b4217 100644
|
|||
--- libtool-2.4.6/build-aux/ltmain.in.orig 2019-05-14 15:41:21.977391100 +0200
|
|||
+++ libtool-2.4.6/build-aux/ltmain.in 2019-05-14 15:43:07.767697900 +0200
|
|||
@@ -9852,20 +9852,7 @@ EOF
|
|||
last_robj= |
|||
k=1 |
|||
|
|||
- if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
|
|||
- output=$output_objdir/$output_la.lnkscript
|
|||
- func_verbose "creating GNU ld script: $output"
|
|||
- echo 'INPUT (' > $output
|
|||
- for obj in $save_libobjs
|
|||
- do
|
|||
- func_to_tool_file "$obj"
|
|||
- $ECHO "$func_to_tool_file_result" >> $output
|
|||
- done
|
|||
- echo ')' >> $output
|
|||
- func_append delfiles " $output"
|
|||
- func_to_tool_file "$output"
|
|||
- output=$func_to_tool_file_result
|
|||
- elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
|
|||
+ if test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
|
|||
output=$output_objdir/$output_la.lnk |
|||
func_verbose "creating linker input file list: $output" |
|||
: > $output |
|||
@@ -9884,6 +9871,19 @@ EOF
|
|||
func_append delfiles " $output" |
|||
func_to_tool_file "$output" |
|||
output=$firstobj\"$file_list_spec$func_to_tool_file_result\" |
|||
+ elif test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
|
|||
+ output=$output_objdir/$output_la.lnkscript
|
|||
+ func_verbose "creating GNU ld script: $output"
|
|||
+ echo 'INPUT (' > $output
|
|||
+ for obj in $save_libobjs
|
|||
+ do
|
|||
+ func_to_tool_file "$obj"
|
|||
+ $ECHO "$func_to_tool_file_result" >> $output
|
|||
+ done
|
|||
+ echo ')' >> $output
|
|||
+ func_append delfiles " $output"
|
|||
+ func_to_tool_file "$output"
|
|||
+ output=$func_to_tool_file_result
|
|||
else |
|||
if test -n "$save_libobjs"; then |
|||
func_verbose "creating reloadable object files..." |
|||
diff --git libtool-2.4.6/m4/libtool.m4.orig libtool-2.4.6/m4/libtool.m4
|
|||
index 6f93d32..2c5c2f0 100644
|
|||
--- libtool-2.4.6/m4/libtool.m4.orig
|
|||
+++ libtool-2.4.6/m4/libtool.m4
|
|||
@@ -4750,6 +4750,7 @@ _LT_EOF
|
|||
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
|||
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' |
|||
_LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] |
|||
+ _LT_TAGVAR(file_list_spec, $1)='@'
|
|||
|
|||
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then |
|||
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' |
|||
@@ -6166,6 +6167,7 @@ if test "$_lt_caught_CXX_error" != yes; then
|
|||
_LT_TAGVAR(allow_undefined_flag, $1)=unsupported |
|||
_LT_TAGVAR(always_export_symbols, $1)=no |
|||
_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes |
|||
+ _LT_TAGVAR(file_list_spec, $1)='@'
|
|||
|
|||
if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then |
|||
_LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' |
|||
--
|
|||
2.7.4 |
|||
|
|||
Loading…
Reference in new issue