Skip to content

Commit

Permalink
Merge pull request #4897 from ikspress/libtool
Browse files Browse the repository at this point in the history
libtool: update to 2.5.3
  • Loading branch information
mmuetzel authored Oct 23, 2024
2 parents 4754858 + 6e7df25 commit b9d0dc2
Show file tree
Hide file tree
Showing 15 changed files with 719 additions and 1,586 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[PATCH 2/6] [cygwin|mingw] Create UAC manifest files.
[PATCH] [cygwin|mingw] Create UAC manifest files.

* build-aux/ltmain.in (func_emit_exe_manifest): New function.
(func_mode_link) [cygwin|mingw]: Create manifest files for wrapper
Expand All @@ -8,14 +8,14 @@ error. Ensure manifest files have executable permission.
(func_mode_uninstall): Clean up manifest files.
Various reports by Eric Blake, Kai Tietz, and Cesar Strauss.
---
build-auxltmain.in | 50 ++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 48 insertions(+), 2 deletions(-)
build-aux/ltmain.in | 50 +++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 48 insertions(+), 2 deletions(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 0418007..1821779 100644
index 68aca605..8e6bf480 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -4277,6 +4277,41 @@ EOF
@@ -4572,6 +4572,41 @@ EOF
}
# end: func_emit_cwrapperexe_src

Expand Down Expand Up @@ -57,16 +57,16 @@ index 0418007..1821779 100644
# func_win32_import_lib_p ARG
# True if ARG is an import lib, as indicated by $file_magic_cmd
func_win32_import_lib_p ()
@@ -8237,7 +8272,7 @@ EOF
cwrappersource="$output_path/$objdir/lt-$output_name.c"
cwrapper="$output_path/$output_name.exe"
@@ -8610,7 +8645,7 @@ func_mode_link ()
cwrappersource=$output_path/$objdir/lt-$output_name.c
cwrapper=$output_path/$output_name.exe
$RM $cwrappersource $cwrapper
- trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
+ trap "$RM $cwrappersource $cwrapper $cwrapper.manifest; exit $EXIT_FAILURE" 1 2 15

func_emit_cwrapperexe_src > $cwrappersource

@@ -8257,6 +8292,16 @@ EOF
@@ -8630,6 +8665,16 @@ func_mode_link ()
$opt_dry_run || {
# note: this script will not be executed, so do not chmod.
if test "x$build" = "x$host"; then
Expand All @@ -83,7 +83,7 @@ index 0418007..1821779 100644
$cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
else
func_emit_wrapper no > $func_ltwrapper_scriptname_result
@@ -8777,8 +8822,9 @@ func_mode_uninstall ()
@@ -9156,8 +9201,9 @@ func_mode_uninstall ()
# note $name still contains .exe if it was in $file originally
# as does the version of $file that was added into $rmfiles
func_append rmfiles " $odir/$name $odir/${name}S.$objext"
Expand All @@ -94,6 +94,3 @@ index 0418007..1821779 100644
fi
if test "X$noexename" != "X$name"; then
func_append rmfiles " $odir/lt-$noexename.c"
--
1.7.1

25 changes: 25 additions & 0 deletions libtool/0001-handle-unset-multilib.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
From 0fad3a7164f0e8bbdef93ece8a128f0e1367d4bb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Markus=20M=C3=BCtzel?= <[email protected]>
Date: Mon, 14 Oct 2024 17:25:07 +0200
Subject: [PATCH] handle unset $multilib

---
m4/libtool.m4 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/m4/libtool.m4 b/m4/libtool.m4
index e5ddacee..4c44bf9c 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -2569,7 +2569,7 @@ cygwin* | mingw* | windows* | pw32* | cegcc*)
# If user builds GCC with mulitlibs enabled,
# it should just install on $(libdir)
# not on $(libdir)/../bin or 32 bits dlls would override 64 bit ones.
- if test yes = $multilib; then
+ if test xyes = x$multilib; then
postinstall_cmds='base_file=`basename \$file`~
dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~
--
2.44.0.windows.1

Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
[PATCH 5/6] Fix "seems to be moved"
[PATCH] Fix "seems to be moved"

* build-aux/ltmain.in (func_mode_link): Compare files by inode
to fix "seems to be moved" warning.
---
build-aux/ltmain.in | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
build-aux/ltmain.in | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index af46cb8..244bb5b 100644
index 8e6bf480..3e2adfb1 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -6283,7 +6283,9 @@ func_mode_link ()
@@ -6734,7 +6734,9 @@ func_mode_link ()
eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
test -z "$libdir" && \
func_fatal_error "'$deplib' is not a valid libtool archive"
Expand All @@ -20,5 +21,3 @@ index af46cb8..244bb5b 100644
func_warning "'$deplib' seems to be moved"

path=-L$absdir
--
1.7.0.2.msysgit.0
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
[PATCH 6/6] Fix STRICT_ANSI vs POSIX
[PATCH] Fix STRICT_ANSI vs POSIX

* build-aux/ltmain.in (func_mode_link): Also check for _POSIX
as well as __STRICT_ANSI__ to avoid re-definitions.
---
build-aux/ltmain.in | 4 +++-
1 files changed, 1 insertions(+), 1 deletions(-)
build-aux/ltmain.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index af46cb8..244bb5b 100644
index 3e2adfb1..5f9af8c2 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -3382,7 +3382,7 @@
@@ -3670,7 +3670,7 @@ EOF

/* declarations of non-ANSI functions */
#if defined __MINGW32__
-# ifdef __STRICT_ANSI__
+# if defined(__STRICT_ANSI__) && !defined(__MINGW64_VERSION_MAJOR) || defined(_POSIX_)
int _putenv (const char *);
_CRTIMP int __cdecl _putenv (const char *);
# endif
#elif defined __CYGWIN__
--
1.7.0.2.msysgit.0
27 changes: 0 additions & 27 deletions libtool/0003-Pass-various-runtime-library-flags-to-GCC.mingw.patch

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
Allow statically linking Flang support libraries when linking a library
[PATCH] Allow statically linking Flang support libraries when linking
a library

diff -urN libtool-2.4.7/build-aux/ltmain.in.orig libtool-2.4.7/build-aux/ltmain.in
--- libtool-2.4.7/build-aux/ltmain.in.orig 2022-03-17 03:43:39.000000000 +0100
+++ libtool-2.4.7/build-aux/ltmain.in 2022-10-30 11:49:11.337887100 +0100
@@ -7459,6 +7459,15 @@
---
build-aux/ltmain.in | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 5f9af8c2..97810d08 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -7439,6 +7439,15 @@ func_mode_link ()
a_deplib=
break 2
fi
Expand Down
18 changes: 18 additions & 0 deletions libtool/0005-libtool-include-process.h.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[PATCH] libtool: include process.h

---
build-aux/ltmain.in | 1 +
1 file changed, 1 insertion(+)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index 97810d08..e3c77f29 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -3654,6 +3654,7 @@ EOF
# include <unistd.h>
# include <stdint.h>
# ifdef __CYGWIN__
+# include <process.h>
# include <io.h>
# endif
#endif
29 changes: 29 additions & 0 deletions libtool/0006-Pass-various-flags-to-GCC.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[PATCH] Pass various flags to GCC

* build-aux/ltmain.in (func_mode_link): Pass various flags to GCC.

See https://gcc.gnu.org/onlinedocs/gcc/Link-Options.html#DOCF1
---
build-aux/ltmain.in | 2 ++
1 file changed, 2 insertions(+)

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
index e3c77f29..0560159b 100644
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -5460,6 +5460,7 @@ func_mode_link ()
# -static-libsan Link with static sanitizer runtimes (Clang)
# -no-canonical-prefixes Do not expand any symbolic links
# -fuse-ld=* Linker select flags for GCC
+ # -shared-* direct GCC to link specific libraries dynamically
# -static-* direct GCC to link specific libraries statically
# -fcilkplus Cilk Plus language extension features for C/C++
# -rtlib=* select c runtime lib with clang
@@ -5474,6 +5475,7 @@ func_mode_link ()
-specs=*|-fsanitize=*|-fno-sanitize*|-shared-libsan|-static-libsan| \
-ffile-prefix-map=*|-fdebug-prefix-map=*|-fmacro-prefix-map=*|-fprofile-prefix-map=*| \
-fdiagnostics-color*|-frecord-gcc-switches| \
+ -ffast-math|-fgnu-tm|-ftree-parallelize-loops=*|-funsafe-math-optimizations|-fvtable-verify*|-shared-*| \
-fuse-ld=*|-static-*|-fcilkplus|-Wa,*|-Werror|-Werror=*)
func_quote_arg pretty "$arg"
arg=$func_quote_arg_result
22 changes: 0 additions & 22 deletions libtool/0007-fix-cr-for-awk-in-configure.all.patch

This file was deleted.

Loading

0 comments on commit b9d0dc2

Please sign in to comment.