aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools
diff options
context:
space:
mode:
authorHongxu Jia <hongxu.jia@windriver.com>2013-06-26 12:38:47 +0800
committerPaul Eggleton <paul.eggleton@linux.intel.com>2013-07-08 16:28:29 +0100
commit82fea7bd0e9ba54ba0c4da2d8cb9734fa4f46f17 (patch)
tree89e6a0653be7a55929b60c6ef5c3abb4d62971bd /meta/recipes-devtools
parentdbb7e2b4b7659651462564164c726ab7dfa852bc (diff)
downloadopenembedded-core-82fea7bd0e9ba54ba0c4da2d8cb9734fa4f46f17.tar.gz
adt_installer_internal:fix perl lib version mismatch
When run "autoreconf" in toolchain, there is an error if the host's perl's version is not the same as the one in the SDK, the error says that the executable perl mismatches the perl lib's version. This is because most of the autotools' scripts use the "#!/usr/bin/perl -w" which is host perl, but the gnu-configize uses "#! /usr/bin/env perl" which invokes the perl wrapper in the SDK, and the wrapper will set the PERL5LIB to the SDK which causes the mismatch. We can make all the perl scripts to use the host perl or the SDK perl to fix this problem. [YOCTO #4758] (From OE-Core master rev: 487d1fa7b79e89518494986461c157bace842613) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rwxr-xr-xmeta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal7
1 files changed, 7 insertions, 0 deletions
diff --git a/meta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal b/meta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal
index 25c955a5cb..16677e71f1 100755
--- a/meta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal
+++ b/meta/recipes-devtools/installer/adt-installer/scripts/adt_installer_internal
@@ -220,6 +220,13 @@ for l in $(find $NATIVE_INSTALL_DIR -type l); do
$SUDO ln -sfn $(readlink $l|sed -e "s:$DEFAULT_INSTALL_FOLDER:$NATIVE_INSTALL_DIR:") $l
done
+# find out all perl scripts in $OECORE_NATIVE_SYSROOT and modify them
+# replacing the host perl with SDK perl.
+for perl_script in $($SUDO grep -m 1 "^#!.*perl" -rl $OECORE_NATIVE_SYSROOT); do
+ $SUDO sed -i -e "s:^#! */usr/bin/perl.*:#! /usr/bin/env perl:g" -e \
+ "s: /usr/bin/perl: /usr/bin/env perl:g" $perl_script
+done
+
echo_info "\nSuccessfully installed selected native ADT!"
}