perl-native: fixed bad interpreter error

We may get the error on some hosts when build in deeper dir:
/bin/sh: /path/to/tmp/sysroots/i686-linux/usr/bin/perl-native/pod2man: /path/to/tmp/sysroots/i686-li:
bad interpreter: No such file or directory

Note the "i686-li", it should be "i686-linux", but is truncated by the
host.

We can use "/usr/bin/env nativeperl" as we have done in cpan.bbclass for
other recipe's perl script to fix the problem.

(From OE-Core rev: 83dec26849a120d0f1de64e63025354fa7108491)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Robert Yang
2014-08-27 22:40:05 -07:00
committed by Richard Purdie
parent 38dbebfc13
commit 89a2b841c1

View File

@@ -105,6 +105,11 @@ do_install () {
create_wrapper ${D}${bindir}/perl PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/${PV}:${STAGING_LIBDIR}/perl/'
create_wrapper ${D}${bindir}/perl${PV} PERL5LIB='$PERL5LIB:${STAGING_LIBDIR}/perl/${PV}:${STAGING_LIBDIR}/perl/'
# Use /usr/bin/env nativeperl for the perl script.
for f in `grep -Il '#! *${bindir}/perl' ${D}/${bindir}/*`; do
sed -i -e 's|${bindir}/perl|/usr/bin/env nativeperl|' $f
done
}
SYSROOT_PREPROCESS_FUNCS += "perl_sysroot_create_wrapper"