summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2012-07-04 18:15:54 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-07-05 16:01:32 +0100
commit39b5d509a3f77ce26818140be0db7292dda39204 (patch)
tree225374b3843ae9a98a91b0b569be795aac425eab
parent52c6977f8247bad2026dac459cfdc93b7ab5143e (diff)
downloadpoky-39b5d509a3f77ce26818140be0db7292dda39204.tar.gz
dpkg 1.15.8.7: bad interpreter when long tmpdir
When use PACKAGE_CLASSES = "package_deb", and the length of tmpdir is longer than 177, the error occurs during the image generation: /very/long/path/totmp/sysroots/x86_64-linux/usr/bin/dpkg-scanpackages: bad interpreter: No such file or directory The interpreter is perl, and it does exist, this is because the first line: #!/very/long/path/to/perl in the script can't be very long. Create a wrapper for it would fix the problem. [YOCTO #2640] (From OE-Core rev: 7d3281be18567207de8ce2cabce03957bf2cbca8) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/dpkg/dpkg.inc11
1 files changed, 10 insertions, 1 deletions
diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc
index 09bfbbcd09..7f4f620783 100644
--- a/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/meta/recipes-devtools/dpkg/dpkg.inc
@@ -2,7 +2,7 @@ DESCRIPTION = "Package maintenance system for Debian."
2LICENSE = "GPLv2.0+" 2LICENSE = "GPLv2.0+"
3SECTION = "base" 3SECTION = "base"
4 4
5INC_PR = "r16" 5INC_PR = "r17"
6 6
7SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2 \ 7SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2 \
8 file://ignore_extra_fields.patch" 8 file://ignore_extra_fields.patch"
@@ -56,6 +56,15 @@ do_install_append () {
56 fi 56 fi
57} 57}
58 58
59# Create a wrapper for the perl script to avoid the "bad interpreter"
60# error when the tmpdir is longer than 150.
61do_install_append_virtclass-native () {
62 tmp=`find ${D}${bindir} -type f -exec grep -m 1 -l '#!/.*/perl-native/perl' {} \;`
63 for i in $tmp; do
64 create_wrapper $i ${STAGING_BINDIR_NATIVE}/perl-native/perl
65 done
66}
67
59PROV = "virtual/update-alternatives" 68PROV = "virtual/update-alternatives"
60PROV_virtclass-native = "" 69PROV_virtclass-native = ""
61 70