libtool: Upgrade 2.2.2 -> 2.2.4

git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4416 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
Richard Purdie 2008-05-05 14:32:03 +00:00
parent 2fdb008097
commit 2e6d580db9
9 changed files with 7 additions and 199 deletions

View File

@ -1,68 +0,0 @@
From 92e15986a43a8009decffc4d5d290272449487a4 Mon Sep 17 00:00:00 2001
From: Peter O'Gorman <peter@pogma.com>
Date: Thu, 1 May 2008 12:40:24 -0500
Subject: [PATCH] Use AC_CHECK_TOOL for otool and otool64.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
* libltdl/config/ltmain.m4sh (func_mode_link): Use.
Reported by Richard Purdie <rpurdie@rpsys.net>
---
ChangeLog | 7 +++++++
libltdl/config/ltmain.m4sh | 6 ++----
libltdl/m4/libtool.m4 | 6 ++++++
3 files changed, 15 insertions(+), 4 deletions(-)
Index: libtool-2.2.2/ChangeLog
===================================================================
--- libtool-2.2.2.orig/ChangeLog 2008-05-01 21:34:42.000000000 +0100
+++ libtool-2.2.2/ChangeLog 2008-05-01 21:35:47.000000000 +0100
@@ -1,3 +1,10 @@
+2008-05-01 Peter O'Gorman <peter@pogma.com>
+
+ Use AC_CHECK_TOOL for otool and otool64.
+ * libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
+ * libltdl/config/ltmain.m4sh (func_mode_link): Use.
+ Reported by Richard Purdie <rpurdie@rpsys.net>
+
2008-04-01 Gary V. Vaughan <gary@gnu.arg>
GNU Libtool 2.2.2 was released.
Index: libtool-2.2.2/libltdl/config/ltmain.m4sh
===================================================================
--- libtool-2.2.2.orig/libltdl/config/ltmain.m4sh 2008-05-01 21:34:42.000000000 +0100
+++ libtool-2.2.2/libltdl/config/ltmain.m4sh 2008-05-01 21:34:48.000000000 +0100
@@ -4961,11 +4961,9 @@
done
if test -f "$absdir/$objdir/$depdepl" ; then
depdepl="$absdir/$objdir/$depdepl"
- darwin_install_name=`otool -L $depdepl | $SED -n -e '3q;2,2p' | $SED -e 's/(.*//'`
- darwin_install_name=`$ECHO $darwin_install_name`
+ darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
if test -z "$darwin_install_name"; then
- darwin_install_name=`otool64 -L $depdepl | $SED -n -e '3q;2,2p' | $SED -e 's/(.*//'`
- darwin_install_name=`$ECHO $darwin_install_name`
+ darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
fi
compiler_flags="$compiler_flags ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}"
linker_flags="$linker_flags -dylib_file ${darwin_install_name}:${depdepl}"
Index: libtool-2.2.2/libltdl/m4/libtool.m4
===================================================================
--- libtool-2.2.2.orig/libltdl/m4/libtool.m4 2008-05-01 21:34:42.000000000 +0100
+++ libtool-2.2.2/libltdl/m4/libtool.m4 2008-05-01 21:36:48.000000000 +0100
@@ -893,10 +893,16 @@
rhapsody* | darwin*)
AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
+ AC_CHECK_TOOL([OTOOL], [otool], [:])
+ AC_CHECK_TOOL([OTOOL64], [otool64], [:])
_LT_DECL([], [DSYMUTIL], [1],
[Tool to manipulate archived DWARF debug symbol files on Mac OS X])
_LT_DECL([], [NMEDIT], [1],
[Tool to change global to local symbols on Mac OS X])
+ _LT_DECL([], [OTOOL], [1],
+ [ldd/readelf like tool for Mach-O binaries on Mac OS X])
+ _LT_DECL([], [OTOOL64], [1],
+ [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
[lt_cv_apple_cc_single_mod=no

View File

@ -1,129 +0,0 @@
From Ralf.Wildenhues@gmx.de Tue Apr 22 20:44:16 2008
Return-Path: <Ralf.Wildenhues@gmx.de>
X-Spam-Checker-Version: SpamAssassin 3.2.4 (2008-01-01) on tim.rpsys.net
X-Spam-Level:
X-Spam-Status: No, score=-3.0 required=5.0 tests=AWL,BAYES_00 autolearn=ham
version=3.2.4
Received: from localhost (localhost [127.0.0.1]) by tim.rpsys.net
(8.13.6/8.13.8) with ESMTP id m3MJiGXW016935 for <rpurdie@[127.0.0.1]>;
Tue, 22 Apr 2008 20:44:16 +0100
Received: from tim.rpsys.net ([127.0.0.1]) by localhost (tim.rpsys.net
[127.0.0.1]) (amavisd-new, port 10024) with LMTP id 16773-04 for
<rpurdie@[127.0.0.1]>; Tue, 22 Apr 2008 20:44:07 +0100 (BST)
Received: from merkur.ins.uni-bonn.de (merkur.ins.uni-bonn.de
[131.220.223.13]) by tim.rpsys.net (8.13.6/8.13.8) with ESMTP id
m3MJi2sT016913 for <rpurdie@rpsys.net>; Tue, 22 Apr 2008 20:44:02 +0100
Received: from localhost.localdomain (xdsl-87-79-251-12.netcologne.de
[87.79.251.12]) by merkur.ins.uni-bonn.de (Postfix) with ESMTP id
54F1C400002D4; Tue, 22 Apr 2008 21:43:56 +0200 (CEST)
Received: from ralf by localhost.localdomain with local (Exim 4.63)
(envelope-from <Ralf.Wildenhues@gmx.de>) id 1JoOP7-0007yr-Aw; Tue, 22 Apr
2008 21:43:49 +0200
Date: Tue, 22 Apr 2008 21:43:49 +0200
From: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
To: Richard Purdie <rpurdie@rpsys.net>, libtool-patches@gnu.org
Cc: libtool@gnu.org
Subject: Re: libtool 2.2.2, ccache and -all-static
Message-ID: <20080422194348.GE5035@ins.uni-bonn.de>
Mail-Followup-To: Richard Purdie <rpurdie@rpsys.net>,
libtool-patches@gnu.org, libtool@gnu.org
References: <1208860190.5479.8.camel@dax.rpnet.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <1208860190.5479.8.camel@dax.rpnet.com>
Organization: Department of Numerical Simulation, University of Bonn
User-Agent: Mutt/1.5.17+20080114 (2008-01-14)
X-Virus-Scanned: amavisd-new at rpsys.net
X-Evolution-Source: imap://richard@tim.rpsys.net/
Content-Transfer-Encoding: 8bit
Hi Richard,
* Richard Purdie wrote on Tue, Apr 22, 2008 at 12:29:50PM CEST:
>
> I've noticed another problem with two packages in poky, prelink and
> libvorbis. Both packages have areas where LDFLAGS="-all-static" is used.
>
> The problem comes about since Poky sets CC to "ccache gcc", then libtool
> puts the -static flag between ccache and gcc.
Thanks for the bug report, and especially for providing an example to
reproduce it!
> libtool: link: ccache -static gcc -O20 -ffast-math -D_REENTRANT -fsigned-char -DUSE_MEMORY_H -o decoder_example decoder_example.o ../lib/.libs/libvorbis.a -lm /usr/lib/libogg.a
Confirmed. Fixed as below, committed, put you in THANKS.
Cheers,
Ralf
2008-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix regression over 1.5.26 with ccache $CC -all-static.
* libltdl/config/ltmain.m4sh (func_mode_link): Add
$link_static_flag to compile_command and link_command only
later, instead of right after a possible compiler wrapper.
* tests/static.at (ccache -all-static): New test.
* THANKS: Update.
Report by Richard Purdie.
diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh
index ff1e50d..ac334dc 100644
--- a/libltdl/config/ltmain.m4sh
+++ b/libltdl/config/ltmain.m4sh
@@ -3160,9 +3160,6 @@ func_mode_link ()
fi
if test -n "$link_static_flag"; then
dlopen_self=$dlopen_self_static
- # See comment for -static flag below, for more details.
- func_append compile_command " $link_static_flag"
- func_append finalize_command " $link_static_flag"
fi
prefer_static_libs=yes
;;
@@ -3450,7 +3447,11 @@ func_mode_link ()
case $arg in
-all-static)
- # The effects of -all-static are defined in a previous loop.
+ if test -n "$link_static_flag"; then
+ # See comment for -static flag below, for more details.
+ func_append compile_command " $link_static_flag"
+ func_append finalize_command " $link_static_flag"
+ fi
continue
;;
diff --git a/tests/static.at b/tests/static.at
index 74b1c63..1a51d0d 100644
--- a/tests/static.at
+++ b/tests/static.at
@@ -352,3 +352,26 @@ for withdep in no yes; do
done
AT_CLEANUP
+
+
+AT_SETUP([ccache -all-static])
+
+AT_DATA([ccache],
+[[#! /bin/sh
+# poor man's ccache clone
+case $1 in
+-*) echo "bogus argument: $1" >&2; exit 1 ;;
+esac
+exec "$@"
+]])
+chmod +x ./ccache
+
+AT_DATA([a.c],
+[[int main(void) { return 0; }
+]])
+
+AT_CHECK([$CC $CPPFLAGS $CFLAGS -c a.c], [], [ignore])
+AT_CHECK([$LIBTOOL --mode=link --tag=CC ./ccache $CC $CFLAGS $LDFLAGS -all-static a.$OBJEXT -o a],
+ [], [ignore])
+
+AT_CLEANUP

View File

@ -10,6 +10,13 @@ S = "${WORKDIR}/libtool-${PV}"
inherit native
do_configure_prepend () {
# Remove any existing libtool m4 since old stale versions would break
# any upgrade
rm -f ${STAGING_DATADIR}/aclocal/libtool.m4
rm -f ${STAGING_DATADIR}/aclocal/lt*.m4
}
do_stage () {
install -m 0755 ${HOST_SYS}-libtool ${STAGING_BINDIR}/${HOST_SYS}-libtool
install -m 0755 libtoolize ${STAGING_BINDIR}/libtoolize

View File

@ -3,8 +3,6 @@ require libtool.inc
PR = "r10"
SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
file://fix_static.patch;patch=1;status=merged \
file://Use-AC_CHECK_TOOL-for-otool-and-otool64.patch;patch=1;status=merged \
file://dolt.m4"
S = "${WORKDIR}/libtool-${PV}"