libtool: disregard libdir from *.la files, prevents libtool from linking into the...
authorJo-Philipp Wich <jow@openwrt.org>
Thu, 9 Dec 2010 11:25:57 +0000 (11:25 +0000)
committerJo-Philipp Wich <jow@openwrt.org>
Thu, 9 Dec 2010 11:25:57 +0000 (11:25 +0000)
SVN-Revision: 24375

package/libtool/patches/100-libdir-fixes.patch [new file with mode: 0644]

diff --git a/package/libtool/patches/100-libdir-fixes.patch b/package/libtool/patches/100-libdir-fixes.patch
new file mode 100644 (file)
index 0000000..fb0254b
--- /dev/null
@@ -0,0 +1,49 @@
+Index: libtool-2.4/libltdl/config/ltmain.m4sh
+===================================================================
+--- libtool-2.4.orig/libltdl/config/ltmain.m4sh        2010-09-22 16:45:18.000000000 +0200
++++ libtool-2.4/libltdl/config/ltmain.m4sh     2010-12-06 22:51:21.961732599 +0100
+@@ -5715,8 +5715,14 @@
+           absdir="$abs_ladir"
+           libdir="$abs_ladir"
+         else
+-          dir="$lt_sysroot$libdir"
+-          absdir="$lt_sysroot$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="$lt_sysroot$abs_ladir"
++          absdir="$abs_ladir"
++          libdir="$abs_ladir"
++          #dir="$libdir"
++          #absdir="$lt_sysroot$libdir"
+         fi
+         test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes
+       else
+@@ -6114,8 +6120,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
+@@ -6270,7 +6274,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