]> code.ossystems Code Review - openembedded-core.git/commitdiff
scripts/bitbake: allow switching between build directories
authorPaul Eggleton <paul.eggleton@linux.intel.com>
Mon, 26 Mar 2012 14:22:01 +0000 (15:22 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 31 Mar 2012 16:39:55 +0000 (17:39 +0100)
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.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
scripts/bitbake

index 7a59c6f52a29a834392c1a2bd7bd122c38d81c5b..0431d9531a8e5c4b978e623bd17c43a30cbd3e85 100755 (executable)
@@ -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