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>
37 lines
1.5 KiB
PHP
37 lines
1.5 KiB
PHP
SUMMARY = "A GNU tool that procude shell scripts to automatically configure software."
|
|
DESCRIPTION = "Autoconf is an extensible package of M4 macros that produce shell scripts to automatically \
|
|
configure software source code packages. Autoconf creates a configuration script for a package from a template \
|
|
file that lists the operating system features that the package can use, in the form of M4 macro calls."
|
|
LICENSE = "GPLv3"
|
|
HOMEPAGE = "http://www.gnu.org/software/autoconf/"
|
|
SECTION = "devel"
|
|
DEPENDS += "m4-native"
|
|
DEPENDS_virtclass-native = "m4-native gnu-config-native"
|
|
DEPENDS_virtclass-nativesdk = "m4-nativesdk gnu-config-nativesdk"
|
|
RDEPENDS_${PN} = "m4 gnu-config"
|
|
RDEPENDS_${PN}_virtclass-native = "m4-native gnu-config-native"
|
|
RDEPENDS_${PN}_virtclass-nativesdk = "m4-nativesdk gnu-config-nativesdk"
|
|
|
|
SRC_URI = "${GNU_MIRROR}/autoconf/autoconf-${PV}.tar.bz2 \
|
|
file://program_prefix.patch"
|
|
|
|
inherit autotools
|
|
|
|
PERLPATH = "${bindir}/perl"
|
|
PERLPATH_virtclass-native = "/usr/bin/perl"
|
|
PERLPATH_virtclass-nativesdk = "/usr/bin/perl"
|
|
|
|
do_install_append() {
|
|
rm -rf ${D}${datadir}/emacs
|
|
|
|
# Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
|
|
# for target as /usr/bin/perl, so fix it to /usr/bin/perl.
|
|
for i in autoheader autom4te autoreconf autoscan autoupdate ifnames; do
|
|
if [ -f ${D}${bindir}/$i ]; then
|
|
sed -i -e '1s,#!.*perl,#! ${PERLPATH},' \
|
|
-e 's,exec .*/bin/perl \(.*\) exec .*/bin/perl \(.*\),exec ${PERLPATH} \1 exec ${PERLPATH} \2,' \
|
|
${D}${bindir}/$i
|
|
fi
|
|
done
|
|
}
|