From ea3b5d356c269f97a7be2b54323c86165140b470 Mon Sep 17 00:00:00 2001 From: Yannis Damigos Date: Thu, 3 Mar 2016 12:04:25 +0200 Subject: zephyr-env.sh: Set correctly $ZEPHYR_BASE in zsh Sourcing project environment file failed to set correctly $ZEPHYR_BASE in zsh if it was sourced from another directory (e.g. home directory). This patch fixes this issue. It was tested on zsh, bash and sh on Linux. It needs to be tested on OS X. Change-Id: Idfb11c6a3109042a9f578f38b3849d9cf9c31f95 Signed-off-by: Yannis Damigos --- zephyr-env.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/zephyr-env.sh b/zephyr-env.sh index 3722f7729..21f47946e 100644 --- a/zephyr-env.sh +++ b/zephyr-env.sh @@ -20,6 +20,7 @@ # sourcing a script. POSIX_ARGZERO option, when it is set, exposes the # original value of $0 in spite of the current FUNCTION_ARGZERO setting. if [ -n "$ZSH_VERSION" ]; then + DIR="${(%):-%N}" if [ $options[posixargzero] != "on" ]; then setopt posixargzero NAME=$(basename -- "$0") @@ -28,6 +29,7 @@ if [ -n "$ZSH_VERSION" ]; then NAME=$(basename -- "$0") fi else + DIR="${BASH_SOURCE[0]}" NAME=$(basename -- "$0") fi @@ -43,7 +45,7 @@ fi uname | grep -q MINGW && MINGW_OPT="-W" # identify OS source tree root directory -export ZEPHYR_BASE=$( builtin cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ${MINGW_OPT}) +export ZEPHYR_BASE=$( builtin cd "$( dirname "$DIR" )" && pwd ${MINGW_OPT}) scripts_path=${ZEPHYR_BASE}/scripts echo "${PATH}" | grep -q "${scripts_path}" -- cgit v1.2.3