ソースを参照

oe-init-build-env: Allow startup with and without memres

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.

(From OE-Core rev: d71059c86a8160f39af6ddfdd30c86835f4eb959)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jason Wessel 11 年 前
コミット
644a1a27ec
2 ファイル変更27 行追加3 行削除
  1. 9 0
      oe-init-build-env
  2. 18 3
      oe-init-build-env-memres

+ 9 - 0
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
+

+ 18 - 3
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