From 1945f9971137e1c88aacca85e6168378ea8ed24f Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Thu, 15 Jan 2015 11:13:00 +0100 Subject: libtool: revert to 2.4.2 This reverts commit 814b78bc804c033e5f1cf9475de39636af2275a1. This reverts commit 6f9ef243b6dfe3a7572718c1c0b7922c27f721c7. This reverts commit f6d9cfe433010677e31bdcd86a15abc3b962e7f0. This is safe without epoch bumping because I did not build libtool in f22 yet. Related: #1159497 Version: 2.4.2-31 --- .gitignore | 4 +- libtool-1.5.22-anygcc.patch | 44 +++++++++++++++++ libtool-2.2.10-rpath.patch | 19 ++++++++ libtool-2.2.6-echo.patch | 12 +++++ libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch | 13 +++++ libtool-2.4.2-powerpcle-linux.patch | 37 ++++++++++++++ libtool-2.4.2-tar-no-owner.patch | 30 ++++++++++++ libtool-2.4.3-rpath.patch | 31 ------------ ...ol-2.4.4-race-in-aclocal-autoheader-calls.patch | 33 ------------- libtool.spec | 57 ++++++++++++---------- sources | 2 +- 11 files changed, 191 insertions(+), 91 deletions(-) create mode 100644 libtool-1.5.22-anygcc.patch create mode 100644 libtool-2.2.10-rpath.patch create mode 100644 libtool-2.2.6-echo.patch create mode 100644 libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch create mode 100644 libtool-2.4.2-powerpcle-linux.patch create mode 100644 libtool-2.4.2-tar-no-owner.patch delete mode 100644 libtool-2.4.3-rpath.patch delete mode 100644 libtool-2.4.4-race-in-aclocal-autoheader-calls.patch diff --git a/.gitignore b/.gitignore index b28f873..b431317 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -/libtool-2.4.4.tar.xz +libtool-2.2.10.tar.lzma +/libtool-2.4.tar.xz +/libtool-2.4.2.tar.xz diff --git a/libtool-1.5.22-anygcc.patch b/libtool-1.5.22-anygcc.patch new file mode 100644 index 0000000..c11bf45 --- /dev/null +++ b/libtool-1.5.22-anygcc.patch @@ -0,0 +1,44 @@ +--- libtool-1.5.22/libtool.m4.anygcc 2005-12-18 22:53:17.000000000 +0100 ++++ libtool-1.5.22/libtool.m4 2006-06-29 14:20:18.000000000 +0200 +@@ -4294,6 +4294,9 @@ + # Is the compiler the GNU C compiler? + with_gcc=$_LT_AC_TAGVAR(GCC, $1) + ++gcc_dir=\`gcc -print-file-name=. | $SED 's,/\.$,,'\` ++gcc_ver=\`gcc -dumpversion\` ++ + # An ERE matcher. + EGREP=$lt_EGREP + +@@ -4427,11 +4430,11 @@ + + # Dependencies to place before the objects being linked to create a + # shared library. +-predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1) ++predep_objects=\`echo $lt_[]_LT_AC_TAGVAR(predep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\` + + # Dependencies to place after the objects being linked to create a + # shared library. +-postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1) ++postdep_objects=\`echo $lt_[]_LT_AC_TAGVAR(postdep_objects, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\` + + # Dependencies to place before the objects being linked to create a + # shared library. +@@ -4443,7 +4446,7 @@ + + # The library search path used internally by the compiler when linking + # a shared library. +-compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) ++compiler_lib_search_path=\`echo $lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1) | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\` + + # Method to check whether dependent libraries are shared objects. + deplibs_check_method=$lt_deplibs_check_method +@@ -4523,7 +4526,7 @@ + link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1) + + # Compile-time system search path for libraries +-sys_lib_search_path_spec=$lt_sys_lib_search_path_spec ++sys_lib_search_path_spec=\`echo $lt_sys_lib_search_path_spec | \$SED -e "s@\${gcc_dir}@\\\${gcc_dir}@g;s@\${gcc_ver}@\\\${gcc_ver}@g"\` + + # Run-time system search path for libraries + sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec diff --git a/libtool-2.2.10-rpath.patch b/libtool-2.2.10-rpath.patch new file mode 100644 index 0000000..d0d6d82 --- /dev/null +++ b/libtool-2.2.10-rpath.patch @@ -0,0 +1,19 @@ +diff -urN libtool-2.2.10/libltdl/m4/libtool.m4 libtool-2.2.10_new/libltdl/m4/libtool.m4 +--- libtool-2.2.10/libltdl/m4/libtool.m4 2010-05-20 23:22:02.000000000 +0200 ++++ libtool-2.2.10_new/libltdl/m4/libtool.m4 2010-06-24 11:18:06.000000000 +0200 +@@ -2474,10 +2474,14 @@ + # before this can be enabled. + hardcode_into_libs=yes + ++ # Add ABI-specific directories to the system library path. ++ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" ++ + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on diff --git a/libtool-2.2.6-echo.patch b/libtool-2.2.6-echo.patch new file mode 100644 index 0000000..ef8f1dd --- /dev/null +++ b/libtool-2.2.6-echo.patch @@ -0,0 +1,12 @@ +diff -up libtool-2.2.6/configure.echo libtool-2.2.6/configure +--- libtool-2.2.6/configure.echo 2008-12-03 09:26:03.000000000 -0500 ++++ libtool-2.2.6/configure 2008-12-03 09:26:14.000000000 -0500 +@@ -27606,7 +27606,7 @@ objdir=$objdir + SHELL=$lt_SHELL + + # An echo program that does not interpret backslashes. +-ECHO=$lt_ECHO ++echo=$lt_ECHO + + # Used to examine libraries when file_magic_cmd begins with "file". + MAGIC_CMD=$MAGIC_CMD diff --git a/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch b/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch new file mode 100644 index 0000000..bbce6cd --- /dev/null +++ b/libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch @@ -0,0 +1,13 @@ +diff --git a/tests/convenience.at b/tests/convenience.at +index f076e61..b97b5f3 100644 +--- a/tests/convenience.at ++++ b/tests/convenience.at +@@ -231,6 +231,8 @@ AT_SETUP([Java convenience archives]) + LT_AT_EXEC_TAG([GCJ]) + AT_KEYWORDS([libtool]) + ++AT_CHECK([exit 77]) ++ + cat >foo1.java < conftest.$ac_ext +@@ -1326,7 +1326,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + x86_64-*linux*) + LD="${LD-ld} -m elf_i386" + ;; +- ppc64-*linux*|powerpc64-*linux*) ++ powerpc64le-*linux*) ++ LD="${LD-ld} -m elf32lppclinux" ++ ;; ++ powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) +@@ -1345,7 +1348,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; +- ppc*-*linux*|powerpc*-*linux*) ++ powerpcle-*linux*) ++ LD="${LD-ld} -m elf64lppc" ++ ;; ++ powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) diff --git a/libtool-2.4.2-tar-no-owner.patch b/libtool-2.4.2-tar-no-owner.patch new file mode 100644 index 0000000..e64bb34 --- /dev/null +++ b/libtool-2.4.2-tar-no-owner.patch @@ -0,0 +1,30 @@ +diff --git a/libtoolize.in b/libtoolize.in +index 2bce172..16b764d 100644 +--- a/libtoolize.in ++++ b/libtoolize.in +@@ -69,6 +69,7 @@ + # General help using GNU software: . + + : ${TAR=tar} ++test "$TAR" = "tar" && : ${TAR_NO_OWNER=--no-same-owner} + + PROGRAM=libtoolize + +@@ -1279,7 +1280,7 @@ func_copy_cb () + $RM "$my_destdir/$my_file" + if $opt_copy; then + if { ( cd "$my_srcdir" && $TAR chf - "$my_file" ) 2>/dev/null \ +- | ( umask 0 && cd "$my_destdir" && $TAR xf - ) >/dev/null 2>&1; } \ ++ | ( umask 0 && cd "$my_destdir" && $TAR xf - $TAR_NO_OWNER) >/dev/null 2>&1; } \ + && touch "$my_destdir/$my_file"; then + $opt_quiet || func_echo_once "$my_msg_var" + $opt_quiet || func_echo "copying $my_copy_msg" +@@ -1288,7 +1289,7 @@ func_copy_cb () + else + if test "$my_file" = "aclocal.m4"; then + if { ( cd "$my_srcdir" && $TAR chf - "$my_file" ) 2>/dev/null \ +- | ( umask 0 && cd "$my_destdir" && $TAR xf - ) >/dev/null 2>&1 ; } ++ | ( umask 0 && cd "$my_destdir" && $TAR xf - $TAR_NO_OWNER) >/dev/null 2>&1 ; } + then + $opt_quiet || func_echo_once "$my_msg_var" + $opt_quiet || func_echo "copying $my_copy_msg" diff --git a/libtool-2.4.3-rpath.patch b/libtool-2.4.3-rpath.patch deleted file mode 100644 index 30dd5f9..0000000 --- a/libtool-2.4.3-rpath.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 78f1c485fa9833c2b02f0bb5b1a630ee67251a01 Mon Sep 17 00:00:00 2001 -From: Karsten Hopp -Date: Wed, 29 Oct 2014 13:27:27 +0100 -Subject: [PATCH] remove /lib64 and /usr/lib64 rpath - ---- - m4/libtool.m4 | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/m4/libtool.m4 b/m4/libtool.m4 -index 068f0d8..bb87360 100644 ---- a/m4/libtool.m4 -+++ b/m4/libtool.m4 -@@ -2739,10 +2739,13 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - # before this can be enabled. - hardcode_into_libs=yes - -+ # Add ABI-specific directories to the system library path. -+ sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on --- -1.9.3 - diff --git a/libtool-2.4.4-race-in-aclocal-autoheader-calls.patch b/libtool-2.4.4-race-in-aclocal-autoheader-calls.patch deleted file mode 100644 index 2c658bd..0000000 --- a/libtool-2.4.4-race-in-aclocal-autoheader-calls.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 2ad0598f0d8cd8c8532a2c34ea1b06c71901047d Mon Sep 17 00:00:00 2001 -From: Pavel Raiskup -Date: Mon, 15 Dec 2014 13:42:25 +0100 -Subject: [PATCH] tests: fix race in aclocal/autoheader calls - -Put the sleep 1 after aclocal run, same as autoreconf does. This -guarantees that 'aclocal.m4' will have smaller timestamp than -'config.h.in' and avoids re-running autoheader later on. - -* tests/testsuite.at (LT_AT_ACLOCAL): Sleep sec after aclocal run. ---- - tests/testsuite.at | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/tests/testsuite.at b/tests/testsuite.at -index 76ed722..2a359a3 100644 ---- a/tests/testsuite.at -+++ b/tests/testsuite.at -@@ -123,6 +123,11 @@ AT_DATA([acinclude.m4], - [m4_define([AC_CONFIG_MACRO_DIRS], m4_defn([AC_CONFIG_MACRO_DIR]))]) - ]]) - LT_AT_CHECK([$ACLOCAL $1$macro_dir], [0], [ignore], [ignore]) -+# After the 'aclocal' run sleep 1 second to guarantee that aclocal.m4 is going -+# to have older timestamp than other autotools later-generated files (concretely -+# for libtool case, we speak about config.h.in generated autoheader). -+# Autoreconf does the same (after the first aclocal run). -+sleep 1 - AT_XFAIL_IF([test no = "$ACLOCAL"]) - AT_KEYWORDS([automake]) - ]) --- -1.9.3 - diff --git a/libtool.spec b/libtool.spec index e41057c..7265d42 100644 --- a/libtool.spec +++ b/libtool.spec @@ -1,12 +1,10 @@ # See the bug #429880 %global gcc_version %(gcc -dumpversion || echo "666") -%{!?runselftest:%global runselftest 1} - Summary: The GNU Portable Library Tool Name: libtool -Version: 2.4.4 -Release: 1%{?dist} +Version: 2.4.2 +Release: 31%{?dist} License: GPLv2+ and LGPLv2+ and GFDL URL: http://www.gnu.org/software/libtool/ Group: Development/Tools @@ -14,12 +12,22 @@ Group: Development/Tools Source: http://ftp.gnu.org/gnu/libtool/libtool-%{version}.tar.xz # ~> downstream -# ~> remove possibly once #1158915 gets fixed somehow -Patch0: libtool-2.4.3-rpath.patch +Patch0: libtool-2.2.10-rpath.patch + +# Disable buggy tests for features we don't support. +# ~> downstream +Patch1: libtool-2.4.2-TEMPORARY-disable-gcj-tests.patch -# ~> downstream (proposed) -# ~> http://permalink.gmane.org/gmane.comp.gnu.libtool.patches/11808 -Patch1: libtool-2.4.4-race-in-aclocal-autoheader-calls.patch +# Run the 'tar --no-same-owner -xf' instead of 'tar -xf' +# ~> #740079 +# ~> Downstream - tar is not used in upstream 'master' branch anymore, will be +# fixed in next release. +Patch2: libtool-2.4.2-tar-no-owner.patch + +# powerpc*le-linux support +# ~> upstream +# ~> `git diff c37bc1a3..8a8dfaec m4/libtool.m4` +Patch3: libtool-2.4.2-powerpcle-linux.patch # /usr/bin/libtool includes paths within gcc's versioned directories # Libtool must be rebuilt whenever a new upstream gcc is built @@ -87,9 +95,10 @@ Static libraries and header files for development with ltdl. %prep %setup -n libtool-%{version} -q %patch0 -p1 -b .rpath -%patch1 -p1 -b .racy-testsuite +%patch1 -p1 -b .temp-disable-gcj-test +%patch2 -p1 -b .tar-no-same-owner +%patch3 -p1 -b .ppc-le-support -autoreconf -v %build export CC=gcc @@ -112,11 +121,14 @@ export CFLAGS="$RPM_OPT_FLAGS -fPIC" make %{?_smp_mflags} +for i in ChangeLog.1997 ChangeLog.1998 ChangeLog.1999 ChangeLog.2002; do + iconv -f ISO_8859-15 -t UTF8 $i > $i.tmp + mv -f $i.tmp $i +done + %check -%if 0%{?runselftest} -make check VERBOSE=yes || { cat testsuite.log ; false ; } -%endif +make check VERBOSE=yes %install @@ -145,6 +157,7 @@ fi %files +%defattr(-,root,root) %doc AUTHORS COPYING NEWS README THANKS TODO ChangeLog* %{_infodir}/libtool.info*.gz %{_mandir}/man1/libtool.1* @@ -152,19 +165,20 @@ fi %{_bindir}/libtool %{_bindir}/libtoolize %{_datadir}/aclocal/*.m4 -%dir %{_datadir}/libtool -%{_datadir}/libtool/build-aux +%exclude %{_datadir}/libtool/libltdl +%{_datadir}/libtool %files ltdl +%defattr(-,root,root) %doc libltdl/COPYING.LIB %{_libdir}/libltdl.so.* %files ltdl-devel +%defattr(-,root,root) %doc libltdl/README -%{_datadir}/libtool -%exclude %{_datadir}/libtool/build-aux +%{_datadir}/libtool/libltdl %{_includedir}/ltdl.h %{_includedir}/libltdl # .so files without version must be in -devel subpackage @@ -172,13 +186,6 @@ fi %changelog -* Wed Jan 14 2015 Pavel Raiskup - 2.4.4-1 -- rebase to quick bugfix release 2.4.4 (2.4.5 will follow up) - -* Wed Jan 14 2015 Pavel Raiskup - 2.4.3-1 -- rebase per release notes: - http://lists.gnu.org/archive/html/autotools-announce/2014-10/msg00000.html - * Sun Nov 02 2014 Jakub Jelinek - 2.4.2-31 - rebuilt for gcc 4.9.2 diff --git a/sources b/sources index e68617b..095ac67 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -51bf400de3354687d68dfa2392506b7e libtool-2.4.4.tar.xz +2ec8997e0c07249eb4cbd072417d70fe libtool-2.4.2.tar.xz -- cgit