diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2013-03-11 14:55:44 +0800 |
---|---|---|
committer | Ross Burton <ross.burton@intel.com> | 2013-04-23 10:38:45 +0100 |
commit | c3b00f18f24c5ff48981ea3645a58cf48eaa94aa (patch) | |
tree | 3bb92fe526d8a054b72f12fbfaa669a4e3ceed23 | |
parent | 595ce662fc4f705393205f8b17adfceb2d2df187 (diff) | |
download | openembedded-core-c3b00f18f24c5ff48981ea3645a58cf48eaa94aa.tar.gz openembedded-core-c3b00f18f24c5ff48981ea3645a58cf48eaa94aa.tar.bz2 openembedded-core-c3b00f18f24c5ff48981ea3645a58cf48eaa94aa.zip |
populate_sdk_base: tarball installer: SDK overwrite warning
This patch contains two fixes:
* if the user wants to install the SDK in a directory that already
contains a SDK for the same architecture, a warning will be shown;
* when the symbolic links are relocated use -n option. Otherwise,
symbolic links to existing directories will be created in the
directory itself;
Cherry-pick commit b751ec137d0228b40a90e9e32b24f5cb5732225b
[YOCTO #3401]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-rw-r--r-- | meta/classes/populate_sdk_base.bbclass | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass index a1c45ad70a..5e4ed51d4a 100644 --- a/meta/classes/populate_sdk_base.bbclass +++ b/meta/classes/populate_sdk_base.bbclass @@ -132,11 +132,20 @@ else target_sdk_dir=$(readlink -m $target_sdk_dir) fi -printf "You are about to install the SDK to \"$target_sdk_dir\". Proceed[Y/n]?" +if [ -e "$target_sdk_dir/environment-setup-${REAL_MULTIMACH_TARGET_SYS}" ]; then + echo "The directory \"$target_sdk_dir\" already contains a SDK for this architecture." + printf "If you continue, existing files will be overwritten! Proceed[y/N]?" + + default_answer="n" +else + printf "You are about to install the SDK to \"$target_sdk_dir\". Proceed[Y/n]?" + + default_answer="y" +fi read answer if [ "$answer" = "" ]; then - answer="y" + answer="$default_answer" fi if [ "$answer" != "Y" -a "$answer" != "y" ]; then @@ -176,7 +185,7 @@ find $native_sysroot -type f -exec file '{}' \;|grep ":.*ASCII.*text"|cut -d':' # change all symlinks pointing to ${SDKPATH} for l in $(find $native_sysroot -type l); do - ln -sf $(readlink $l|sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:") $l + ln -sfn $(readlink $l|sed -e "s:$DEFAULT_INSTALL_DIR:$target_sdk_dir:") $l done echo done |