From 05cb1bfc98056065df8bf573201fcd9e9ad0f81e Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 26 Mar 2012 15:22:01 +0100 Subject: [PATCH] scripts/bitbake: allow switching between build directories The recent addition of the check to ensure the user was in their build directory disabled the ability to switch between build directories without re-running the build environment setup script. We can rely upon checking for conf/bblayers.conf instead, so use this check. This does allow BUILDDIR (which is normally set by the environment script) to be unset; however if it is set then it is assumed to be the correct build directory and will be used in the error message that is shown when we can't find conf/bblayers.conf. (From OE-Core rev: 769384decb095fb3c49eb13b8f7f69c978d0bcba) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- scripts/bitbake | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/scripts/bitbake b/scripts/bitbake index 7a59c6f..0431d95 100755 --- a/scripts/bitbake +++ b/scripts/bitbake @@ -37,6 +37,16 @@ if [ "$py_v26_check" != "True" ]; then exit 1 fi +if [ ! -e conf/bblayers.conf ] ; then + BDPRINT="" + [ -n "$BUILDDIR" ] && BDPRINT=": $BUILDDIR" + echo "Unable to find conf/bblayers.conf" + echo "BitBake must be run from within your build directory$BDPRINT" + exit 1 +elif [ -z "$BUILDDIR" ] ; then + BUILDDIR="`pwd`" +fi + needtar="1" TARVERSION=`tar --version | head -n 1 | cut -d ' ' -f 4` float_test() { @@ -47,11 +57,6 @@ float_test() { # but earlier versions do not float_test "$TARVERSION > 1.23" && needtar="0" -if [ "`pwd`" != "$BUILDDIR" ] ; then - echo "BitBake must be run from your build directory: $BUILDDIR" - exit 1 -fi - buildpseudo="1" if [ $needpseudo = "1" ]; then if [ -e "$BUILDDIR/pseudodone" ]; then -- 2.7.4