--- a/ltmain.sh 2010-06-09 15:08:53.000000000 +0200 +++ b/ltmain.sh 2014-07-30 22:33:41.176710372 +0200 @@ -1214,8 +1214,8 @@ # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then - func_echo "unable to infer tagged configuration" - func_fatal_error "specify a tag with \`--tag'" + func_echo "defaulting to \`CC'" + func_echo "if this is not correct, specify a tag with \`--tag'" # else # func_verbose "using $tagname tagged configuration" fi @@ -2239,8 +2239,11 @@ # At present, this check doesn't affect windows .dll's that # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. - test "$inst_prefix_dir" = "$destdir" && \ - func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + # + # This breaks install into our staging area. -PB + # + # test "$inst_prefix_dir" = "$destdir" && \ + # func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. @@ -4429,7 +4432,8 @@ ;; -all-static | -static | -static-libtool-libs) case $arg in - -all-static) + # Make -static behave like -all-static + -all-static | -static) if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi @@ -4438,12 +4442,6 @@ fi prefer_static_libs=yes ;; - -static) - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=built - ;; -static-libtool-libs) if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static @@ -4726,7 +4724,8 @@ prevarg="$arg" case $arg in - -all-static) + # Make -static behave like -all-static + -all-static | -static) if test -n "$link_static_flag"; then # See comment for -static flag below, for more details. func_append compile_command " $link_static_flag" @@ -4995,7 +4994,7 @@ continue ;; - -static | -static-libtool-libs) + -static-libtool-libs) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects @@ -5739,8 +5738,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 @@ -5891,7 +5896,7 @@ *) if test "$installed" = no; then notinst_deplibs="$notinst_deplibs $lib" - need_relink=yes + need_relink=no fi ;; esac @@ -8373,6 +8378,10 @@ # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do + # Replacing uninstalled with installed can easily break crosscompilation, + # since the installed path is generally the wrong architecture. -CL + newdependency_libs="$newdependency_libs $deplib" + continue case $deplib in *.la) func_basename "$deplib"