aboutsummaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorLiping Ke <liping.ke@intel.com>2011-06-30 23:02:48 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-07-01 16:56:39 +0100
commit5591329948648927154024bcb882c45766defac2 (patch)
tree982060d27c651da4b83a86cc48264eb3d836eaa8 /bin
parentb9698d0e8d681f1fd6ab8d28530136b85411386f (diff)
downloadbitbake-5591329948648927154024bcb882c45766defac2.tar.gz
bitbake: Make bitbake server type configurable.
Add -t options in bitbake for configuring server type. Signed-off-by: Liping Ke <liping.ke@intel.com> Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bin')
-rwxr-xr-xbin/bitbake25
1 files changed, 18 insertions, 7 deletions
diff --git a/bin/bitbake b/bin/bitbake
index 5835ffc6e..d577e054f 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -39,15 +39,11 @@ import bb.msg
from bb import cooker
from bb import ui
from bb import server
-#from bb.server import none
-from bb.server import process
-#from bb.server import xmlrpc
__version__ = "1.13.2"
logger = logging.getLogger("BitBake")
-
class BBConfiguration(object):
"""
Manages build options and configurations for one run
@@ -160,6 +156,9 @@ Default BBFILES are the .bb files in the current directory.""")
parser.add_option("-u", "--ui", help = "userinterface to use",
action = "store", dest = "ui")
+ parser.add_option("-t", "--servertype", help = "Choose which server to use, none, process or xmlrpc",
+ action = "store", dest = "servertype")
+
parser.add_option("", "--revisions-changed", help = "Set the exit code depending on whether upstream floating revisions have changed or not",
action = "store_true", dest = "revisions_changed", default = False)
@@ -170,6 +169,20 @@ Default BBFILES are the .bb files in the current directory.""")
ui_main = get_ui(configuration)
+ # Server type could be xmlrpc or none currently, if nothing is specified,
+ # default server would be none
+ if configuration.servertype:
+ server_type = configuration.servertype
+ else:
+ server_type = 'process'
+
+ try:
+ module = __import__("bb.server", fromlist = [server_type])
+ server = getattr(module, server_type)
+ except AttributeError:
+ sys.exit("FATAL: Invalid server type '%s' specified.\n"
+ "Valid interfaces: xmlrpc, process, none [default]." % servertype)
+
# Save a logfile for cooker into the current working directory. When the
# server is daemonized this logfile will be truncated.
cooker_logfile = os.path.join(os.getcwd(), "cooker.log")
@@ -186,9 +199,7 @@ Default BBFILES are the .bb files in the current directory.""")
# of the UIs (e.g. for DISPLAY, etc.)
bb.utils.clean_environment()
- #server = bb.server.none.BitBakeServer()
- server = bb.server.process.BitBakeServer()
- #server = bb.server.xmlrpc.BitBakeServer()
+ server = server.BitBakeServer()
server.initServer()
idle = server.getServerIdleCB()