This patch corrects the path specifications when building perl
for vendorlib, vendorarch, sitelib and sitearch to allow newer
dual-life module being installed on host to satisfy configure
and build requirements of some CPAN distributions.

Additionally, fix search path order in perl wrappers.

Signed-off-by: Jens Rehsack <s...@netbsd.org>
---
 meta/recipes-devtools/perl/perl-native_5.22.0.bb | 16 +++++++++-------
 meta/recipes-devtools/perl/perl_5.22.0.bb        |  2 +-
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/meta/recipes-devtools/perl/perl-native_5.22.0.bb 
b/meta/recipes-devtools/perl/perl-native_5.22.0.bb
index a9a1cab..b4dda31 100644
--- a/meta/recipes-devtools/perl/perl-native_5.22.0.bb
+++ b/meta/recipes-devtools/perl/perl-native_5.22.0.bb
@@ -28,16 +28,15 @@ do_configure () {
                -Dcf_by="Open Embedded" \
                -Dprefix=${prefix} \
                -Dvendorprefix=${prefix} \
-               -Dvendorprefix=${prefix} \
                -Dsiteprefix=${prefix} \
                \
                -Dbin=${STAGING_BINDIR}/${PN} \
                -Dprivlib=${STAGING_LIBDIR}/perl/${PV} \
                -Darchlib=${STAGING_LIBDIR}/perl/${PV} \
-               -Dvendorlib=${STAGING_LIBDIR}/perl/${PV} \
-               -Dvendorarch=${STAGING_LIBDIR}/perl/${PV} \
-               -Dsitelib=${STAGING_LIBDIR}/perl/${PV} \
-               -Dsitearch=${STAGING_LIBDIR}/perl/${PV} \
+               -Dvendorlib=${STAGING_LIBDIR}/perl/vendor_perl/${PV} \
+               -Dvendorarch=${STAGING_LIBDIR}/perl/vendor_perl/${PV} \
+               -Dsitelib=${STAGING_LIBDIR}/perl/site_perl/${PV} \
+               -Dsitearch=${STAGING_LIBDIR}/perl/site_perl/${PV} \
                \
                -Duseshrplib \
                -Dusethreads \
@@ -95,8 +94,11 @@ do_install () {
                install $i ${D}${libdir}/perl/${PV}/CORE
        done
 
-       create_wrapper ${D}${bindir}/perl 
PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/${PV}:${STAGING_LIBDIR}/perl:${STAGING_LIBDIR}/perl/site_perl/${PV}:${STAGING_LIBDIR}/perl/vendor_perl/${PV}'
-       create_wrapper ${D}${bindir}/perl${PV} 
PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/${PV}:${STAGING_LIBDIR}/perl${STAGING_LIBDIR}/perl:${STAGING_LIBDIR}/perl/site_perl/${PV}:${STAGING_LIBDIR}/perl/vendor_perl/${PV}'
+       # Those wrappers mean that perl installed from sstate (which may change
+       # path location) works and that in the nativesdk case, the SDK can be
+       # installed to a different location from the one it was built for.
+       create_wrapper ${D}${bindir}/perl 
PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/site_perl/${PV}:${STAGING_LIBDIR}/perl/vendor_perl/${PV}:${STAGING_LIBDIR}/perl/${PV}'
+       create_wrapper ${D}${bindir}/perl${PV} 
PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/site_perl/${PV}:${STAGING_LIBDIR}/perl/vendor_perl/${PV}:${STAGING_LIBDIR}/perl/${PV}'
 
        # Use /usr/bin/env nativeperl for the perl script.
        for f in `grep -Il '#! *${bindir}/perl' ${D}/${bindir}/*`; do
diff --git a/meta/recipes-devtools/perl/perl_5.22.0.bb 
b/meta/recipes-devtools/perl/perl_5.22.0.bb
index 3ce7849..f128aca 100644
--- a/meta/recipes-devtools/perl/perl_5.22.0.bb
+++ b/meta/recipes-devtools/perl/perl_5.22.0.bb
@@ -245,7 +245,7 @@ do_install() {
 
 do_install_append_class-nativesdk () {
         create_wrapper ${D}${bindir}/perl \
-            
PERL5LIB='$PERL5LIB:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/site_perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/vendor_perl/${PV}'
+            
PERL5LIB='$PERL5LIB:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/site_perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/vendor_perl/${PV}:$OECORE_NATIVE_SYSROOT/${libdir_nativesdk}/perl/${PV}'
 }
 
 PACKAGE_PREPROCESS_FUNCS += "perl_package_preprocess"
-- 
2.3.8 (Apple Git-58)

-- 
Jens Rehsack - rehs...@gmail.com

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to