From: Martin Jansa <martin.jansa@gmail.com>
To: openembedded-core@lists.openembedded.org
Cc: openembedded-commits@lists.openembedded.org
Subject: Re: [oe-commits] Richard Purdie : perl: Fix various nativesdk build issues
Date: Tue, 4 Sep 2012 10:18:58 +0200 [thread overview]
Message-ID: <20120904081858.GA3372@jama.jama.net> (raw)
In-Reply-To: <20120902125724.B93CA10357@opal>
[-- Attachment #1: Type: text/plain, Size: 5934 bytes --]
On Sun, Sep 02, 2012 at 12:57:24PM +0000, git@git.openembedded.org wrote:
> Module: openembedded-core.git
> Branch: master
> Commit: 38234f2e276356b1d77a87ceabc486107e336d19
> URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=38234f2e276356b1d77a87ceabc486107e336d19
>
> Author: Richard Purdie <richard.purdie@linuxfoundation.org>
> Date: Thu Aug 30 16:36:24 2012 -0700
>
> perl: Fix various nativesdk build issues
>
> 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@linuxfoundation.org>
>
> ---
>
> meta/recipes-devtools/perl/perl_5.14.2.bb | 12 +++++++-----
> 1 files changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/meta/recipes-devtools/perl/perl_5.14.2.bb b/meta/recipes-devtools/perl/perl_5.14.2.bb
> index 9db3805..3c1360f 100644
> --- a/meta/recipes-devtools/perl/perl_5.14.2.bb
> +++ b/meta/recipes-devtools/perl/perl_5.14.2.bb
> @@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://Copying;md5=2b4c6ffbcfcbdee469f02565f253d81a \
> # We need gnugrep (for -I)
> DEPENDS = "virtual/db grep-native"
> DEPENDS += "gdbm zlib"
> -PR = "r8"
> +PR = "r9"
>
> # 5.10.1 has Module::Build built-in
> PROVIDES += "libmodule-build-perl"
> @@ -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,@ARCH@-thread-multi,,g' \
> -e 's,@ARCH@,${TARGET_ARCH}-${TARGET_OS},g' \
> -e 's,@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}
>
> case "${TARGET_ARCH}" in
Not sure if it's caused by this, but nativesdk-perl now fails to
do_install()
make[1]: Nothing to be done for `install.man'.
make[1]: Leaving directory `/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/perl-5.14.2'
ln: failed to create symbolic link '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/bin/perl': No such file or directory
ln: failed to create symbolic link '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl5': No such file or directory
rmdir: failed to remove '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl/site_perl/5.14.2': No such file or directory
rmdir: failed to remove '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl/site_perl': No such file or directory
mv: cannot stat '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl/5.14.2/CORE/libperl.so': No such file or directory
ln: failed to create symbolic link '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/libperl.so.5': No such file or directory
ln: failed to create symbolic link '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image//usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl/5.14.2/CORE/libperl.so': No such file or directory
install: cannot create regular file '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl': No such file or directory
ln: failed to create symbolic link '/OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/image/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/lib/perl/5.14.2/Config_heavy-target.pl': No such file or directory
And files are all installed in wrong directory (sysroot path repeated twice):
OE @ ~/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-5.14.2-r9/perl-5.14.2 $ ls /OE/shr-core/tmp-eglibc/work/i686-nativesdk-oesdk-linux/nativesdk-perl-
5.14.2-r9/image/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/local/oecore-i686/sysroots/i686-oesdk-linux/usr/bin/
a2p corelist cpanp enc2xs h2xs libnetcfg perlbug perlthanks pod2latex pod2usage prove ptar s2p xsubpp
c2ph cpan cpanp-run-perl find2perl instmodsh perl perldoc piconv pod2man podchecker psed ptardiff shasum
config_data cpan2dist dprofpp h2ph json_pp perl5.14.2 perlivp pl2pm pod2text podselect pstruct ptargrep splain
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
next parent reply other threads:[~2012-09-04 8:30 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20120902125724.B93CA10357@opal>
2012-09-04 8:18 ` Martin Jansa [this message]
2012-09-04 8:30 ` [oe-commits] Richard Purdie : perl: Fix various nativesdk build issues Richard Purdie
2012-09-04 8:51 ` Martin Jansa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120904081858.GA3372@jama.jama.net \
--to=martin.jansa@gmail.com \
--cc=openembedded-commits@lists.openembedded.org \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox