From 633e0ff5e3d7a3bd7ca874a3f399e8670553e4cd Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 11 Feb 2010 09:51:23 +0000 Subject: binutils: Apply cross compiling changes to libtool since we don't autoreconf Signed-off-by: Richard Purdie --- meta/packages/binutils/binutils-2.19/libtool.patch | 69 ++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 meta/packages/binutils/binutils-2.19/libtool.patch (limited to 'meta/packages/binutils/binutils-2.19/libtool.patch') diff --git a/meta/packages/binutils/binutils-2.19/libtool.patch b/meta/packages/binutils/binutils-2.19/libtool.patch new file mode 100644 index 000000000..81289f300 --- /dev/null +++ b/meta/packages/binutils/binutils-2.19/libtool.patch @@ -0,0 +1,69 @@ +A command like /bin/sh ../../i586-poky-linux-libtool --mode=install /usr/bin/install -c gck-roots-store-standalone.la '/media/data1/builds/poky1/tmp/work/core2-poky-linux/gnome-keyring-2.26.1-r1/image/usr/lib/gnome-keyring/standalone/' fails (e.g. gnome-keyring or pulseaudio) + +This is because libdir has a trailing slash which breaks the comparision. + +RP 2/1/10 + +Index: binutils-2.19/ltmain.sh +=================================================================== +--- binutils-2.19.orig/ltmain.sh 2007-05-25 20:56:24.000000000 +0100 ++++ binutils-2.19/ltmain.sh 2010-02-10 22:49:07.191629027 +0000 +@@ -2320,8 +2320,12 @@ + dir="$dir$objdir" + + if test -n "$relink_command"; then ++ # Strip any trailing slash from the destination. ++ func_stripname '' '/' "$libdir" ++ destlibdir=$func_stripname_result ++ + # Determine the prefix the user has applied to our future dir. +- inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$libdir\$%%"` ++ inst_prefix_dir=`$ECHO "X$destdir" | $Xsed -e "s%$destlibdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that +@@ -3958,8 +3962,14 @@ + absdir="$abs_ladir" + libdir="$abs_ladir" + else +- dir="$libdir" +- absdir="$libdir" ++ # Adding 'libdir' from the .la file to our library search paths ++ # breaks crosscompilation horribly. We cheat here and don't add ++ # it, instead adding the path where we found the .la. -CL ++ dir="$abs_ladir" ++ absdir="$abs_ladir" ++ libdir="$abs_ladir" ++ #dir="$libdir" ++ #absdir="$libdir" + fi + test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + else +@@ -4329,8 +4339,6 @@ + add="$libdir/$linklib" + fi + else +- # We cannot seem to hardcode it, guess we'll fake it. +- add_dir="-L$libdir" + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in +@@ -4478,7 +4486,17 @@ + fi + ;; + *) +- path="-L$absdir/$objdir" ++ # OE sets installed=no in staging. We need to look in $objdir and $absdir, ++ # preferring $objdir. RP 31/04/2008 ++ if test -f "$absdir/$objdir/$depdepl" ; then ++ depdepl="$absdir/$objdir/$depdepl" ++ path="-L$absdir/$objdir" ++ elif test -f "$absdir/$depdepl" ; then ++ depdepl="$absdir/$depdepl" ++ path="-L$absdir" ++ else ++ path="-L$absdir/$objdir" ++ fi + ;; + esac + else -- cgit v1.2.3