Compare commits
No commits in common. "c8s" and "c10s" have entirely different histories.
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
|||||||
|
1
|
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,2 @@
|
|||||||
SOURCES/libtool-2.4.6.tar.xz
|
|
||||||
/libtool-2.4.6.tar.xz
|
/libtool-2.4.6.tar.xz
|
||||||
|
/libtool-2.4.7.tar.xz
|
||||||
|
35
0001-tests-Fix-grep-warning-about-stray-before.patch
Normal file
35
0001-tests-Fix-grep-warning-about-stray-before.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
From 414deacee0f564afdf2d7750450274c581330a59 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20B=C3=A9rat?= <fberat@redhat.com>
|
||||||
|
Date: Wed, 21 Dec 2022 13:14:03 +0100
|
||||||
|
Subject: [PATCH] tests: Fix grep warning about stray \ before /
|
||||||
|
|
||||||
|
Recent version of grep emit a warning if stray \ is found before /.
|
||||||
|
This leads to the link-order test failure.
|
||||||
|
|
||||||
|
* tests/link-order.at: Remove unneeded \ before /
|
||||||
|
---
|
||||||
|
tests/link-order.at | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/tests/link-order.at b/tests/link-order.at
|
||||||
|
index 3f01a00d..a145347f 100644
|
||||||
|
--- a/tests/link-order.at
|
||||||
|
+++ b/tests/link-order.at
|
||||||
|
@@ -99,12 +99,12 @@ aix* | interix*) ;; # These systems have different path syntax
|
||||||
|
case $hardcode_direct$hardcode_direct_absolute in
|
||||||
|
yesno)
|
||||||
|
AT_CHECK([if $EGREP relinking stderr; then
|
||||||
|
- $EGREP " .*\/new\/lib/libb$shared_ext .*\/old\/lib/libcee$shared_ext" stdout
|
||||||
|
+ $EGREP " .*/new/lib/libb$shared_ext .*/old/lib/libcee$shared_ext" stdout
|
||||||
|
else :; fi], [0], [ignore], [], [echo "wrong link order"])
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
AT_CHECK([if $EGREP relinking stderr; then
|
||||||
|
- $EGREP " -L.*\/new\/lib -lb -L.*\/old\/lib -lcee" stdout
|
||||||
|
+ $EGREP " -L.*/new/lib -lb -L.*/old/lib -lcee" stdout
|
||||||
|
else :; fi], [0], [ignore], [], [echo "wrong link order"])
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
--
|
||||||
|
2.38.1
|
||||||
|
|
6
STAGE2-libtool
Normal file
6
STAGE2-libtool
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
mcd $BUILDDIR/libtool
|
||||||
|
|
||||||
|
$SRC/libtool-*/configure $TCONFIGARGS
|
||||||
|
|
||||||
|
make $J
|
||||||
|
make $J install
|
7
ci.fmf
Normal file
7
ci.fmf
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
summary: CI Gating Plan
|
||||||
|
discover:
|
||||||
|
- name: gitlabcee_tests
|
||||||
|
how: fmf
|
||||||
|
url: https://gitlab.cee.redhat.com/toolchain-qe/tests/libtool.git
|
||||||
|
execute:
|
||||||
|
how: tmt
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
--- !Policy
|
||||||
|
product_versions:
|
||||||
|
- rhel-10
|
||||||
|
decision_context: osci_compose_gate
|
||||||
|
rules:
|
||||||
|
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
@ -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, [[...]])
|
|
||||||
|
|
53
libtool-2.4.6-disable-lto-link-order2.patch
Normal file
53
libtool-2.4.6-disable-lto-link-order2.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
Enabling lto will result in failure during test phase, to be precise test 67 will cause it.
|
||||||
|
Compiler flags for this test (and most likely for rest of them) are inherited from actual build phase.
|
||||||
|
I'm not sure if this is expected.
|
||||||
|
|
||||||
|
Most distribution disables this test. We try to keep it by stripping lto flags for it.
|
||||||
|
|
||||||
|
Origin for this tests: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=391427
|
||||||
|
|
||||||
|
--- a/tests/link-order2.at 2015-01-16 19:52:04.000000000 +0100
|
||||||
|
+++ b/tests/link-order2_new.at 2021-11-30 02:01:09.574451906 +0100
|
||||||
|
@@ -47,6 +47,8 @@
|
||||||
|
AT_KEYWORDS([libtool])
|
||||||
|
AT_KEYWORDS([interactive])dnl running 'wrong' may cause a popup window.
|
||||||
|
|
||||||
|
+NO_LTO_CFLAGS=${CFLAGS/-flto*-ffat-lto-objects }
|
||||||
|
+
|
||||||
|
eval `$LIBTOOL --config | $EGREP '^(shlibpath_var|allow_undefined_flag)='`
|
||||||
|
|
||||||
|
undefined_setting=-no-undefined
|
||||||
|
@@ -89,12 +91,12 @@
|
||||||
|
EOF
|
||||||
|
|
||||||
|
for file in a0 a1 b; do
|
||||||
|
- $LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file.c
|
||||||
|
+ $LIBTOOL --mode=compile $CC $CPPFLAGS $NO_LTO_CFLAGS -c $file.c
|
||||||
|
done
|
||||||
|
-$CC $CPPFLAGS $CFLAGS -c main.c
|
||||||
|
+$CC $CPPFLAGS $NO_LTO_CFLAGS -c main.c
|
||||||
|
|
||||||
|
# Build an old, installed library.
|
||||||
|
-$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o liba0.la a0.lo -rpath $deflibdir
|
||||||
|
+$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o liba0.la a0.lo -rpath $deflibdir
|
||||||
|
$LIBTOOL --mode=install cp liba0.la $deflibdir/liba0.la
|
||||||
|
$LIBTOOL --mode=clean rm -f liba0.la
|
||||||
|
|
||||||
|
@@ -118,13 +120,13 @@
|
||||||
|
esac
|
||||||
|
test non-libtool,-static-libtool-libs = "$type_of_depdepl,$static" &&
|
||||||
|
static=-all-static
|
||||||
|
- $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o liba1.la a1.lo -rpath $libdir
|
||||||
|
- $LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o libb.la b.lo liba1.la -rpath $libdir
|
||||||
|
- AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o main$EXEEXT main.$OBJEXT libb.la -la0],
|
||||||
|
+ $LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o liba1.la a1.lo -rpath $libdir
|
||||||
|
+ $LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o libb.la b.lo liba1.la -rpath $libdir
|
||||||
|
+ AT_CHECK([$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o main$EXEEXT main.$OBJEXT libb.la -la0],
|
||||||
|
[], [ignore], [ignore])
|
||||||
|
LT_AT_EXEC_CHECK([./main])
|
||||||
|
# Now test that if we reverse the link order, the program fails.
|
||||||
|
- AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS $static -o wrong$EXEEXT main.$OBJEXT -la0 libb.la],
|
||||||
|
+ AT_CHECK([$LIBTOOL --mode=link $CC $NO_LTO_CFLAGS $LDFLAGS $static -o wrong$EXEEXT main.$OBJEXT -la0 libb.la],
|
||||||
|
[], [ignore], [ignore])
|
||||||
|
if test yes, != "$shared_fails,$static"; then
|
||||||
|
LT_AT_EXEC_CHECK([./wrong], [1], [], [ignore], [|| (exit 1)])
|
16
libtool-2.4.6-disable_non-pic_arm.patch
Normal file
16
libtool-2.4.6-disable_non-pic_arm.patch
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
diff -r -U5 libtool-2.4.6.old/tests/demo.at libtool-2.4.6/tests/demo.at
|
||||||
|
--- libtool-2.4.6.old/tests/demo.at 2022-01-31 22:15:48.539557030 +0100
|
||||||
|
+++ libtool-2.4.6/tests/demo.at 2022-02-01 09:43:30.262092074 +0100
|
||||||
|
@@ -508,11 +508,11 @@
|
||||||
|
## ----------- ##
|
||||||
|
|
||||||
|
AT_SETUP([force non-PIC objects])
|
||||||
|
|
||||||
|
AT_CHECK([case $host in
|
||||||
|
-hppa*|x86_64*|s390*)
|
||||||
|
+hppa*|x86_64*|s390*|arm*)
|
||||||
|
# These hosts cannot use non-PIC shared libs
|
||||||
|
exit 77 ;;
|
||||||
|
*-solaris*|*-sunos*)
|
||||||
|
# Libtool does not build non-PIC shared libs on these hosts
|
||||||
|
exit 77 ;;
|
@ -1,14 +0,0 @@
|
|||||||
diff --git a/Makefile.am b/Makefile.am
|
|
||||||
index 13dfc63..5c5603a 100644
|
|
||||||
--- a/Makefile.am
|
|
||||||
+++ b/Makefile.am
|
|
||||||
@@ -311,6 +311,9 @@ libtool: $(ltmain_sh) $(config_status) $(dotversion)
|
|
||||||
|
|
||||||
include libltdl/ltdl.mk
|
|
||||||
|
|
||||||
+libltdl_libltdl_la_CPPFLAGS += $(CUSTOM_LTDL_CFLAGS)
|
|
||||||
+libltdl_libltdl_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
|
||||||
+
|
|
||||||
lt_aclocal_m4 = $(srcdir)/$(ltdl_dir)/aclocal.m4
|
|
||||||
lt_config_h_in = $(srcdir)/$(ltdl_dir)/config-h.in
|
|
||||||
lt_configure = $(srcdir)/$(ltdl_dir)/configure
|
|
58
libtool-2.4.6-keep-compiler-deps.patch
Normal file
58
libtool-2.4.6-keep-compiler-deps.patch
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
diff -r -U5 libtool-2.4.6/build-aux/ltmain.in libtool-2.4.6.new/build-aux/ltmain.in
|
||||||
|
--- libtool-2.4.6/build-aux/ltmain.in 2022-02-22 09:21:35.317958251 +0100
|
||||||
|
+++ libtool-2.4.6.new/build-aux/ltmain.in 2022-02-22 09:16:10.117571787 +0100
|
||||||
|
@@ -501,21 +501,14 @@
|
||||||
|
fi
|
||||||
|
|
||||||
|
# preserve --debug
|
||||||
|
test : = "$debug_cmd" || func_append preserve_args " --debug"
|
||||||
|
|
||||||
|
- case $host in
|
||||||
|
- # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
|
||||||
|
- # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
|
||||||
|
- *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
|
||||||
|
- # don't eliminate duplications in $postdeps and $predeps
|
||||||
|
- opt_duplicate_compiler_generated_deps=:
|
||||||
|
- ;;
|
||||||
|
- *)
|
||||||
|
- opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
|
||||||
|
- ;;
|
||||||
|
- esac
|
||||||
|
+ # Keeping compiler generated duplicates in $postdeps and $predeps is not
|
||||||
|
+ # harmful, and is necessary in a majority of systems that use it to satisfy
|
||||||
|
+ # symbol dependencies.
|
||||||
|
+ opt_duplicate_compiler_generated_deps=:
|
||||||
|
|
||||||
|
$opt_help || {
|
||||||
|
# Sanity checks first:
|
||||||
|
func_check_version_match
|
||||||
|
|
||||||
|
diff -r -U5 libtool-2.4.6/build-aux/ltmain.sh libtool-2.4.6.new/build-aux/ltmain.sh
|
||||||
|
--- libtool-2.4.6/build-aux/ltmain.sh 2015-02-15 17:15:12.000000000 +0100
|
||||||
|
+++ libtool-2.4.6.new/build-aux/ltmain.sh 2022-02-22 09:16:44.783613061 +0100
|
||||||
|
@@ -2413,21 +2413,14 @@
|
||||||
|
fi
|
||||||
|
|
||||||
|
# preserve --debug
|
||||||
|
test : = "$debug_cmd" || func_append preserve_args " --debug"
|
||||||
|
|
||||||
|
- case $host in
|
||||||
|
- # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
|
||||||
|
- # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
|
||||||
|
- *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
|
||||||
|
- # don't eliminate duplications in $postdeps and $predeps
|
||||||
|
- opt_duplicate_compiler_generated_deps=:
|
||||||
|
- ;;
|
||||||
|
- *)
|
||||||
|
- opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
|
||||||
|
- ;;
|
||||||
|
- esac
|
||||||
|
+ # Keeping compiler generated duplicates in $postdeps and $predeps is not
|
||||||
|
+ # harmful, and is necessary in a majority of systems that use it to satisfy
|
||||||
|
+ # symbol dependencies.
|
||||||
|
+ opt_duplicate_compiler_generated_deps=:
|
||||||
|
|
||||||
|
$opt_help || {
|
||||||
|
# Sanity checks first:
|
||||||
|
func_check_version_match
|
||||||
|
|
@ -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
|
|
||||||
|
|
28
libtool-2.4.7-hardening.patch
Normal file
28
libtool-2.4.7-hardening.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 13dfc63..5c5603a 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -311,6 +311,23 @@ libtool: $(ltmain_sh) $(config_status) $(dotversion)
|
||||||
|
|
||||||
|
include libltdl/ltdl.mk
|
||||||
|
|
||||||
|
+libltdl_libltdl_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_libltdl_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+
|
||||||
|
+libltdl_dlopen_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+libltdl_dld_link_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+libltdl_dyld_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+libltdl_load_add_on_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+libltdl_loadlibrary_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+libltdl_shl_load_la_LDFLAGS += $(CUSTOM_LTDL_LDFLAGS)
|
||||||
|
+
|
||||||
|
+libltdl_dlopen_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_dld_link_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_dyld_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_load_add_on_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_loadlibrary_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+libltdl_shl_load_la_CFLAGS = $(CUSTOM_LTDL_CFLAGS)
|
||||||
|
+
|
||||||
|
lt_aclocal_m4 = $(srcdir)/$(ltdl_dir)/aclocal.m4
|
||||||
|
lt_config_h_in = $(srcdir)/$(ltdl_dir)/config-h.in
|
||||||
|
lt_configure = $(srcdir)/$(ltdl_dir)/configure
|
20
libtool-c99.patch
Normal file
20
libtool-c99.patch
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Include <string.h> for the strcmp function. This improves C99
|
||||||
|
compiler compatibility because it avoids an implicit function
|
||||||
|
declaration.
|
||||||
|
|
||||||
|
Submitted upstream:
|
||||||
|
|
||||||
|
<https://lists.gnu.org/archive/html/libtool-patches/2023-01/msg00000.html>
|
||||||
|
|
||||||
|
diff --git a/tests/lt_dlopen_a.at b/tests/lt_dlopen_a.at
|
||||||
|
index 95f18a0df165d41d..d3948738e4199cc6 100644
|
||||||
|
--- a/tests/lt_dlopen_a.at
|
||||||
|
+++ b/tests/lt_dlopen_a.at
|
||||||
|
@@ -27,6 +27,7 @@ AT_KEYWORDS([libltdl lt_dlopen_a])
|
||||||
|
AT_DATA([main.c],
|
||||||
|
[[#include <ltdl.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <string.h>
|
||||||
|
|
||||||
|
/* This dlopen() in the main executable should override any dlopen()s in
|
||||||
|
shared libraries etc.
|
253
libtool.spec
253
libtool.spec
@ -7,11 +7,43 @@
|
|||||||
|
|
||||||
Summary: The GNU Portable Library Tool
|
Summary: The GNU Portable Library Tool
|
||||||
Name: libtool
|
Name: libtool
|
||||||
Version: 2.4.6
|
Version: 2.4.7
|
||||||
Release: 25%{?dist}
|
Release: 13%{?dist}
|
||||||
License: GPLv2+ and LGPLv2+ and GFDL
|
|
||||||
|
# To help future rebase, the following licenses were seen in the following files/folders:
|
||||||
|
# '*' is anything that was not explicitly listed earlier in the folder
|
||||||
|
#
|
||||||
|
# From libtool package:
|
||||||
|
# usr/bin/:
|
||||||
|
# libtool - GPL-2.0-or-later WITH Libtool-exception AND MIT
|
||||||
|
# libtoolize - GPL-2.0-or-later AND MIT
|
||||||
|
# usr/share/:
|
||||||
|
# aclocal/* - FSFULLR
|
||||||
|
# doc/libtool:
|
||||||
|
# AUTHORS - GPL-2.0-or-later
|
||||||
|
# * - FSFAP
|
||||||
|
# info/* - GFDL-1.3-or-later
|
||||||
|
# libtool/build-aux/:
|
||||||
|
# {compile,depcomp,missing} - GPL-2.0-or-later WITH Autoconf-exception-generic
|
||||||
|
# config.{guess,sub} - GPL-3.0-or-later WITH Autoconf-exception-generic-3.0
|
||||||
|
# install-sh - X11 AND LicenseRef-Fedora-public-domain
|
||||||
|
# ltmain.sh - GPL-2.0-or-later WITH Libtool-exception AND MIT
|
||||||
|
# usr/share/man/man1/*: generated from usr/bin/libtool{,ize} using help2man
|
||||||
|
#
|
||||||
|
# From libtool-ltdl package:
|
||||||
|
# usr/lib64/
|
||||||
|
# * - LGPL-2.0-or-later WITH Libtool-exception
|
||||||
|
#
|
||||||
|
# From libtool-ltdl-devel package:
|
||||||
|
# usr/include/* - LGPL-2.0-or-later WITH Libtool-exception
|
||||||
|
# usr/share/:
|
||||||
|
# README - FSFAP
|
||||||
|
# {*.c,*.h,Makefile.am,configure.ac,ltdl.mk} - LGPL-2.0-or-later WITH Libtool-exception
|
||||||
|
# Makefile.in - FSFULLRWD
|
||||||
|
# aclocal.m4 - FSFULLR AND FSFULLRWD
|
||||||
|
# configure - FSFUL
|
||||||
|
License: GPL-2.0-or-later AND GPL-2.0-or-later WITH Autoconf-exception-generic AND GPL-2.0-or-later WITH Libtool-exception AND LGPL-2.0-or-later WITH Libtool-exception AND GPL-3.0-or-later WITH Autoconf-exception-generic-3.0 AND MIT AND FSFAP AND FSFULLR AND FSFULLRWD AND GFDL-1.3-or-later AND X11 AND LicenseRef-Fedora-public-domain
|
||||||
URL: http://www.gnu.org/software/libtool/
|
URL: http://www.gnu.org/software/libtool/
|
||||||
Group: Development/Tools
|
|
||||||
|
|
||||||
Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
|
Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
|
||||||
|
|
||||||
@ -19,30 +51,43 @@ Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz
|
|||||||
# ~> remove possibly once #1158915 gets fixed somehow
|
# ~> remove possibly once #1158915 gets fixed somehow
|
||||||
Patch0: libtool-2.4.5-rpath.patch
|
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
|
# 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.
|
# 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.
|
# At the same time we want to have libltdl.so hardened. Downstream-only patch.
|
||||||
%undefine _hardened_build
|
%undefine _hardened_build
|
||||||
Patch3: libtool-2.4.6-hardening.patch
|
Patch1: libtool-2.4.7-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)
|
||||||
|
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
|
||||||
|
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
|
||||||
|
Patch4: libtool-2.4.6-keep-compiler-deps.patch
|
||||||
|
|
||||||
|
# Patch sent upstream
|
||||||
|
# https://lists.gnu.org/archive/html/libtool-patches/2022-12/msg00004.html
|
||||||
|
Patch5: 0001-tests-Fix-grep-warning-about-stray-before.patch
|
||||||
|
|
||||||
%if ! 0%{?_module_build}
|
%if ! 0%{?_module_build}
|
||||||
Patch100: libtool-nodocs.patch
|
Patch100: libtool-nodocs.patch
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
Patch101: libtool-c99.patch
|
||||||
|
|
||||||
# /usr/bin/libtool includes paths within gcc's versioned directories
|
# /usr/bin/libtool includes paths within gcc's versioned directories
|
||||||
# Libtool must be rebuilt whenever a new upstream gcc is built
|
# Libtool must be rebuilt whenever a new upstream gcc is built
|
||||||
# Starting with gcc 7 gcc in Fedora is packaged so that only major
|
# Starting with gcc 7 gcc in Fedora is packaged so that only major
|
||||||
# number changes need libtool rebuilding.
|
# number changes need libtool rebuilding.
|
||||||
Requires: gcc(major) = %{gcc_major}
|
Requires: gcc(major) = %{gcc_major}
|
||||||
Requires: autoconf, automake, sed, tar, findutils
|
Requires: autoconf, automake, sed, tar, findutils
|
||||||
Requires(post): /sbin/install-info
|
|
||||||
Requires(preun): /sbin/install-info
|
|
||||||
|
|
||||||
%if ! 0%{?_module_build}
|
%if ! 0%{?_module_build}
|
||||||
BuildRequires: texinfo
|
BuildRequires: texinfo
|
||||||
@ -53,6 +98,9 @@ BuildRequires: help2man
|
|||||||
# make sure we can configure all supported langs
|
# make sure we can configure all supported langs
|
||||||
BuildRequires: libstdc++-devel, gcc-gfortran
|
BuildRequires: libstdc++-devel, gcc-gfortran
|
||||||
|
|
||||||
|
BuildRequires: gcc, gcc-c++
|
||||||
|
BuildRequires: make
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
GNU Libtool is a set of shell scripts which automatically configure UNIX and
|
GNU Libtool is a set of shell scripts which automatically configure UNIX and
|
||||||
@ -72,11 +120,8 @@ and GNU Automake).
|
|||||||
|
|
||||||
%package ltdl
|
%package ltdl
|
||||||
Summary: Runtime libraries for GNU Libtool Dynamic Module Loader
|
Summary: Runtime libraries for GNU Libtool Dynamic Module Loader
|
||||||
Group: System Environment/Libraries
|
|
||||||
Provides: %{name}-libs = %{version}-%{release}
|
Provides: %{name}-libs = %{version}-%{release}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
Requires(post): /sbin/ldconfig
|
|
||||||
Requires(postun): /sbin/ldconfig
|
|
||||||
|
|
||||||
|
|
||||||
%description ltdl
|
%description ltdl
|
||||||
@ -91,7 +136,6 @@ the rest of the GNU Autotools (including GNU Autoconf and GNU Automake).
|
|||||||
|
|
||||||
%package ltdl-devel
|
%package ltdl-devel
|
||||||
Summary: Tools needed for development using the GNU Libtool Dynamic Module Loader
|
Summary: Tools needed for development using the GNU Libtool Dynamic Module Loader
|
||||||
Group: Development/Libraries
|
|
||||||
Requires: automake = %automake_version
|
Requires: automake = %automake_version
|
||||||
Requires: %{name}-ltdl = %{version}-%{release}
|
Requires: %{name}-ltdl = %{version}-%{release}
|
||||||
License: LGPLv2+
|
License: LGPLv2+
|
||||||
@ -102,49 +146,27 @@ Static libraries and header files for development with ltdl.
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -n libtool-%{version} -q
|
%autosetup -n libtool-%{version} -p1
|
||||||
%patch0 -p1 -b .rpath
|
|
||||||
%patch1 -p1 -b .test
|
|
||||||
%patch2 -p1 -b .gcc-specs
|
|
||||||
%patch3 -p1 -b .ltdl-hardening
|
|
||||||
%if ! 0%{?_module_build}
|
|
||||||
%patch100 -p1 -b .nodocs
|
|
||||||
%endif
|
|
||||||
|
|
||||||
autoreconf -v
|
autoreconf -v
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export CC=gcc
|
|
||||||
export CXX=g++
|
|
||||||
export F77=gfortran
|
|
||||||
export CFLAGS="$RPM_OPT_FLAGS -fPIC"
|
|
||||||
|
|
||||||
%configure --prefix=%{_prefix} \
|
%configure
|
||||||
--exec-prefix=%{_prefix} \
|
|
||||||
--bindir=%{_bindir} \
|
|
||||||
--sbindir=%{_sbindir} \
|
|
||||||
--sysconfdir=%{_sysconfdir} \
|
|
||||||
--datadir=%{_datadir} \
|
|
||||||
--includedir=%{_includedir} \
|
|
||||||
--libdir=%{_libdir} \
|
|
||||||
--libexecdir=%{_libexecdir} \
|
|
||||||
--localstatedir=%{_localstatedir} \
|
|
||||||
--mandir=%{_mandir} \
|
|
||||||
--infodir=%{_infodir}
|
|
||||||
|
|
||||||
make %{?_smp_mflags} \
|
%make_build \
|
||||||
CUSTOM_LTDL_CFLAGS="%_hardening_cflags" \
|
CUSTOM_LTDL_CFLAGS="%_hardening_cflags" \
|
||||||
CUSTOM_LTDL_LDFLAGS="%_hardening_ldflags"
|
CUSTOM_LTDL_LDFLAGS="%_hardening_ldflags"
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%if %{with check}
|
%if %{with check}
|
||||||
make check VERBOSE=yes || { cat testsuite.log ; false ; }
|
make check VERBOSE=yes || { cat tests/testsuite.dir/*/testsuite.log ; false ; }
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
make install DESTDIR=%{buildroot}
|
%make_install
|
||||||
# info's TOP dir (by default owned by info)
|
# info's TOP dir (by default owned by info)
|
||||||
rm -f %{buildroot}%{_infodir}/dir
|
rm -f %{buildroot}%{_infodir}/dir
|
||||||
# *.la *.a files generated by libtool shouldn't be distributed (and the
|
# *.la *.a files generated by libtool shouldn't be distributed (and the
|
||||||
@ -152,22 +174,6 @@ rm -f %{buildroot}%{_infodir}/dir
|
|||||||
rm -f %{buildroot}%{_libdir}/libltdl.{a,la}
|
rm -f %{buildroot}%{_libdir}/libltdl.{a,la}
|
||||||
|
|
||||||
|
|
||||||
%post
|
|
||||||
/sbin/install-info %{_infodir}/libtool.info.gz %{_infodir}/dir || :
|
|
||||||
|
|
||||||
|
|
||||||
%post ltdl -p /sbin/ldconfig
|
|
||||||
|
|
||||||
|
|
||||||
%preun
|
|
||||||
if [ "$1" = 0 ]; then
|
|
||||||
/sbin/install-info --delete %{_infodir}/libtool.info.gz %{_infodir}/dir || :
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
%postun ltdl -p /sbin/ldconfig
|
|
||||||
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%doc AUTHORS NEWS README THANKS TODO ChangeLog*
|
%doc AUTHORS NEWS README THANKS TODO ChangeLog*
|
||||||
@ -198,8 +204,131 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri May 18 2018 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-25
|
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 2.4.7-13
|
||||||
- bump for automake 1.16
|
- Bump release for October 2024 mass rebuild:
|
||||||
|
Resolves: RHEL-64018
|
||||||
|
|
||||||
|
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 2.4.7-12
|
||||||
|
- Bump release for June 2024 mass rebuild
|
||||||
|
|
||||||
|
* Fri May 31 2024 Frédéric Bérat <fberat@redhat.com> - 2.4.7-11
|
||||||
|
- Rework hardening patch to include loaders. (RHEL-33501)
|
||||||
|
|
||||||
|
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-10
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 15 2024 Jakub Jelinek <jakub@redhat.com> - 2.4.7-9
|
||||||
|
- bump: for gcc 14.* in rawhide
|
||||||
|
|
||||||
|
* Tue Aug 08 2023 Frederic Berat <fberat@redhat.com> - 2.4.7-8
|
||||||
|
- Migrate to SPDX licenses (#2222091).
|
||||||
|
|
||||||
|
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-7
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-6
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 16 2023 Jakub Jelinek <jakub@redhat.com> - 2.4.7-5
|
||||||
|
- bump: for gcc 13.* in rawhide
|
||||||
|
|
||||||
|
* Tue Jan 10 2023 Florian Weimer <fweimer@redhat.com> - 2.4.7-4
|
||||||
|
- C99 compatibility fix in the testsuite
|
||||||
|
|
||||||
|
* Wed Dec 21 2022 Frederic Berat <fberat@redhat.com> - 2.4.7-3
|
||||||
|
- Fix test failure due to grep update
|
||||||
|
|
||||||
|
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.7-2
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||||
|
|
||||||
|
* 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.
|
||||||
|
|
||||||
|
* Sun Feb 13 2022 Jeff Law <jeffreyalaw@gmail.com> - 2.4.6-49
|
||||||
|
- Re-enable LTO (completing change from Nov 29, 2021)
|
||||||
|
|
||||||
|
* Tue Feb 01 2022 Frederic Berat <fberat@redhat.com> - 2.4.6-48
|
||||||
|
- Add support for "-fsanitize", rhbz#2024647
|
||||||
|
- Add support for "-fuse-ld", rhbz#2024647
|
||||||
|
- Use make macros (based on Tom Stellard work for f33 and Timm Bäder)
|
||||||
|
https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
|
||||||
|
- Disable non-PIC test for ARM as this is not supported on this arch
|
||||||
|
- Use autosetup
|
||||||
|
- Use plain %%configure
|
||||||
|
|
||||||
|
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-47
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 10 2022 Jakub Jelinek <jakub@redhat.com> - 2.4.6-46
|
||||||
|
- bump: for gcc 12.* in rawhide
|
||||||
|
|
||||||
|
* Mon Nov 29 2021 Marek Kulik <mkulik@redhat.com> - 2.4.6-45
|
||||||
|
- Enable LTO build
|
||||||
|
- Add disable-lto-link-order2.patch to pass tests
|
||||||
|
|
||||||
|
* Mon Oct 04 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-44
|
||||||
|
- rebuild with automake-1.16.5
|
||||||
|
|
||||||
|
* Mon Aug 30 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-43
|
||||||
|
- rebuild with automake-1.16.4
|
||||||
|
|
||||||
|
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-42
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
* Thu Mar 25 2021 Ondrej Dubaj <odubaj@redhat.com> - 2.4.6-41
|
||||||
|
- rebuild with automake-1.16.3
|
||||||
|
|
||||||
|
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-40
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Dec 07 2020 Jakub Jelinek <jakub@redhat.com> - 2.4.6-39
|
||||||
|
- bump: for gcc 11.* in eln
|
||||||
|
|
||||||
|
* Sun Dec 06 2020 Jakub Jelinek <jakub@redhat.com> - 2.4.6-38
|
||||||
|
- bump: for gcc 11.* in rawhide
|
||||||
|
|
||||||
|
* Wed Oct 21 2020 Jakub Jelinek <jakub@redhat.com> - 2.4.6-37
|
||||||
|
- bump: for gcc 11.* in eln
|
||||||
|
|
||||||
|
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-36
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||||
|
|
||||||
|
* Tue Apr 21 2020 Jeff Law <law@redhat.com> - 2.4.6-35
|
||||||
|
- Disable LTO
|
||||||
|
|
||||||
|
* Tue Apr 21 2020 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-34
|
||||||
|
- bump for new automake, rhbz#1815814
|
||||||
|
|
||||||
|
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-33
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 20 2020 Jakub Jelinek <jakub@redhat.com> - 2.4.6-32
|
||||||
|
- bump: for gcc 10.*
|
||||||
|
|
||||||
|
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-31
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||||
|
|
||||||
|
* Wed Apr 24 2019 Björn Esser <besser82@fedoraproject.org> - 2.4.6-30
|
||||||
|
- Remove hardcoded gzip suffix from GNU info pages
|
||||||
|
|
||||||
|
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-29
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
|
* Mon Jan 21 2019 Björn Esser <besser82@fedoraproject.org> - 2.4.6-28
|
||||||
|
- bump: for gcc 9.*
|
||||||
|
|
||||||
|
* Tue Aug 28 2018 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-27
|
||||||
|
- BR gcc, gcc-c++ (rhbz#1623078)
|
||||||
|
|
||||||
|
* Tue Aug 28 2018 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-26
|
||||||
|
- cleanup post/postun, there are RPM triggers nowadays
|
||||||
|
- fix error: line 2642: func__fatal_error: command not found (rhbz#1622611)
|
||||||
|
|
||||||
|
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.4.6-25
|
||||||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
||||||
* Fri Apr 20 2018 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-24
|
* Fri Apr 20 2018 Pavel Raiskup <praiskup@redhat.com> - 2.4.6-24
|
||||||
- harden libltdl.so (rhbz#1548751)
|
- harden libltdl.so (rhbz#1548751)
|
||||||
|
2
sources
2
sources
@ -1 +1 @@
|
|||||||
SHA512 (libtool-2.4.6.tar.xz) = a6eef35f3cbccf2c9e2667f44a476ebc80ab888725eb768e91a3a6c33b8c931afc46eb23efaee76c8696d3e4eed74ab1c71157bcb924f38ee912c8a90a6521a4
|
SHA512 (libtool-2.4.7.tar.xz) = 47f4c6de40927254ff9ba452612c0702aea6f4edc7e797f0966c8c6bf0340d533598976cdba17f0bdc64545572e71cd319bbb587aa5f47cd2e7c1d96f873a3da
|
||||||
|
Loading…
Reference in New Issue
Block a user