[oe-commits] Laurentiu Palcu : populate_sdk_base: search for perl scripts after symlinks are relocated

git at git.openembedded.org git at git.openembedded.org
Sat Mar 16 17:52:28 UTC 2013


Module: openembedded-core.git
Branch: master
Commit: 239a43fc4037bfe941bb60dd077ee477de177b7c
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=239a43fc4037bfe941bb60dd077ee477de177b7c

Author: Laurentiu Palcu <laurentiu.palcu at intel.com>
Date:   Fri Mar 15 18:01:53 2013 +0200

populate_sdk_base: search for perl scripts after symlinks are relocated

grep will throw "No such file or directory" errors for all invalid
symlinks. To overcome this, move the search after the symlinks have been
changed to point to the new location.

Signed-off-by: Laurentiu Palcu <laurentiu.palcu at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/populate_sdk_base.bbclass |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 7af2d2e..4015030 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -269,6 +269,11 @@ fi
 # replace ${SDKPATH} with the new prefix in all text files: configs/scripts/etc
 $SUDO_EXEC find $native_sysroot -type f -exec file '{}' \;|grep ":.*\(ASCII\|script\|source\).*text"|cut -d':' -f1|$SUDO_EXEC xargs sed -i -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:g"
 
+# change all symlinks pointing to ${SDKPATH}
+for l in $($SUDO_EXEC find $native_sysroot -type l); do
+	$SUDO_EXEC ln -sfn $(readlink $l|$SUDO_EXEC sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:") $l
+done
+
 # find out all perl scripts in $native_sysroot and modify them replacing the
 # host perl with SDK perl.
 for perl_script in $($SUDO_EXEC grep "^#!.*perl" -rl $native_sysroot); do
@@ -276,11 +281,6 @@ for perl_script in $($SUDO_EXEC grep "^#!.*perl" -rl $native_sysroot); do
 		"s: /usr/bin/perl: /usr/bin/env perl:g" $perl_script
 done
 
-# change all symlinks pointing to ${SDKPATH}
-for l in $($SUDO_EXEC find $native_sysroot -type l); do
-	$SUDO_EXEC ln -sfn $(readlink $l|$SUDO_EXEC sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:") $l
-done
-
 echo done
 
 # delete the relocating script, so that user is forced to re-run the installer





More information about the Openembedded-commits mailing list