On hosts where we may already be past the #! limit this is required
and this is safe on the target as well. This is be7fe31 in oe.dev.
Related to this we now bump all PRs for recipes that inherit cpan.
Note that in oe.dev we mangle for perl but here we use the new
nativeperl script.
(From OE-Core rev: 682a213dc732074985bf86f508305fc6eafe18d9)
Signed-off-by: Tom Rini <tom_rini@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes sure that native perl .so can get loaded at the buildtime, and
avoids following kind of errors while building perl modules:
Nitin A Kamble <nitin.a.kamble@intel.com> 2011/04/20
+ perl Makefile.PL
EXPATLIBPATH=/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib
EXPATINCPATH=/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/include
*** Module name IN:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Cwd.pm
*** Module name OUT:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Cwd.pm
*** Module name IN:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
*** Module name OUT:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
Can't load
'/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/auto/Fcntl/Fcntl.so'
for module Fcntl:
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/auto/Fcntl/Fcntl.so:
wrong ELF class: ELFCLASS32 at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/XSLoader.pm
line 79.
at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
line 215
BEGIN failed--compilation aborted at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/Fcntl.pm
line 216.
Compilation failed in require at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/File/Temp.pm
line 146.
BEGIN failed--compilation aborted at
/disk0/pokybuild/build0/tmp/sysroots/qemux86/usr/lib/perl/5.12.2/File/Temp.pm
line 146.
Compilation failed in require at inc/Devel/CheckLib.pm line 12.
BEGIN failed--compilation aborted at inc/Devel/CheckLib.pm line 12.
Compilation failed in require at Makefile.PL line 5.
BEGIN failed--compilation aborted at Makefile.PL line 5.
ERROR: Function 'do_configure' failed (see
/disk0/pokybuild/build0/tmp/work/i586-poky-linux/libxml-parser-perl-2.40-r0/temp/log.do_configure.16956
for further information)
(From OE-Core rev: 485e41f618286d048162fea0077f314e2ff4f4da)
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We use host perl while building target perl modules. When some of the
prebuilt perl modules such as scalar::util are used in the build process
directly or indirectly, perl needs to load the arch specific .so library
file. If perl can not find the .so library files, then perl
tries to use the target pm files which ends up in circular perl module
depedancy causing build time perl invocation to fail.
Adding this new parameter viz EXTRA_PERLFLAGS to cpan.bbclass allows perl
module recipes to specify the location of such host .so files for hostperl,
so that build time invocation of perl does not fail.
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
perl 5.12.2 does not use /usr/share/perl path, and all that stuff goes
in /usr/lib/perl. This commit fixes cpan class which depends on
/usr/share/perl.
cpan.base/build.bbclass: change /usr/lib/perl5 to /usr/lib/perl
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>