summaryrefslogtreecommitdiffstats
path: root/envsetup.sh
diff options
context:
space:
mode:
authorSteve Kondik <shade@chemlab.org>2012-12-27 15:28:34 -0800
committerAdnan Begovic <adnan@cyngn.com>2015-10-06 16:12:09 -0700
commitd6fba55212983b978a5904abf6b1c536428a1c2e (patch)
tree7860dce61824c9171d59a9c6ac14b96c50756c30 /envsetup.sh
parent6dadb57db2193f7c1e2d69e339e44bec72c889bc (diff)
downloadbuild-d6fba55212983b978a5904abf6b1c536428a1c2e.zip
build-d6fba55212983b978a5904abf6b1c536428a1c2e.tar.gz
build-d6fba55212983b978a5904abf6b1c536428a1c2e.tar.bz2
envsetup: Don't tread on my $PROMPT_COMMAND
* I want my own PROMPT_COMMAND to coexist with Android's, so stash it in the environment and add it to the new command. Change-Id: I200902f135d0c5c620a8eb3ce9cefdba318cf9d3 envsetup: Fix $PROMPT_COMMAND Change I200902f135d0c5c620a8eb3ce9cefdba318cf9d3 broke the android PROMPT_COMMAND on scenarios where the existing prompt already had a hardstatus adjustment, since appending it to Android's just clobbered Android's in favor of the original. So instead of appending them, inject android's at the beggining of the existing one (and create a default if none exists) Change-Id: I1fbcbfdb6220d886dda3662da498d1759a4c195b envsetup: Really fix PROMPT_COMMAND handling * Add ANDROID_NO_PROMPT_COMMAND to not change it at all. * Export ANDROID_PROMPT_PREFIX so it can be used elsewhere. Change-Id: Ib2a487404d3b8a367a21582e8a0ce69c2d212a9a envsetup: More PROMPT_COMMAND * Get rid of ANDROID_NO_PROMPT_COMMAND, the pre-existing STAY_OFF_MY_LAWN does the same thing * Remove any pre-existing android prefixes to avoid accumulation scenarios in consecutive builds (i.e., multiple build identification strings in hardstatus) Change-Id: I86661e066e18ea6ad0c742fa1dc6555780fa5441 envsetup: add quotes around PROMPT_COMMAND Better compatibility for zsh. Change-Id: Ie010c30580e67e3b5357e3cc869114a525762677
Diffstat (limited to 'envsetup.sh')
-rw-r--r--envsetup.sh19
1 files changed, 17 insertions, 2 deletions
diff --git a/envsetup.sh b/envsetup.sh
index 22a4c91..fcb8ec6 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -271,11 +271,26 @@ function settitle()
local product=$TARGET_PRODUCT
local variant=$TARGET_BUILD_VARIANT
local apps=$TARGET_BUILD_APPS
+ if [ -z "$PROMPT_COMMAND" ]; then
+ # No prompts
+ PROMPT_COMMAND="echo -ne \"\033]0;${USER}@${HOSTNAME}: ${PWD}\007\""
+ elif [ -z "$(echo $PROMPT_COMMAND | grep '033]0;')" ]; then
+ # Prompts exist, but no hardstatus
+ PROMPT_COMMAND="echo -ne \"\033]0;${USER}@${HOSTNAME}: ${PWD}\007\";${PROMPT_COMMAND}"
+ fi
+ if [ ! -z "$ANDROID_PROMPT_PREFIX" ]; then
+ PROMPT_COMMAND=$(echo $PROMPT_COMMAND | sed -e 's/$ANDROID_PROMPT_PREFIX //g')
+ fi
+
if [ -z "$apps" ]; then
- export PROMPT_COMMAND="echo -ne \"\033]0;[${arch}-${product}-${variant}] ${USER}@${HOSTNAME}: ${PWD}\007\""
+ ANDROID_PROMPT_PREFIX="[${arch}-${product}-${variant}]"
else
- export PROMPT_COMMAND="echo -ne \"\033]0;[$arch $apps $variant] ${USER}@${HOSTNAME}: ${PWD}\007\""
+ ANDROID_PROMPT_PREFIX="[$arch $apps $variant]"
fi
+ export ANDROID_PROMPT_PREFIX
+
+ # Inject build data into hardstatus
+ export PROMPT_COMMAND="$(echo $PROMPT_COMMAND | sed -e 's/\\033]0;\(.*\)\\007/\\033]0;$ANDROID_PROMPT_PREFIX \1\\007/g')"
fi
}