Patchwork [bitbake-devel,4/5] oe-init-build-env: Allow startup with and without memres

login
register
mail settings
Submitter Jason Wessel
Date Nov. 25, 2013, 9:21 p.m.
Message ID <1385414489-2901-5-git-send-email-jason.wessel@windriver.com>
Download mbox | patch
Permalink /patch/62321/
State New
Headers show

Comments

Jason Wessel - Nov. 25, 2013, 9:21 p.m.
Use the bitbake --status-only and the fact that bitbake.lock will
contain the host name and port to determine when to activate or
shutdown the stay resident bitbake server.

This allows a end developer to cleanly switch between the two ways to
use bitbake as well as enter the memres bitbake server from multiple
shells without starting the server if it is already running.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
---
 oe-init-build-env        |    9 +++++++++
 oe-init-build-env-memres |   21 ++++++++++++++++++---
 2 files changed, 27 insertions(+), 3 deletions(-)

Patch

diff --git a/oe-init-build-env b/oe-init-build-env
index de9692f..8ef32f3 100755
--- a/oe-init-build-env
+++ b/oe-init-build-env
@@ -47,3 +47,12 @@  else
    unset BBPATH
 fi
 
+# Shutdown any bitbake server if the BBSERVER variable is not set
+if [ -z "$BBSERVER" ] && [ -f bitbake.lock ] ; then
+    grep ":" bitbake.lock > /dev/null && BBSERVER=`cat bitbake.lock` bitbake --status-only
+    if [ $? = 0 ] ; then
+	echo "Shutting down bitbake memory resident server with bitbake -m"
+	BBSERVER=`cat bitbake.lock` bitbake -m
+    fi
+fi
+
diff --git a/oe-init-build-env-memres b/oe-init-build-env-memres
index 79b91b7..687d5e1 100755
--- a/oe-init-build-env-memres
+++ b/oe-init-build-env-memres
@@ -54,6 +54,21 @@  else
    unset OEROOT
    unset BBPATH
 fi
-bitbake --server-only -t xmlrpc -B localhost:$port
-export BBSERVER=localhost:$port
-echo "Bitbake server started on port $port, use bitbake -m to shut it down"
+res=1
+if [ -e bitbake.lock ] && grep : bitbake.lock > /dev/null ; then
+    BBSERVER=`cat bitbake.lock` bitbake --status-only
+    res=$?
+fi
+
+if [ $res != 0 ] ; then
+    bitbake --server-only -t xmlrpc -B localhost:$port
+fi
+
+export BBSERVER=`cat bitbake.lock`
+
+if [ $res = 0 ] ; then
+    echo "Using existing bitbake server at: $BBSERVER, use bitbake -m to shut it down"
+else
+    echo "Bitbake server started at: $BBSERVER, use bitbake -m to shut it down"
+fi
+unset res