From: Thomas Petazzoni Date: Wed, 31 Aug 2011 21:35:03 +0000 (+0200) Subject: support: move libtool patches in support/libtool X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=20f8a7dec6fc25f6c475163c0273147580128867;p=buildroot.git support: move libtool patches in support/libtool Signed-off-by: Thomas Petazzoni Signed-off-by: Peter Korsgaard --- diff --git a/package/Makefile.autotools.in b/package/Makefile.autotools.in index 7f04c3692b..90c8924418 100644 --- a/package/Makefile.autotools.in +++ b/package/Makefile.autotools.in @@ -152,11 +152,11 @@ define LIBTOOL_PATCH_HOOK ltmain_version=`sed -n '/^[ ]*VERSION=/{s/^[ ]*VERSION=//;p;q;}' $$$$i | \ sed -e 's/\([0-9].[0-9]*\).*/\1/' -e 's/\"//'`; \ if test $$$${ltmain_version} = '1.5'; then \ - toolchain/patch-kernel.sh $$$${i%/*} package buildroot-libtool-v1.5.patch; \ + toolchain/patch-kernel.sh $$$${i%/*} support/libtool buildroot-libtool-v1.5.patch; \ elif test $$$${ltmain_version} = "2.2"; then\ - toolchain/patch-kernel.sh $$$${i%/*} package buildroot-libtool-v2.2.patch; \ + toolchain/patch-kernel.sh $$$${i%/*} support/libtool buildroot-libtool-v2.2.patch; \ elif test $$$${ltmain_version} = "2.4"; then\ - toolchain/patch-kernel.sh $$$${i%/*} package buildroot-libtool-v2.4.patch; \ + toolchain/patch-kernel.sh $$$${i%/*} support/libtool buildroot-libtool-v2.4.patch; \ fi \ done \ fi diff --git a/package/buildroot-libtool-v1.5.patch b/package/buildroot-libtool-v1.5.patch deleted file mode 100644 index 57a7c58e3b..0000000000 --- a/package/buildroot-libtool-v1.5.patch +++ /dev/null @@ -1,69 +0,0 @@ ---- a/ltmain.sh 2006-03-11 13:49:04.000000000 -0500 -+++ b/ltmain.sh 2008-04-30 09:55:28.000000000 -0400 -@@ -273,8 +273,9 @@ func_infer_tag () - # line option must be used. - if test -z "$tagname"; then - $echo "$modename: unable to infer tagged configuration" -- $echo "$modename: specify a tag with \`--tag'" 1>&2 -- exit $EXIT_FAILURE -+ $echo "$modename: defaulting to \`CC'" -+ $echo "$modename: if this is not correct, specify a tag with \`--tag'" -+# exit $EXIT_FAILURE - # else - # $echo "$modename: using $tagname tagged configuration" - fi -@@ -2407,8 +2408,14 @@ EOF - 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 -@@ -2545,7 +2552,7 @@ EOF - { test "$use_static_libs" = no || test -z "$old_library"; }; then - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" -- need_relink=yes -+ need_relink=no - fi - # This is a shared library - -@@ -5606,6 +5623,10 @@ fi\ - # 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) - name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` -@@ -5927,10 +5948,13 @@ relink_command=\"$relink_command\"" - # 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. -- if test "$inst_prefix_dir" = "$destdir"; then -- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 -- exit $EXIT_FAILURE -- fi -+ # -+ # This breaks install into our staging area. -PB -+ # -+ # if test "$inst_prefix_dir" = "$destdir"; then -+ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 -+ # exit $EXIT_FAILURE -+ # fi - - if test -n "$inst_prefix_dir"; then - # Stick the inst_prefix_dir data into the link command. diff --git a/package/buildroot-libtool-v2.2.patch b/package/buildroot-libtool-v2.2.patch deleted file mode 100644 index 0df00ae54a..0000000000 --- a/package/buildroot-libtool-v2.2.patch +++ /dev/null @@ -1,64 +0,0 @@ ---- a/ltmain.sh 2009-11-16 06:23:18.000000000 -0700 -+++ b/ltmain.sh 2010-09-18 20:25:06.000000000 -0700 -@@ -1048,8 +1048,8 @@ func_infer_tag () - # 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 -@@ -2018,8 +2018,11 @@ func_mode_install () - # 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. -@@ -5412,8 +5415,14 @@ func_mode_link () - 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 -@@ -5564,7 +5573,7 @@ func_mode_link () - *) - if test "$installed" = no; then - notinst_deplibs="$notinst_deplibs $lib" -- need_relink=yes -+ need_relink=no - fi - ;; - esac -@@ -8052,6 +8061,10 @@ EOF - # 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" diff --git a/package/buildroot-libtool-v2.4.patch b/package/buildroot-libtool-v2.4.patch deleted file mode 100644 index d82d610624..0000000000 --- a/package/buildroot-libtool-v2.4.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -1416,8 +1416,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 -@@ -2962,8 +2962,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. -@@ -6683,7 +6686,7 @@ - *) - if test "$installed" = no; then - func_append notinst_deplibs " $lib" -- need_relink=yes -+ need_relink=no - fi - ;; - esac -@@ -9257,6 +9260,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" diff --git a/support/libtool/buildroot-libtool-v1.5.patch b/support/libtool/buildroot-libtool-v1.5.patch new file mode 100644 index 0000000000..57a7c58e3b --- /dev/null +++ b/support/libtool/buildroot-libtool-v1.5.patch @@ -0,0 +1,69 @@ +--- a/ltmain.sh 2006-03-11 13:49:04.000000000 -0500 ++++ b/ltmain.sh 2008-04-30 09:55:28.000000000 -0400 +@@ -273,8 +273,9 @@ func_infer_tag () + # line option must be used. + if test -z "$tagname"; then + $echo "$modename: unable to infer tagged configuration" +- $echo "$modename: specify a tag with \`--tag'" 1>&2 +- exit $EXIT_FAILURE ++ $echo "$modename: defaulting to \`CC'" ++ $echo "$modename: if this is not correct, specify a tag with \`--tag'" ++# exit $EXIT_FAILURE + # else + # $echo "$modename: using $tagname tagged configuration" + fi +@@ -2407,8 +2408,14 @@ EOF + 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 +@@ -2545,7 +2552,7 @@ EOF + { test "$use_static_libs" = no || test -z "$old_library"; }; then + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" +- need_relink=yes ++ need_relink=no + fi + # This is a shared library + +@@ -5606,6 +5623,10 @@ fi\ + # 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) + name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` +@@ -5927,10 +5948,13 @@ relink_command=\"$relink_command\"" + # 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. +- if test "$inst_prefix_dir" = "$destdir"; then +- $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 +- exit $EXIT_FAILURE +- fi ++ # ++ # This breaks install into our staging area. -PB ++ # ++ # if test "$inst_prefix_dir" = "$destdir"; then ++ # $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 ++ # exit $EXIT_FAILURE ++ # fi + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. diff --git a/support/libtool/buildroot-libtool-v2.2.patch b/support/libtool/buildroot-libtool-v2.2.patch new file mode 100644 index 0000000000..0df00ae54a --- /dev/null +++ b/support/libtool/buildroot-libtool-v2.2.patch @@ -0,0 +1,64 @@ +--- a/ltmain.sh 2009-11-16 06:23:18.000000000 -0700 ++++ b/ltmain.sh 2010-09-18 20:25:06.000000000 -0700 +@@ -1048,8 +1048,8 @@ func_infer_tag () + # 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 +@@ -2018,8 +2018,11 @@ func_mode_install () + # 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. +@@ -5412,8 +5415,14 @@ func_mode_link () + 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 +@@ -5564,7 +5573,7 @@ func_mode_link () + *) + if test "$installed" = no; then + notinst_deplibs="$notinst_deplibs $lib" +- need_relink=yes ++ need_relink=no + fi + ;; + esac +@@ -8052,6 +8061,10 @@ EOF + # 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" diff --git a/support/libtool/buildroot-libtool-v2.4.patch b/support/libtool/buildroot-libtool-v2.4.patch new file mode 100644 index 0000000000..d82d610624 --- /dev/null +++ b/support/libtool/buildroot-libtool-v2.4.patch @@ -0,0 +1,47 @@ +--- a/ltmain.sh ++++ b/ltmain.sh +@@ -1416,8 +1416,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 +@@ -2962,8 +2962,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. +@@ -6683,7 +6686,7 @@ + *) + if test "$installed" = no; then + func_append notinst_deplibs " $lib" +- need_relink=yes ++ need_relink=no + fi + ;; + esac +@@ -9257,6 +9260,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"