diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2017-04-06 03:05:55 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-04-08 22:48:05 +0100 |
commit | 055838283349530e6f60f4169d9190aa5b59b190 (patch) | |
tree | abd4637824b1341c940d233aacc85f9bbd139f2e | |
parent | 123df94f511cbaad088b25bbbae1f1137f957c7e (diff) | |
download | openembedded-core-055838283349530e6f60f4169d9190aa5b59b190.tar.gz openembedded-core-055838283349530e6f60f4169d9190aa5b59b190.tar.bz2 openembedded-core-055838283349530e6f60f4169d9190aa5b59b190.zip |
autogen-native: fix POSIX_SHELL and perl
The shebang's length is usually 128 as defined in /usr/include/linux/binfmts.h:
#define BINPRM_BUF_SIZE 128
So there would be errors when /path/to/hosttools/perl is longer than 128.
This patch fixes the problem when POSIX_SHELL and perl are used as the interpreters.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-devtools/autogen/autogen-native_5.18.12.bb | 3 | ||||
-rw-r--r-- | meta/recipes-devtools/autogen/autogen/0002-autoopts-mk-tpl-config.sh-fix-perl-path.patch | 32 |
2 files changed, 35 insertions, 0 deletions
diff --git a/meta/recipes-devtools/autogen/autogen-native_5.18.12.bb b/meta/recipes-devtools/autogen/autogen-native_5.18.12.bb index 0004389b11..853477cf7c 100644 --- a/meta/recipes-devtools/autogen/autogen-native_5.18.12.bb +++ b/meta/recipes-devtools/autogen/autogen-native_5.18.12.bb @@ -13,6 +13,7 @@ SRC_URI = "${GNU_MIRROR}/autogen/rel${PV}/autogen-${PV}.tar.gz \ file://mk-tpl-config.sh-force-exit-value-to-be-0-in-subproc.patch \ file://fix-script-err-when-processing-libguile.patch \ file://0001-config-libopts.m4-regenerate-it-from-config-libopts..patch \ + file://0002-autoopts-mk-tpl-config.sh-fix-perl-path.patch \ " SRC_URI[md5sum] = "551d15ccbf5b5fc5658da375d5003389" @@ -30,6 +31,8 @@ inherit autotools texinfo native pkgconfig export GUILE_LOAD_PATH = "${STAGING_DATADIR_NATIVE}/guile/2.0" export GUILE_LOAD_COMPILED_PATH = "${STAGING_LIBDIR_NATIVE}/guile/2.0/ccache" +export POSIX_SHELL = "/usr/bin/env sh" + do_install_append () { create_wrapper ${D}/${bindir}/autogen \ GUILE_LOAD_PATH=${STAGING_DATADIR_NATIVE}/guile/2.0 \ diff --git a/meta/recipes-devtools/autogen/autogen/0002-autoopts-mk-tpl-config.sh-fix-perl-path.patch b/meta/recipes-devtools/autogen/autogen/0002-autoopts-mk-tpl-config.sh-fix-perl-path.patch new file mode 100644 index 0000000000..d5fe143ce4 --- /dev/null +++ b/meta/recipes-devtools/autogen/autogen/0002-autoopts-mk-tpl-config.sh-fix-perl-path.patch @@ -0,0 +1,32 @@ +From 9f69f3f5ef22bf1bcffb0e651efc260889cfaa46 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Mon, 13 Mar 2017 20:33:30 -0700 +Subject: [PATCH] autoopts/mk-tpl-config.sh: fix perl path + +Use "which perl" as shebang doesn't work when it is longer than +BINPRM_BUF_SIZE which is 128 usually. So use "/usr/bin/env perl" to +instead of. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + autoopts/mk-tpl-config.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/autoopts/mk-tpl-config.sh b/autoopts/mk-tpl-config.sh +index 093e808..8dfc6dd 100755 +--- a/autoopts/mk-tpl-config.sh ++++ b/autoopts/mk-tpl-config.sh +@@ -98,7 +98,7 @@ fix_scripts() { + st=`sed 1q $f` + + case "$st" in +- *perl ) echo '#!' `which perl` ++ *perl ) echo '#!/usr/bin/env perl' + sed 1d $f + ;; + +-- +2.10.2 + |