From 82ac2a29126dc38d23c278b82d129d73b17000b7 Mon Sep 17 00:00:00 2001 From: Jackie Huang Date: Thu, 6 Nov 2014 00:33:38 -0500 Subject: perl: set the perl libraries search path The default value for this is ../../lib which ends up with something like: | ./sysroots/x86_64-linux/usr/bin/perl-native/perl5.20.0.real \ | "-I../../lib" "-I../../lib" "-MExtUtils::Command::MM" -e pod2man \ | "--" --section=0 --perm_rw=644 perldoc.pod blib/man1/perldoc.1 in this case, nativeperl will find libraries from the target build, When using an x86-64 host to target Haswell, you can end up with ../../lib including precompiled modules which use Haswell instructions, it fails with: | Running pm_to_blib for dist/if directly | Skip ../../lib/if.pm (unchanged) | Makefile:457: recipe for target 'manifypods' failed | make[1]: *** [manifypods] Illegal instruction So set it to use the -native ones instead of those from the target build. Signed-off-by: Jackie Huang Signed-off-by: Ross Burton --- meta/recipes-devtools/perl/perl_5.20.0.bb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/meta/recipes-devtools/perl/perl_5.20.0.bb b/meta/recipes-devtools/perl/perl_5.20.0.bb index ec4d2140e7..3ca0f53964 100644 --- a/meta/recipes-devtools/perl/perl_5.20.0.bb +++ b/meta/recipes-devtools/perl/perl_5.20.0.bb @@ -94,6 +94,11 @@ HOSTPERL = "${STAGING_BINDIR_NATIVE}/perl-native/perl${PV}" # Where to find .so files - use the -native versions not those from the target build export PERLHOSTLIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${PV}/" +# Where to find perl @INC/#include files +# - use the -native versions not those from the target build +export PERL_LIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${PV}/" +export PERL_ARCHLIB = "${STAGING_LIBDIR_NATIVE}/perl-native/perl/${PV}/" + # LDFLAGS for shared libraries export LDDLFLAGS = "${LDFLAGS} -shared" -- cgit 1.2.3-korg