[oe-commits] [openembedded-core] 12/14: oe-init-build-env: Error out when failed to locate cwd

git at git.openembedded.org git at git.openembedded.org
Tue Mar 12 18:58:12 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 632c54b7686e60ee320ed1a7ac7d889790599d27
Author: Robert Yang <liezhi.yang at windriver.com>
AuthorDate: Mon Mar 11 18:16:55 2019 +0800

    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.
    
    Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 oe-init-build-env | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/oe-init-build-env b/oe-init-build-env
index e813230..861c3e0 100755
--- a/oe-init-build-env
+++ b/oe-init-build-env
@@ -31,13 +31,18 @@ elif [ -n "$ZSH_NAME" ]; then
     THIS_SCRIPT=$0
 else
     THIS_SCRIPT="$(pwd)/oe-init-build-env"
+    if [ ! -e "$THIS_SCRIPT" ]; then
+        echo "Error: $THIS_SCRIPT doesn't exist!" >&2
+        echo "Please run this script in oe-init-build-env's directory." >&2
+        exit 1
+    fi
 fi
 if [ -n "$BBSERVER" ]; then
     unset BBSERVER
 fi
 
 if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then
-    echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'"
+    echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'" >&2
     exit 1
 fi
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list