summaryrefslogtreecommitdiffstats
path: root/oe-init-build-env
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2019-03-11 18:16:55 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-03-12 11:57:41 -0700
commit09923bbf467612a481a058d35f3717189b72477f (patch)
tree01f24429aaed342ea193004b6381df7f6fe7f2bb /oe-init-build-env
parent1ee33bc13ffa7795678afdc369b2c9423d888f73 (diff)
downloadpoky-09923bbf467612a481a058d35f3717189b72477f.tar.gz
oe-init-build-env: Error out when failed to locate cwd
Ubuntu's /bin/sh symlinks to /bin/dash by default, so subprocess.check_call(oe-init-build-env, cwd=builddir) would be failed since pwd is builddir, and there is no $builddir/oe-init-build-env, this would lead to other confusing errors, check and error it out earlier to make it easier to locate the problem. We don't meet the problem when manually run ". oe-init-build-env" is because Ubuntu's default login shell is bash, but subprocess.check_call() doesn't respect to login shell, so the error only happens in situations like subprocess.check_call(). And also print errors to stderr as oe-buildenv-internal does. (From OE-Core rev: 632c54b7686e60ee320ed1a7ac7d889790599d27) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'oe-init-build-env')
-rwxr-xr-xoe-init-build-env7
1 files changed, 6 insertions, 1 deletions
diff --git a/oe-init-build-env b/oe-init-build-env
index e813230a98..861c3e000e 100755
--- a/oe-init-build-env
+++ b/oe-init-build-env
@@ -31,13 +31,18 @@ elif [ -n "$ZSH_NAME" ]; then
31 THIS_SCRIPT=$0 31 THIS_SCRIPT=$0
32else 32else
33 THIS_SCRIPT="$(pwd)/oe-init-build-env" 33 THIS_SCRIPT="$(pwd)/oe-init-build-env"
34 if [ ! -e "$THIS_SCRIPT" ]; then
35 echo "Error: $THIS_SCRIPT doesn't exist!" >&2
36 echo "Please run this script in oe-init-build-env's directory." >&2
37 exit 1
38 fi
34fi 39fi
35if [ -n "$BBSERVER" ]; then 40if [ -n "$BBSERVER" ]; then
36 unset BBSERVER 41 unset BBSERVER
37fi 42fi
38 43
39if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then 44if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then
40 echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'" 45 echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'" >&2
41 exit 1 46 exit 1
42fi 47fi
43 48