adt_installer_internal: fix perl modules relocated failed on older distributions

The perl module for automake has an embedded path in it, this needs
to be relocated.

Older versions of 'file' do not return the "ASCII" text in the output for
a perl module file. Hence, the regex pattern didn't match perl module and
they were not getting relocated at all on older distributions.

1) On CentOS release 6.4, the version of file is 5.04
$ file /usr/lib/perl5/Config_heavy.pl
$ /usr/lib/perl5/Config_heavy.pl: Perl5 module source text

2) On Ubuntu 13.04, the version of file is 5.11
$ file /usr/lib/perl/5.14/Config_heavy.pl
$ /usr/lib/perl/5.14/Config_heavy.pl: C source, ASCII text, with very long lines

[YOCTO #4550]

(From OE-Core master rev: 7cfab2c895bf4daa7716fb7509e367bf74f016e4)

(From OE-Core rev: dbb7e2b4b7659651462564164c726ab7dfa852bc)

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>
This commit is contained in:
Hongxu Jia
2013-06-26 12:38:46 +08:00
committed by Richard Purdie
parent 109d9980fe
commit 271808b682

View File

@@ -212,8 +212,8 @@ check_result
env_setup_script=$(find $NATIVE_INSTALL_DIR/ -name "environment-setup-*")
$SUDO sed -i -e "s:$DEFAULT_INSTALL_FOLDER:$NATIVE_INSTALL_DIR:g" $env_setup_script
find $OECORE_NATIVE_SYSROOT -type f -exec file '{}' \;|grep ":.*\(ASCII\|script\).*text"|cut -d':' -f1|\
xargs $SUDO sed -i -e "s:$DEFAULT_INSTALL_FOLDER:$NATIVE_INSTALL_DIR:g"
find $OECORE_NATIVE_SYSROOT -type f -exec file '{}' \; | grep ":.*\(ASCII\|script\|source\).*text" | \
cut -d':' -f1 | xargs $SUDO sed -i -e "s:$DEFAULT_INSTALL_FOLDER:$NATIVE_INSTALL_DIR:g"
# change all symlinks pointing to /opt/${DISTRO}/${SDK_VERSION}
for l in $(find $NATIVE_INSTALL_DIR -type l); do