[OE-core] [PATCH v4] libtool: fix resolve of lt_sysroot

Saul Wold sgw at linux.intel.com
Tue Sep 10 21:33:36 UTC 2013


On 09/10/2013 07:56 AM, hans.beckerus at gmail.com wrote:
> From: Hans Beckerus <hans.beckerus at gmail.com>
>
> This patch updates libtool.m4 (and its output) to resolve a problem
> with variable 'lt_sysroot' not being properly updated if the option
> '--with[-libtool]-sysroot' is not provided when running the 'configure'
> script for a package.
>
> According to the help text ouput from 'configure':
> --with-libtool-sysroot=DIR Search for dependent libraries within DIR
>                         (or the compiler's sysrooot if not specified).
>
> Due to swapped cases in a switch statement, when checking if the option
> was specified or not, wrong actions were taken resulting in an
> incorrect sysroot and failures to properly locate e.g. .la files.
>
What kind of testing have you done with this?  Have you tried a full 
world build?  This kind of change scares me a little as what issues we 
might have patched around or behavior built into software.

I just completed a world build locally and have failures in file-native 
guile-native, and gtk+3, not sure if we need to invalidate sstate, I am 
starting a clean build.

I have not dug too deeply into this yet.

Sau!



> For current upstream status see:
> http://lists.gnu.org/archive/html/bug-libtool/2013-09/msg00005.html
>
> Signed-off-by: Hans Beckerus <hans.beckerus at gmail.com>
> ---
>   meta/recipes-devtools/libtool/libtool-2.4.2.inc    |  1 +
>   .../libtool/libtool/fix-resolve-lt-sysroot.patch   | 35 ++++++++++++++++++++++
>   2 files changed, 36 insertions(+)
>   create mode 100644 meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch
>
> diff --git a/meta/recipes-devtools/libtool/libtool-2.4.2.inc b/meta/recipes-devtools/libtool/libtool-2.4.2.inc
> index bb4ddf0..92e4949 100644
> --- a/meta/recipes-devtools/libtool/libtool-2.4.2.inc
> +++ b/meta/recipes-devtools/libtool/libtool-2.4.2.inc
> @@ -20,6 +20,7 @@ SRC_URI = "${GNU_MIRROR}/libtool/libtool-${PV}.tar.gz \
>   	   file://respect-fstack-protector.patch \
>              file://norm-rpath.patch \
>              file://dont-depend-on-help2man.patch \
> +           file://fix-resolve-lt-sysroot.patch \
>             "
>
>   SRC_URI[md5sum] = "d2f3b7d4627e69e13514a40e72a24d50"
> diff --git a/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch b/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch
> new file mode 100644
> index 0000000..5a6335b
> --- /dev/null
> +++ b/meta/recipes-devtools/libtool/libtool/fix-resolve-lt-sysroot.patch
> @@ -0,0 +1,35 @@
> +
> +Upstream-Status: Pending
> +
> +This patch updates libtool.m4 (and its output) to resolve a problem
> +with variable 'lt_sysroot' not being properly updated if the option
> +'--with[-libtool]-sysroot' is not provided when running the 'configure'
> +script for a package.
> +
> +I have also reported the problem to libtool here
> +
> +http://lists.gnu.org/archive/html/bug-libtool/2013-09/msg00005.html
> +
> +Signed-off-by: Hans Beckerus <hans.beckerus at gmail.com>
> +---
> +diff -ur libtool-2.4.2.orig/libltdl/m4/libtool.m4 libtool-2.4.2/libltdl/m4/libtool.m4
> +--- libtool-2.4.2.orig/libltdl/m4/libtool.m4	2013-09-05 10:37:24.690013000 +0200
> ++++ libtool-2.4.2/libltdl/m4/libtool.m4	2013-09-05 12:05:51.560281000 +0200
> +@@ -1234,7 +1234,7 @@
> + dnl in case the user passed a directory name.
> + lt_sysroot=
> + case ${with_libtool_sysroot} in #(
> +- yes)
> ++ no)
> +    if test "$GCC" = yes; then
> +      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
> +    fi
> +@@ -1242,7 +1242,7 @@
> +  /*)
> +    lt_sysroot=`echo "$with_libtool_sysroot" | sed -e "$sed_quote_subst"`
> +    ;; #(
> +- no|'')
> ++ yes|'')
> +    ;; #(
> +  *)
> +    AC_MSG_RESULT([${with_libtool_sysroot}])
>



More information about the Openembedded-core mailing list