diff options
| author | Robert Yang <liezhi.yang@windriver.com> | 2012-04-16 17:15:58 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-04-16 22:53:00 +0100 |
| commit | 59348455a797f97919acc018df4067e7e59b3a96 (patch) | |
| tree | fa7fcb55e03ce4996b6562aecefc7a8d65e156d6 /meta/recipes-devtools | |
| parent | ca14115a12f288be8bdac251b4412a593fb88fe1 (diff) | |
| download | poky-59348455a797f97919acc018df4067e7e59b3a96.tar.gz | |
autoconf-nativesdk: fix builds on fedora 17
Generally distros keep perl at /usr/bin/perl
Fedora 17 also has /bin/perl
this causes autoconf-nativesdk build on such distros to put perl
interpreter path in the perl scripts as /bin/perl
But we set perl location for target as /usr/bin/perl
This mismatch of perl path causes failure of rootfs image creation
like this:
| error: Failed dependencies:
| /bin/perl is needed by autoconf-nativesdk-2.68-r6.x86_64.rpm
NOTE: package meta-toolchain-gmae-1.0-r7: task do_populate_sdk: Failed
The second sed command is for such a case:
eval 'case $# in 0) exec /bin/perl -S "$0";; *) exec /bin/perl -S "$0" "$@";; esac'
This line has two "/bin/perl" and we can't use a line number to tell
sed which line it is since the line numbers in different files are
defferent.
[YOCTO #2304]
(From OE-Core rev: 393908e53b243b16ab984da7f073be371e062946)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
| -rw-r--r-- | meta/recipes-devtools/autoconf/autoconf.inc | 16 | ||||
| -rw-r--r-- | meta/recipes-devtools/autoconf/autoconf_2.68.bb | 2 |
2 files changed, 16 insertions, 2 deletions
diff --git a/meta/recipes-devtools/autoconf/autoconf.inc b/meta/recipes-devtools/autoconf/autoconf.inc index 80a5d92914..3ae98c8407 100644 --- a/meta/recipes-devtools/autoconf/autoconf.inc +++ b/meta/recipes-devtools/autoconf/autoconf.inc | |||
| @@ -17,6 +17,20 @@ SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.bz2 \ | |||
| 17 | 17 | ||
| 18 | inherit autotools | 18 | inherit autotools |
| 19 | 19 | ||
| 20 | PERLPATH = "${bindir}/perl" | ||
| 21 | PERLPATH_virtclass-native = "/usr/bin/perl" | ||
| 22 | PERLPATH_virtclass-nativesdk = "/usr/bin/perl" | ||
| 23 | |||
| 20 | do_install_append() { | 24 | do_install_append() { |
| 21 | rm -rf ${D}${datadir}/emacs | 25 | rm -rf ${D}${datadir}/emacs |
| 26 | |||
| 27 | # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location | ||
| 28 | # for target as /usr/bin/perl, so fix it to /usr/bin/perl. | ||
| 29 | for i in autoheader autom4te autoreconf autoscan autoupdate ifnames; do | ||
| 30 | if [ -f ${D}${bindir}/$i ]; then | ||
| 31 | sed -i -e '1s,#!.*perl,#! ${PERLPATH},' \ | ||
| 32 | -e 's,exec .*/bin/perl \(.*\) exec .*/bin/perl \(.*\),exec ${PERLPATH} \1 exec ${PERLPATH} \2,' \ | ||
| 33 | ${D}${bindir}/$i | ||
| 34 | fi | ||
| 35 | done | ||
| 22 | } | 36 | } |
diff --git a/meta/recipes-devtools/autoconf/autoconf_2.68.bb b/meta/recipes-devtools/autoconf/autoconf_2.68.bb index f1b506a946..8d466e09f5 100644 --- a/meta/recipes-devtools/autoconf/autoconf_2.68.bb +++ b/meta/recipes-devtools/autoconf/autoconf_2.68.bb | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | require autoconf.inc | 1 | require autoconf.inc |
| 2 | 2 | ||
| 3 | PR = "r6" | 3 | PR = "r7" |
| 4 | 4 | ||
| 5 | PARALLEL_MAKE = "" | 5 | PARALLEL_MAKE = "" |
| 6 | 6 | ||
