libtool: rebase to 2.4.7
Per upstream release notes: http://savannah.gnu.org/forum/forum.php?forum_id=10139 Resolves: #2065004 Version: 2.4.7-1 Reviewed-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
parent
2103f3557e
commit
d6936bca91
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
||||
/libtool-2.4.6.tar.xz
|
||||
/libtool-2.4.7.tar.xz
|
||||
|
@ -1,35 +0,0 @@
|
||||
Ensure that $(LIBLTDL) is built first
|
||||
|
||||
After Automake upstream commit f4e91bfc490d, the list in 'all-am:' is
|
||||
reordered for this test-case (*_LTLIBRARIES is before *_PROGRAMS), which
|
||||
means that linker will fail to link 'old' binary.
|
||||
|
||||
Previously (with automake <= 1.16), it was matter of luck -- it worked if
|
||||
(a) the build was serial (-j1), and/or (b) libtool-ltdl-devel package was
|
||||
installed on the box so ./configure picked the system version of libltdl.
|
||||
|
||||
Users should anyways use system's ltdl, so this has low priority.
|
||||
|
||||
diff --git a/tests/old-ltdl-iface.at b/tests/old-ltdl-iface.at
|
||||
index cee29089..6f9c8001 100644
|
||||
--- a/tests/old-ltdl-iface.at
|
||||
+++ b/tests/old-ltdl-iface.at
|
||||
@@ -62,6 +62,9 @@ MOSTLYCLEANFILES =
|
||||
include ltdl/Makefile.inc
|
||||
bin_PROGRAMS = old
|
||||
old_LDADD = -Lltdl $(LIBLTDL)
|
||||
+# TODO: if --with-included-ltdl was unused this would
|
||||
+# generate useless dependency.
|
||||
+old_DEPENDENCIES = $(LIBLTDL)
|
||||
]])
|
||||
|
||||
AT_DATA([old.c],
|
||||
@@ -131,7 +134,7 @@ LT_AT_CHECK_LIBTOOLIZE([--ltdl=ltdl --nonrecursive --install], 0, [expout], [exp
|
||||
|
||||
AT_CHECK([test -f ltdl/Makefile.inc])
|
||||
|
||||
-LT_AT_BOOTSTRAP([ignore], [-I m4], [], [--add-missing], [--force])
|
||||
+LT_AT_BOOTSTRAP([ignore], [-I m4], [], [--add-missing], [--force], [--with-included-ltdl])
|
||||
|
||||
LT_AT_EXEC_CHECK([./old], 0, [[...]])
|
||||
|
@ -1,34 +0,0 @@
|
||||
From 350082b6aa89f9ef603fcebbb4cf33f15a743f2f Mon Sep 17 00:00:00 2001
|
||||
From: Bert Wesarg <bert.wesarg@googlemail.com>
|
||||
Date: Mon, 13 Jun 2016 22:28:47 +0200
|
||||
Subject: [PATCH] libtool: exit verbosely for fatal configure problems
|
||||
|
||||
Instead of calling not-existing function and processing subsequent
|
||||
shell code.
|
||||
|
||||
* build-aux/ltmain.in (func_fatal_configuration): Fix typo in
|
||||
func_fatal_error call.
|
||||
|
||||
Copyright-paperwork-exempt: Yes
|
||||
|
||||
Upstream: 350082b6aa89f9ef603fcebbb4cf33f15a743f2f
|
||||
---
|
||||
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 0ad021db..c3058f21 100644
|
||||
--- a/build-aux/ltmain.in
|
||||
+++ b/build-aux/ltmain.in
|
||||
@@ -212,7 +212,7 @@ fi
|
||||
# a configuration failure hint, and exit.
|
||||
func_fatal_configuration ()
|
||||
{
|
||||
- func__fatal_error ${1+"$@"} \
|
||||
+ func_fatal_error ${1+"$@"} \
|
||||
"See the $PACKAGE documentation for more information." \
|
||||
"Fatal configuration error."
|
||||
}
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,37 +0,0 @@
|
||||
From a5c6466528c060cc4660ad0319c00740db0e42ba Mon Sep 17 00:00:00 2001
|
||||
From: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
|
||||
Date: Sun, 18 Oct 2015 21:55:39 -0700
|
||||
Subject: [PATCH] libtool: fix GCC/clang linking with -fsanitize=*
|
||||
|
||||
References:
|
||||
https://lists.gnu.org/archive/html/libtool/2014-04/msg00026.html
|
||||
|
||||
* build-aux/ltmain.in (func_mode_link): Pass -fsanitize=* to the
|
||||
linker to allow trivial use of the clang address sanitizer.
|
||||
|
||||
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org>
|
||||
Copyright-paperwork-exempt: Yes
|
||||
---
|
||||
build-aux/ltmain.in | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
|
||||
index 1cbe875d..2a5aaadd 100644
|
||||
--- a/build-aux/ltmain.in
|
||||
+++ b/build-aux/ltmain.in
|
||||
@@ -5362,10 +5362,11 @@ func_mode_link ()
|
||||
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
|
||||
# -specs=* GCC specs files
|
||||
# -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*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
|
||||
- -specs=*)
|
||||
+ -specs=*|-fsanitize=*)
|
||||
func_quote_for_eval "$arg"
|
||||
arg=$func_quote_for_eval_result
|
||||
func_append compile_command " $arg"
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 702a97fbb09bd7088a50f2b239016d1e32843c24 Mon Sep 17 00:00:00 2001
|
||||
From: Pavel Raiskup <praiskup@redhat.com>
|
||||
Date: Fri, 18 Sep 2015 10:36:43 +0200
|
||||
Subject: libtool: fix GCC linking with -specs=*
|
||||
|
||||
References:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=985592
|
||||
|
||||
* build-aux/ltmain.in (func_mode_link): Pass -specs=*
|
||||
to the linker, Fedora uses this option for hardening.
|
||||
|
||||
Signed-off-by: Pavel Raiskup <praiskup@redhat.com>
|
||||
---
|
||||
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 d5cf07a..0c40da0 100644
|
||||
--- a/build-aux/ltmain.in
|
||||
+++ b/build-aux/ltmain.in
|
||||
@@ -5360,10 +5360,12 @@ func_mode_link ()
|
||||
# -tp=* Portland pgcc target processor selection
|
||||
# --sysroot=* for sysroot support
|
||||
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
|
||||
+ # -specs=* GCC specs files
|
||||
# -stdlib=* select c++ std lib with clang
|
||||
-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*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
|
||||
+ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
|
||||
+ -specs=*)
|
||||
func_quote_for_eval "$arg"
|
||||
arg=$func_quote_for_eval_result
|
||||
func_append compile_command " $arg"
|
||||
--
|
||||
cgit v1.0-41-gc330
|
||||
|
@ -1,36 +0,0 @@
|
||||
From f9970d99293faf908fdc153a653fa5781095fb7a Mon Sep 17 00:00:00 2001
|
||||
From: Mike Frysinger <vapier@gentoo.org>
|
||||
Date: Sat, 13 Feb 2016 02:14:29 -0500
|
||||
Subject: [PATCH] libtool: pass through -fuse-ld flags
|
||||
|
||||
Starting with gcc-4.8, there's a -fuse-ld flag that can be used to
|
||||
select between bfd & gold. Make sure we pass it through to the
|
||||
linking stage.
|
||||
|
||||
* build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags
|
||||
through.
|
||||
Copyright-paperwork-exempt: Yes
|
||||
---
|
||||
build-aux/ltmain.in | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
|
||||
index 40eb0297..26015641 100644
|
||||
--- a/build-aux/ltmain.in
|
||||
+++ b/build-aux/ltmain.in
|
||||
@@ -5363,10 +5363,11 @@ func_mode_link ()
|
||||
# -specs=* GCC specs files
|
||||
# -stdlib=* select c++ std lib with clang
|
||||
# -fsanitize=* Clang/GCC memory and address sanitizer
|
||||
+ # -fuse-ld=* Linker select flags for GCC
|
||||
-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*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
|
||||
- -specs=*|-fsanitize=*)
|
||||
+ -specs=*|-fsanitize=*|-fuse-ld=*)
|
||||
func_quote_for_eval "$arg"
|
||||
arg=$func_quote_for_eval_result
|
||||
func_append compile_command " $arg"
|
||||
--
|
||||
2.34.1
|
||||
|
30
libtool.spec
30
libtool.spec
@ -7,8 +7,8 @@
|
||||
|
||||
Summary: The GNU Portable Library Tool
|
||||
Name: libtool
|
||||
Version: 2.4.6
|
||||
Release: 50%{?dist}
|
||||
Version: 2.4.7
|
||||
Release: 1%{?dist}
|
||||
License: GPLv2+ and LGPLv2+ and GFDL
|
||||
URL: http://www.gnu.org/software/libtool/
|
||||
|
||||
@ -18,41 +18,26 @@ Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
|
||||
# ~> remove possibly once #1158915 gets fixed somehow
|
||||
Patch0: libtool-2.4.5-rpath.patch
|
||||
|
||||
# ~> downstream (TODO)
|
||||
Patch1: libtool-2.4.6-am-1.16-test.patch
|
||||
|
||||
# ~> upstream 702a97fbb
|
||||
Patch2: libtool-2.4.6-specs.patch
|
||||
|
||||
# See the rhbz#1289759 and rhbz#1214506. We disable hardening namely because
|
||||
# that bakes the CFLAGS/LDFLAGS into installed /bin/libtool and ltmain.sh files.
|
||||
# At the same time we want to have libltdl.so hardened. Downstream-only patch.
|
||||
%undefine _hardened_build
|
||||
Patch3: libtool-2.4.6-hardening.patch
|
||||
|
||||
# rhbz#1622611, upstream 350082b6aa89f9ef603fcebbb4cf33f15a743f2f
|
||||
Patch4: libtool-2.4.6-fatal-handler.patch
|
||||
Patch1: libtool-2.4.6-hardening.patch
|
||||
|
||||
# The testsuite seems to not properly handle template instantiation and as
|
||||
# a result fails. libtool itself appears to be OK from my by-hand testing. (by Jeff Law)
|
||||
# Disable LTO for link-order2 test (Related: #1988112)
|
||||
Patch5: libtool-2.4.6-disable-lto-link-order2.patch
|
||||
|
||||
# rhbz#2024647, upstream a5c6466528c060cc4660ad0319c00740db0e42ba
|
||||
Patch6: libtool-2.4.6-sanitize.patch
|
||||
|
||||
# rhbz#2024647, upstream f9970d99293faf908fdc153a653fa5781095fb7a
|
||||
Patch7: libtool-2.4.6-use-ld.patch
|
||||
Patch2: libtool-2.4.6-disable-lto-link-order2.patch
|
||||
|
||||
# non-PIC libraries are not supported on ARMv7
|
||||
# Since we removed "-fPIC" from global CFLAGS this test fails on this arch (as expected)
|
||||
# Please refer to the following ticket regarding PIC support on ARM:
|
||||
# https://bugs.launchpad.net/ubuntu/+source/gcc-4.4/+bug/503448
|
||||
Patch8: libtool-2.4.6-disable_non-pic_arm.patch
|
||||
Patch3: libtool-2.4.6-disable_non-pic_arm.patch
|
||||
|
||||
# rhbz#2047389, patch sent upstream
|
||||
# https://lists.gnu.org/archive/html/libtool-patches/2022-02/msg00000.html
|
||||
Patch9: libtool-2.4.6-keep-compiler-deps.patch
|
||||
Patch4: libtool-2.4.6-keep-compiler-deps.patch
|
||||
|
||||
%if ! 0%{?_module_build}
|
||||
Patch100: libtool-nodocs.patch
|
||||
@ -180,6 +165,9 @@ rm -f %{buildroot}%{_libdir}/libltdl.{a,la}
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Mar 21 2022 Frederic Berat <fberat@redhat.com> - 2.4.7-1
|
||||
- Rebase to libtool 2.4.7 (#2065004)
|
||||
|
||||
* Thu Feb 17 2022 Frederic Berat <fberat@redhat.com> - 2.4.6-50
|
||||
- Keep compiler generated list of library dependencies.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user