summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-06-08 21:52:05 +0000
committerMike Frysinger <vapier@gentoo.org>2010-06-08 21:52:05 +0000
commite9c94396a7bb9147e33882676f55a3cfacdd8f87 (patch)
tree222438393c0784daf111caf530a9aa84183e2d3c /sys-devel/libtool/files
parentmask so people know this isnt directly supported anymore (diff)
downloadgentoo-2-e9c94396a7bb9147e33882676f55a3cfacdd8f87.tar.gz
gentoo-2-e9c94396a7bb9147e33882676f55a3cfacdd8f87.tar.bz2
gentoo-2-e9c94396a7bb9147e33882676f55a3cfacdd8f87.zip
Add patch from upstream for as-needed test failures #321551 by Xake. Transition the SLOT (and EAPI) so we can install libtool-1.5.x libltdl ABI in parallel. Require newer binutils to avoid old as-needed test failures. Drop help2man cruft now that the upstream tarball includes the man pages.
(Portage version: 2.2_rc67/cvs/Linux x86_64)
Diffstat (limited to 'sys-devel/libtool/files')
-rw-r--r--sys-devel/libtool/files/libtool-2.2.8-versioning-as-needed-test.patch89
1 files changed, 89 insertions, 0 deletions
diff --git a/sys-devel/libtool/files/libtool-2.2.8-versioning-as-needed-test.patch b/sys-devel/libtool/files/libtool-2.2.8-versioning-as-needed-test.patch
new file mode 100644
index 000000000000..cecaf1364986
--- /dev/null
+++ b/sys-devel/libtool/files/libtool-2.2.8-versioning-as-needed-test.patch
@@ -0,0 +1,89 @@
+https://bugs.gentoo.org/321551
+
+From 9a801684f6e1a665dc7126091662b34d042adf68 Mon Sep 17 00:00:00 2001
+From: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+Date: Mon, 7 Jun 2010 22:30:44 +0200
+Subject: [PATCH 1/2] Fix versioning test for LDFLAGS=-Wl,--as-needed.
+
+* tests/versioning.at (versioning): For the library update
+hypotheses, ensure the unchanged library libb isn't accidentally
+relinked against the new liba, by not reinstalling libb.
+Fixes testsuite failure for the incompatible update case with
+LDFLAGS=-Wl,--as-needed.
+* THANKS: Update.
+Report by Ryan Hill.
+
+Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+---
+ tests/versioning.at | 19 +++++++++----------
+ 1 files changed, 9 insertions(+), 10 deletions(-)
+
+diff --git a/tests/versioning.at b/tests/versioning.at
+index 136a549..31f294e 100644
+--- a/tests/versioning.at
++++ b/tests/versioning.at
+@@ -1,6 +1,6 @@
+ # versioning.at -- test libtool versioning -*- Autotest -*-
+ #
+-# Copyright (C) 2009 Free Software Foundation, Inc.
++# Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+ #
+ # This file is part of GNU Libtool.
+ #
+@@ -190,18 +190,17 @@ AT_CHECK([$LIBTOOL --mode=uninstall rm -f $libdir/liba.la], [], [ignore], [ignor
+
+
+ # Hypothesis: library revision updates do not require (uninstalled
+-# nor installed) programs to be relinked.
++# nor installed) programs or libraries to be relinked.
+ AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la liba2.lo ]dnl
+ [-version-info 0:1:0 -rpath $libdir], [], [ignore], [ignore])
+ test_uninstalled
+-AT_CHECK([$LIBTOOL --mode=install cp liba.la libb.la $libdir],
+- [], [ignore], [ignore])
++AT_CHECK([$LIBTOOL --mode=install cp liba.la $libdir], [], [ignore], [ignore])
+ AT_CHECK([$LIBTOOL --mode=clean rm -f liba.la], [], [ignore], [ignore])
+ test_installed
+ # do not uninstall here: the library may be reused in the next test.
+
+ # Hypothesis: backward compatible library updates do not require
+-# (uninstalled nor installed) programs to be relinked.
++# (uninstalled nor installed) programs or libraries to be relinked.
+ # This can have one of several reasons:
+ # - the soname is the difference between $current and $age, thus
+ # unchanged; in this case, the newly installed library will be used,
+@@ -212,26 +211,26 @@ test_installed
+ AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la liba3.lo ]dnl
+ [-version-info 1:0:1 -rpath $libdir], [], [ignore], [ignore])
+ # Do not test the uninstalled program, it may be broken (in the second case).
+-AT_CHECK([$LIBTOOL --mode=install cp liba.la libb.la $libdir],
+- [], [ignore], [ignore])
++AT_CHECK([$LIBTOOL --mode=install cp liba.la $libdir], [], [ignore], [ignore])
+ AT_CHECK([$LIBTOOL --mode=clean rm -f liba.la], [], [ignore], [ignore])
+ test_installed
+ # do not uninstall here: the library may be reused in the next test.
+
+
+ # Hypothesis: with shared libraries, incompatible library updates
+-# will not cause old installed programs (linked against the old
++# will not cause old installed programs or libraries (linked against the old
+ # library version) to break.
+ # This can have one of several reasons:
+ # - the soname has changed, so the old installed library will still be
+ # available,
+ # - we are linking statically, so the old library code will still be used.
++# In order to be sure we are still linking against the old library version,
++# we must ensure that libb is not relinked, so we must not reinstall libb here.
+ AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o liba.la liba4.lo ]dnl
+ [-version-info 2:0:0 -rpath $libdir], [], [ignore], [ignore])
+ # We do not guarantee that old versions of an uninstalled library are still
+ # available, so test_uninstalled will not necessarily work here any more.
+-AT_CHECK([$LIBTOOL --mode=install cp liba.la libb.la $libdir],
+- [], [ignore], [ignore])
++AT_CHECK([$LIBTOOL --mode=install cp liba.la $libdir], [], [ignore], [ignore])
+ AT_CHECK([$LIBTOOL --mode=clean rm -f liba.la], [], [ignore], [ignore])
+ test_installed
+
+--
+1.7.1
+