summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/perl
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-08-30 16:36:24 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-09-02 05:52:06 -0700
commitc3bf244418ef466fc9e298b0d1e4c0336be469bd (patch)
treed76e638d54b82220e49aa8f3779e8be2c8fb442e /meta/recipes-devtools/perl
parentad23395cd1f6c0cbfcc6980b6071d589f9f6cde0 (diff)
downloadpoky-c3bf244418ef466fc9e298b0d1e4c0336be469bd.tar.gz
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. (From OE-Core rev: 38234f2e276356b1d77a87ceabc486107e336d19) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/perl')
-rw-r--r--meta/recipes-devtools/perl/perl_5.14.2.bb12
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 9db38055cb..3c1360f9a3 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 \
7# We need gnugrep (for -I) 7# We need gnugrep (for -I)
8DEPENDS = "virtual/db grep-native" 8DEPENDS = "virtual/db grep-native"
9DEPENDS += "gdbm zlib" 9DEPENDS += "gdbm zlib"
10PR = "r8" 10PR = "r9"
11 11
12# 5.10.1 has Module::Build built-in 12# 5.10.1 has Module::Build built-in
13PROVIDES += "libmodule-build-perl" 13PROVIDES += "libmodule-build-perl"
@@ -90,6 +90,8 @@ export PERLHOSTLIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${PV}/"
90# LDFLAGS for shared libraries 90# LDFLAGS for shared libraries
91export LDDLFLAGS = "${LDFLAGS} -shared" 91export LDDLFLAGS = "${LDFLAGS} -shared"
92 92
93LDFLAGS_append = " -fstack-protector"
94
93# We're almost Debian, aren't we? 95# We're almost Debian, aren't we?
94CFLAGS += "-DDEBIAN" 96CFLAGS += "-DDEBIAN"
95 97
@@ -148,10 +150,10 @@ do_configure() {
148 -e 's,@ARCH@-thread-multi,,g' \ 150 -e 's,@ARCH@-thread-multi,,g' \
149 -e 's,@ARCH@,${TARGET_ARCH}-${TARGET_OS},g' \ 151 -e 's,@ARCH@,${TARGET_ARCH}-${TARGET_OS},g' \
150 -e 's,@STAGINGDIR@,${STAGING_DIR_HOST},g' \ 152 -e 's,@STAGINGDIR@,${STAGING_DIR_HOST},g' \
151 -e "s%/usr/include%${STAGING_INCDIR}%g" \ 153 -e "s%\([ \"^\',=]\+\)/usr/include%\1${STAGING_INCDIR}%g" \
152 -e 's,/usr/lib/,${libdir}/,g' \ 154 -e "s%\([ \"^\',=]\+\)/usr/lib/%\1${libdir}/%g" \
153 -e 's,/usr/,${exec_prefix}/,g' \ 155 -e "s%\([ \"^\',=]\+\)/usr/%\1${exec_prefix}/%g" \
154 -e 's,/perl5,/perl,g' \ 156 -e "s%/perl5%/perl%g" \
155 config.sh-${TARGET_ARCH}-${TARGET_OS} 157 config.sh-${TARGET_ARCH}-${TARGET_OS}
156 158
157 case "${TARGET_ARCH}" in 159 case "${TARGET_ARCH}" in