[vlc-devel] [PATCH 3.0 06/17] tools: update libtool to 2.4.6

Steve Lhomme robux4 at ycbcr.xyz
Fri Mar 27 16:57:08 CET 2020


(cherry picked from commit d5b4cec3b4b85a8813bfc68aedf41fc135316953)
---
 extras/tools/SHA512SUMS                       |  2 +-
 ...code.patch => libtool-2.4.6-bitcode.patch} | 26 +++++++-------
 extras/tools/libtool-2.4.6-clang-libs.patch   |  9 +++--
 ...tch => libtool-2.4.6-response-files.patch} | 34 +++++++++----------
 ....4.2-san.patch => libtool-2.4.6-san.patch} | 34 +++++++++----------
 extras/tools/packages.mak                     |  2 +-
 extras/tools/tools.mak                        |  6 ++--
 7 files changed, 54 insertions(+), 59 deletions(-)
 rename extras/tools/{libtool-2.4.2-bitcode.patch => libtool-2.4.6-bitcode.patch} (55%)
 rename extras/tools/{libtool-2.4.2-response-files.patch => libtool-2.4.6-response-files.patch} (73%)
 rename extras/tools/{libtool-2.4.2-san.patch => libtool-2.4.6-san.patch} (52%)

diff --git a/extras/tools/SHA512SUMS b/extras/tools/SHA512SUMS
index b87857637e..3de813403a 100644
--- a/extras/tools/SHA512SUMS
+++ b/extras/tools/SHA512SUMS
@@ -3,7 +3,7 @@ e34c7818bcde14d2cb13cdd293ed17d70740d4d1fd7c67a07b415491ef85d42f450d4fe5f8f80cc3
 47b0120a59e3e020529a6ce750297d7de1156fd2be38db5d101e50120f11b40c28741ecd5eacf2790a9e25386713dcf7717339cfa5d7943d0dbf47c417383448  automake-1.16.1.tar.gz
 693520e53fa21e81f5f15e6f8979e5264e3bf7e194e4c19b884a44767b3b6d6535dee674f355440e7dcac480372882152c0523ac3c2f1c12d51b43540bcffa59  cmake-3.13.1.tar.gz
 9953413376c6b33e9e49d1f4f5b2d50075e0b1defb17b3c233d186d21416e6b607df11f6030588eeec3b025e1075c9c37a3db3c872fc22329d1dc0d0c6e2d9d0  gas-preprocessor-72887b9.tar.gz
-0e54af7bbec376f943f2b8e4f13631fe5627b099a37a5f0252e12bade76473b0a36a673529d594778064cd8632abdc43d8a20883d66d6b27738861afbb7e211d  libtool-2.4.2.tar.gz
+3233d81cb2739a54b840a0a82064eebbfaa4fb442fb993a35d6bd41d8395c51f038c90ae048b9252f172d0a5bbfb4b36e2b13d4477001f9ff7d4124237819a18  libtool-2.4.6.tar.gz
 29254dd4267a093e8d9da3a26df8b02564044cdb4506be539ec1aff4e5d406477bcf32f5e813c840f3aec77293bfe2cdde18f6a21724a7e0bfff646ec88b74ae  m4-1.4.18.tar.gz
 56a9656539448972bc3080357ccc987bd4cbca3847758fe41251eb8af1a5e403a75f38d1344fa2c0bd56de880f37f3eaafbe7116c506f33331e7a8dd8a53cf2a  pkg-config-0.28-1.tar.gz
 9f85a98e55cbc9f245a3079d5a597f778454bc945f0942cb10fbdfbde5fe12b17d6dda93d6a8d5281459ad30a3840be7e0712feb33a824226884e7e4da54a061  protobuf-3.1.0.tar.gz
diff --git a/extras/tools/libtool-2.4.2-bitcode.patch b/extras/tools/libtool-2.4.6-bitcode.patch
similarity index 55%
rename from extras/tools/libtool-2.4.2-bitcode.patch
rename to extras/tools/libtool-2.4.6-bitcode.patch
index eaf953c651..0b2a809893 100644
--- a/extras/tools/libtool-2.4.2-bitcode.patch
+++ b/extras/tools/libtool-2.4.6-bitcode.patch
@@ -1,37 +1,35 @@
-diff -ru libtool/libltdl/config/ltmain.m4sh libtool-fixed/libltdl/config/ltmain.m4sh
---- libtool/libltdl/config/ltmain.m4sh	2011-10-17 12:17:05.000000000 +0200
-+++ libtool-fixed/libltdl/config/ltmain.m4sh.new	2015-09-30 22:03:22.000000000 +0200
-@@ -7928,16 +7928,6 @@
+--- libtool-2.4.6/build-aux/ltmain.in.orig	2019-03-06 17:18:05.670433700 +0100
++++ libtool-2.4.6/build-aux/ltmain.in	2019-03-06 17:21:23.122227200 +0100
+@@ -8296,16 +8296,6 @@
  
        case $host in
        *-*-darwin*)
 -	# Don't allow lazy linking, it breaks C++ global constructors
 -	# But is supposedly fixed on 10.4 or later (yay!).
--	if test "$tagname" = CXX ; then
+-	if test CXX = "$tagname"; then
 -	  case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
 -	    10.[0123])
--	      func_append compile_command " ${wl}-bind_at_load"
--	      func_append finalize_command " ${wl}-bind_at_load"
+-	      func_append compile_command " $wl-bind_at_load"
+-	      func_append finalize_command " $wl-bind_at_load"
 -	    ;;
 -	  esac
 -	fi
  	# Time to change all our "foo.ltframework" stuff back to "-framework foo"
  	compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
  	finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
-diff -ru libtool/libltdl/config/ltmain.sh libtool-fixed/libltdl/config/ltmain.sh
---- libtool/libltdl/config/ltmain.sh	2011-10-17 12:19:35.000000000 +0200
-+++ libtool-fixed/libltdl/config/ltmain.sh.new	2015-09-30 22:03:44.000000000 +0200
-@@ -8715,16 +8715,6 @@
+--- libtool-2.4.6/build-aux/ltmain.sh.orig	2019-03-06 17:18:05.690203200 +0100
++++ libtool-2.4.6/build-aux/ltmain.sh	2019-03-06 17:21:40.825606300 +0100
+@@ -10208,16 +10208,6 @@
  
        case $host in
        *-*-darwin*)
 -	# Don't allow lazy linking, it breaks C++ global constructors
 -	# But is supposedly fixed on 10.4 or later (yay!).
--	if test "$tagname" = CXX ; then
+-	if test CXX = "$tagname"; then
 -	  case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
 -	    10.[0123])
--	      func_append compile_command " ${wl}-bind_at_load"
--	      func_append finalize_command " ${wl}-bind_at_load"
+-	      func_append compile_command " $wl-bind_at_load"
+-	      func_append finalize_command " $wl-bind_at_load"
 -	    ;;
 -	  esac
 -	fi
diff --git a/extras/tools/libtool-2.4.6-clang-libs.patch b/extras/tools/libtool-2.4.6-clang-libs.patch
index 93ec23bd1b..8e2a258918 100644
--- a/extras/tools/libtool-2.4.6-clang-libs.patch
+++ b/extras/tools/libtool-2.4.6-clang-libs.patch
@@ -6,15 +6,14 @@ compiler libraries.
 https://crbug.com/749263
 https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27866
 
---- a/libltdl/m4/libtool.m4
-+++ b/libltdl/m4/libtool.m4
-@@ -7531,7 +7544,7 @@
+--- libtool-2.4.6/m4/libtool.m4	2015-01-20 17:15:19.000000000 +0100
++++ libtool-2.4.6/m4/libtool.m4.clang	2019-03-06 17:27:40.620395700 +0100
+@@ -7531,7 +7531,7 @@
    for p in `eval "$output_verbose_link_cmd"`; do
      case $prev$p in
-
+ 
 -    -L* | -R* | -l*)
 +    -L* | -R* | -l* | */libclang_rt.*.a)
         # Some compilers place space between "-{L,R}" and the path.
         # Remove the space.
         if test x-L = "$p" ||
-
diff --git a/extras/tools/libtool-2.4.2-response-files.patch b/extras/tools/libtool-2.4.6-response-files.patch
similarity index 73%
rename from extras/tools/libtool-2.4.2-response-files.patch
rename to extras/tools/libtool-2.4.6-response-files.patch
index d85aceaecd..a8c6d39fb7 100644
--- a/extras/tools/libtool-2.4.2-response-files.patch
+++ b/extras/tools/libtool-2.4.6-response-files.patch
@@ -8,20 +8,20 @@ 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.
 ---
- libltdl/config/ltmain.m4sh | 28 ++++++++++++++--------------
- libltdl/m4/libtool.m4      |  2 ++
+ libtool-2.4.6/config/ltmain.m4sh | 28 ++++++++++++++--------------
+ libtool-2.4.6/m4/libtool.m4      |  2 ++
  2 files changed, 16 insertions(+), 14 deletions(-)
 
-diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh
+diff --git libtool-2.4.6/build-aux/ltmain.sh.orig libtool-2.4.6/build-aux/ltmain.sh
 index 2641327..f6b4217 100644
---- a/libltdl/config/ltmain.m4sh
-+++ b/libltdl/config/ltmain.m4sh
-@@ -7545,20 +7545,7 @@ EOF
+--- libtool-2.4.6/build-aux/ltmain.sh.orig	2019-05-14 15:41:21.977391100 +0200
++++ libtool-2.4.6/build-aux/ltmain.sh	2019-05-14 15:43:07.767697900 +0200
+@@ -9852,20 +9852,7 @@ EOF
  	  last_robj=
  	  k=1
  
--	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
--	    output=${output_objdir}/${output_la}.lnkscript
+-	  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
@@ -33,17 +33,17 @@ index 2641327..f6b4217 100644
 -	    func_append delfiles " $output"
 -	    func_to_tool_file "$output"
 -	    output=$func_to_tool_file_result
--	  elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
-+	  if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then
- 	    output=${output_objdir}/${output_la}.lnk
+-	  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
-@@ -7577,6 +7564,19 @@ EOF
+@@ -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 "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then
-+	    output=${output_objdir}/${output_la}.lnkscript
++	  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
@@ -58,10 +58,10 @@ index 2641327..f6b4217 100644
  	  else
  	    if test -n "$save_libobjs"; then
  	      func_verbose "creating reloadable object files..."
-diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4
+diff --git libtool-2.4.6/m4/libtool.m4.orig libtool-2.4.6/m4/libtool.m4
 index 6f93d32..2c5c2f0 100644
---- a/libltdl/m4/libtool.m4
-+++ b/libltdl/m4/libtool.m4
+--- 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'
diff --git a/extras/tools/libtool-2.4.2-san.patch b/extras/tools/libtool-2.4.6-san.patch
similarity index 52%
rename from extras/tools/libtool-2.4.2-san.patch
rename to extras/tools/libtool-2.4.6-san.patch
index 4f833aac60..c70154b5ee 100644
--- a/extras/tools/libtool-2.4.2-san.patch
+++ b/extras/tools/libtool-2.4.6-san.patch
@@ -12,33 +12,31 @@ linker to allow trivial use of the clang address sanitizer.
 Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu at macports.org>
 Copyright-paperwork-exempt: Yes
 ---
-diff -ru libtool/libltdl/config/ltmain.m4sh libtool-fixed/libltdl/config/ltmain.m4sh
---- libtool/libltdl/config/ltmain.m4sh	2017-10-16 08:20:47.000000000 +0200
-+++ libtool-fixed/libltdl/config/ltmain.m4sh	2017-10-16 08:22:23.000000000 +0200
-@@ -5064,9 +5064,10 @@
-       # -tp=*                Portland pgcc target processor selection
+--- libtool-2.4.6/build-aux/ltmain.in.orig	2019-03-06 17:24:29.400776100 +0100
++++ libtool-2.4.6/build-aux/ltmain.in	2019-03-06 17:26:31.994381100 +0100
+@@ -5361,9 +5361,10 @@
        # --sysroot=*          for sysroot support
-       # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+       # -stdlib=*            select c++ std lib with clang
 +      # -fsanitize=*         Clang/GCC memory and address sanitizer
        -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
        -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
--      -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
-+      -O*|-flto*|-fwhopr*|-fuse-linker-plugin|-fsanitize=*)
+-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
++      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*|-fsanitize=*)
          func_quote_for_eval "$arg"
- 	arg="$func_quote_for_eval_result"
+ 	arg=$func_quote_for_eval_result
          func_append compile_command " $arg"
-diff -ru libtool/libltdl/config/ltmain.sh libtool-fixed/libltdl/config/ltmain.sh
---- libtool/libltdl/config/ltmain.sh	2017-10-16 08:20:47.000000000 +0200
-+++ libtool-fixed/libltdl/config/ltmain.sh	2017-10-16 08:22:58.000000000 +0200
-@@ -5851,9 +5851,10 @@
-       # -tp=*                Portland pgcc target processor selection
+--- libtool-2.4.6/build-aux/ltmain.sh.orig	2019-03-06 17:25:38.610781500 +0100
++++ libtool-2.4.6/build-aux/ltmain.sh	2019-03-06 17:26:53.790387700 +0100
+@@ -7273,9 +7273,10 @@
        # --sysroot=*          for sysroot support
-       # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+       # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+       # -stdlib=*            select c++ std lib with clang
 +      # -fsanitize=*         Clang/GCC memory and address sanitizer
        -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
        -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
--      -O*|-flto*|-fwhopr*|-fuse-linker-plugin)
-+      -O*|-flto*|-fwhopr*|-fuse-linker-plugin|-fsanitize=*)
+-      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
++      -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*|-fsanitize=*)
          func_quote_for_eval "$arg"
- 	arg="$func_quote_for_eval_result"
+ 	arg=$func_quote_for_eval_result
          func_append compile_command " $arg"
diff --git a/extras/tools/packages.mak b/extras/tools/packages.mak
index 21bcc74c1a..91b037a6ab 100644
--- a/extras/tools/packages.mak
+++ b/extras/tools/packages.mak
@@ -12,7 +12,7 @@ NASM_URL=http://www.nasm.us/pub/nasm/releasebuilds/$(NASM_VERSION)/nasm-$(NASM_V
 CMAKE_VERSION=3.13.1
 CMAKE_URL=http://www.cmake.org/files/v3.13/cmake-$(CMAKE_VERSION).tar.gz
 
-LIBTOOL_VERSION=2.4.2
+LIBTOOL_VERSION=2.4.6
 LIBTOOL_URL=$(GNU)/libtool/libtool-$(LIBTOOL_VERSION).tar.gz
 
 AUTOCONF_VERSION=2.69
diff --git a/extras/tools/tools.mak b/extras/tools/tools.mak
index 0ed5701c74..205464960d 100644
--- a/extras/tools/tools.mak
+++ b/extras/tools/tools.mak
@@ -101,10 +101,10 @@ libtool-$(LIBTOOL_VERSION).tar.gz:
 
 libtool: libtool-$(LIBTOOL_VERSION).tar.gz
 	$(UNPACK)
-	$(APPLY) libtool-2.4.2-bitcode.patch
-	$(APPLY) libtool-2.4.2-san.patch
+	$(APPLY) libtool-2.4.6-bitcode.patch
+	$(APPLY) libtool-2.4.6-san.patch
 	$(APPLY) libtool-2.4.6-clang-libs.patch
-	$(APPLY) libtool-2.4.2-response-files.patch
+	$(APPLY) libtool-2.4.6-response-files.patch
 	$(MOVE)
 
 .libtool: libtool .automake
-- 
2.17.1



More information about the vlc-devel mailing list