summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbin/bitbake16
-rw-r--r--lib/bb/cooker.py4
2 files changed, 12 insertions, 8 deletions
diff --git a/bin/bitbake b/bin/bitbake
index b173f16ce..cd01992ba 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -203,7 +203,7 @@ class BitBakeConfigParameters(cookerdata.ConfigParameters):
return options, targets[1:]
-def start_server(servermodule, configParams, configuration):
+def start_server(servermodule, configParams, configuration, features):
server = servermodule.BitBakeServer()
if configParams.bind:
(host, port) = configParams.bind.split(':')
@@ -216,7 +216,7 @@ def start_server(servermodule, configParams, configuration):
try:
configuration.setServerRegIdleCallback(server.getServerIdleCB())
- cooker = bb.cooker.BBCooker(configuration)
+ cooker = bb.cooker.BBCooker(configuration, features)
server.addcooker(cooker)
server.saveConnectionDetails()
@@ -296,9 +296,14 @@ def main():
# Clear away any spurious environment variables while we stoke up the cooker
cleanedvars = bb.utils.clean_environment()
+ featureset = []
+ if not configParams.server_only:
+ # Collect the feature set for the UI
+ featureset = getattr(ui_module, "featureSet", [])
+
if not configParams.remote_server:
# we start a server with a given configuration
- server = start_server(servermodule, configParams, configuration)
+ server = start_server(servermodule, configParams, configuration, featureset)
bb.event.ui_queue = []
else:
# we start a stub server that is actually a XMLRPClient that connects to a real server
@@ -307,9 +312,6 @@ def main():
server.saveConnectionConfigParams(configParams)
if not configParams.server_only:
- # Collect the feature set for the UI
- featureset = getattr(ui_module, "featureSet", [])
-
if configParams.status_only:
try:
server_connection = server.establishConnection(featureset)
@@ -326,7 +328,7 @@ def main():
if configParams.kill_server:
bb.fatal("Server already killed")
configParams.bind = configParams.remote_server
- start_server(servermodule, configParams, configuration)
+ start_server(servermodule, configParams, configuration, featureset)
bb.event.ui_queue = []
server_connection = server.establishConnection(featureset)
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 5d3ac607f..e6916a621 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -111,10 +111,12 @@ class BBCooker:
Manages one bitbake build run
"""
- def __init__(self, configuration):
+ def __init__(self, configuration, featureSet = []):
self.recipecache = None
self.skiplist = {}
self.featureset = CookerFeatures()
+ for f in featureSet:
+ self.featureset.setFeature(f)
self.configuration = configuration