[OE-core] [PATCH 1/4] dpkg: drop the usage of create_wrapper

Ross Burton ross.burton at intel.com
Wed Jun 12 16:49:39 UTC 2013


create_wrapper was previously abused to invoke the Perl interpretter directly
instead of relying on #! parsing, which is read into a 128 byte buffer so breaks
with deep build directories.

However we already install a "nativeperl" binary into the native sysroot, so
use sed to change the #! line to /usr/bin/env nativeperl.

Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/recipes-devtools/dpkg/dpkg.inc |   10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc
index 28c4f89..b9d4da1 100644
--- a/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/meta/recipes-devtools/dpkg/dpkg.inc
@@ -45,21 +45,13 @@ do_install_append () {
 	if [ "${PN}" = "dpkg-native" ]; then
 		# update-alternatives doesn't have an offline mode
 		rm ${D}${bindir}/update-alternatives
+		sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env nativeperl|' ${D}${bindir}/dpkg-*
 	else
 		mv ${D}${bindir}/update-alternatives ${D}${sbindir}
 		sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-*
 	fi
 }
 
-# Create a wrapper for the perl script to avoid the "bad interpreter"
-# error when the tmpdir is longer than 150.
-do_install_append_class-native () {
-	tmp=`find ${D}${bindir} -type f -exec grep -m 1 -l '#!/.*/perl-native/perl' {} \;`
-	for i in $tmp; do
-		create_wrapper $i ${STAGING_BINDIR_NATIVE}/perl-native/perl
-	done
-}
-
 pkg_postinst_${PN} () {
 #!/bin/sh
 if [ "x$D" != "x" ] && [ -f $D/var/lib/dpkg/status ]; then
-- 
1.7.10.4




More information about the Openembedded-core mailing list