[OE-core] perl: Fix various nativesdk build issues

Koen Kooi koen at dominion.thruhere.net
Fri Aug 31 08:42:39 UTC 2012


Op 31 aug. 2012, om 01:36 heeft Richard Purdie <richard.purdie at linuxfoundation.org> het volgende geschreven:

> The config.sh lists -fstack-protector but this isn't in LDFLAGS. This
> can result in perl compilation failures due to the mismatch. Adding the
> flag to LDFLAGS solves makes all the flags consistent and avoids build
> failures from missing symbols.
> 
> It was also found that the path substitutions made by the sed statement
> can conflict with each other and you can end up with $prefix$prefix type
> expressions in config.sh-X which can break the build in unusual ways.
> This patch anchors the expressions to ensure only true matches are
> replaced.
> 
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

I'm not entirely sure, but since this has a potential impact on the build output, shouldn't there be a PR bump?

> ---
> diff --git a/meta/recipes-devtools/perl/perl_5.14.2.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb
> index 9db3805..8e7ab9e 100644
> --- a/meta/recipes-devtools/perl/perl_5.14.2.bb
> +++ b/meta/recipes-devtools/perl/perl_5.14.2.bb
> @@ -90,6 +90,8 @@ export PERLHOSTLIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${PV}/"
> # LDFLAGS for shared libraries
> export LDDLFLAGS = "${LDFLAGS} -shared"
> 
> +LDFLAGS_append = " -fstack-protector"
> +
> # We're almost Debian, aren't we?
> CFLAGS += "-DDEBIAN"
> 
> @@ -148,10 +150,10 @@ do_configure() {
>                -e 's, at ARCH@-thread-multi,,g' \
>                -e 's, at ARCH@,${TARGET_ARCH}-${TARGET_OS},g' \
>                -e 's, at STAGINGDIR@,${STAGING_DIR_HOST},g' \
> -               -e "s%/usr/include%${STAGING_INCDIR}%g" \
> -	       -e 's,/usr/lib/,${libdir}/,g' \
> -	       -e 's,/usr/,${exec_prefix}/,g' \
> -	       -e 's,/perl5,/perl,g' \
> +               -e "s%\([ \"^\',=]\+\)/usr/include%\1${STAGING_INCDIR}%g" \
> +	       -e "s%\([ \"^\',=]\+\)/usr/lib/%\1${libdir}/%g" \
> +	       -e "s%\([ \"^\',=]\+\)/usr/%\1${exec_prefix}/%g" \
> +	       -e "s%/perl5%/perl%g" \
>             config.sh-${TARGET_ARCH}-${TARGET_OS}

Whitespace issue in the first line



More information about the Openembedded-core mailing list