diff options
Diffstat (limited to 'bitbake')
-rwxr-xr-x | bitbake/bin/bitbake | 16 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 4 |
2 files changed, 12 insertions, 8 deletions
diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake index b173f16ce1..cd01992bae 100755 --- a/bitbake/bin/bitbake +++ b/bitbake/bin/bitbake | |||
@@ -203,7 +203,7 @@ class BitBakeConfigParameters(cookerdata.ConfigParameters): | |||
203 | return options, targets[1:] | 203 | return options, targets[1:] |
204 | 204 | ||
205 | 205 | ||
206 | def start_server(servermodule, configParams, configuration): | 206 | def start_server(servermodule, configParams, configuration, features): |
207 | server = servermodule.BitBakeServer() | 207 | server = servermodule.BitBakeServer() |
208 | if configParams.bind: | 208 | if configParams.bind: |
209 | (host, port) = configParams.bind.split(':') | 209 | (host, port) = configParams.bind.split(':') |
@@ -216,7 +216,7 @@ def start_server(servermodule, configParams, configuration): | |||
216 | try: | 216 | try: |
217 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) | 217 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) |
218 | 218 | ||
219 | cooker = bb.cooker.BBCooker(configuration) | 219 | cooker = bb.cooker.BBCooker(configuration, features) |
220 | 220 | ||
221 | server.addcooker(cooker) | 221 | server.addcooker(cooker) |
222 | server.saveConnectionDetails() | 222 | server.saveConnectionDetails() |
@@ -296,9 +296,14 @@ def main(): | |||
296 | # Clear away any spurious environment variables while we stoke up the cooker | 296 | # Clear away any spurious environment variables while we stoke up the cooker |
297 | cleanedvars = bb.utils.clean_environment() | 297 | cleanedvars = bb.utils.clean_environment() |
298 | 298 | ||
299 | featureset = [] | ||
300 | if not configParams.server_only: | ||
301 | # Collect the feature set for the UI | ||
302 | featureset = getattr(ui_module, "featureSet", []) | ||
303 | |||
299 | if not configParams.remote_server: | 304 | if not configParams.remote_server: |
300 | # we start a server with a given configuration | 305 | # we start a server with a given configuration |
301 | server = start_server(servermodule, configParams, configuration) | 306 | server = start_server(servermodule, configParams, configuration, featureset) |
302 | bb.event.ui_queue = [] | 307 | bb.event.ui_queue = [] |
303 | else: | 308 | else: |
304 | # we start a stub server that is actually a XMLRPClient that connects to a real server | 309 | # we start a stub server that is actually a XMLRPClient that connects to a real server |
@@ -307,9 +312,6 @@ def main(): | |||
307 | server.saveConnectionConfigParams(configParams) | 312 | server.saveConnectionConfigParams(configParams) |
308 | 313 | ||
309 | if not configParams.server_only: | 314 | if not configParams.server_only: |
310 | # Collect the feature set for the UI | ||
311 | featureset = getattr(ui_module, "featureSet", []) | ||
312 | |||
313 | if configParams.status_only: | 315 | if configParams.status_only: |
314 | try: | 316 | try: |
315 | server_connection = server.establishConnection(featureset) | 317 | server_connection = server.establishConnection(featureset) |
@@ -326,7 +328,7 @@ def main(): | |||
326 | if configParams.kill_server: | 328 | if configParams.kill_server: |
327 | bb.fatal("Server already killed") | 329 | bb.fatal("Server already killed") |
328 | configParams.bind = configParams.remote_server | 330 | configParams.bind = configParams.remote_server |
329 | start_server(servermodule, configParams, configuration) | 331 | start_server(servermodule, configParams, configuration, featureset) |
330 | bb.event.ui_queue = [] | 332 | bb.event.ui_queue = [] |
331 | server_connection = server.establishConnection(featureset) | 333 | server_connection = server.establishConnection(featureset) |
332 | 334 | ||
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 5d3ac607f5..e6916a621b 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -111,10 +111,12 @@ class BBCooker: | |||
111 | Manages one bitbake build run | 111 | Manages one bitbake build run |
112 | """ | 112 | """ |
113 | 113 | ||
114 | def __init__(self, configuration): | 114 | def __init__(self, configuration, featureSet = []): |
115 | self.recipecache = None | 115 | self.recipecache = None |
116 | self.skiplist = {} | 116 | self.skiplist = {} |
117 | self.featureset = CookerFeatures() | 117 | self.featureset = CookerFeatures() |
118 | for f in featureSet: | ||
119 | self.featureset.setFeature(f) | ||
118 | 120 | ||
119 | self.configuration = configuration | 121 | self.configuration = configuration |
120 | 122 | ||