From 67ffe8e8582a7ba1f1d1307a419098e6dd88bdaf Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Tue, 20 Jul 2021 16:41:11 -0300 Subject: openwrt: cross-compilation path adjustments Comments from the patch: 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 OE sets installed=no in staging. We need to look in $objdir and $absdir, preferring $objdir. RP 31/04/2008 This was originally commited to openwrt by Jo-Philipp Wich . (adjusted to v2.4.6) Signed-off-by: Eneas U de Queiroz --- a/build-aux/ltmain.in +++ b/build-aux/ltmain.in @@ -6049,8 +6049,14 @@ func_mode_link () 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=$lt_sysroot$libdir + #absdir=$lt_sysroot$libdir fi test yes = "$hardcode_automatic" && avoidtemprpath=yes else @@ -6448,8 +6454,6 @@ func_mode_link () 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 @@ -6604,7 +6608,17 @@ func_mode_link () 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