diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-23 12:58:22 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-23 20:06:06 +0100 |
commit | ff5fba8462151364a3834453ee5c861f471cf8d3 (patch) | |
tree | 93b87a7e998c36e368802e77b8f070f7d85758eb /bitbake | |
parent | b98bd94e2afa33ecc9861eea046fa7bd386b07c3 (diff) | |
download | poky-ff5fba8462151364a3834453ee5c861f471cf8d3.tar.gz |
bitbake: knotty: Ensure commandline parameters are updated in memres server
When using options like -k, -f, -v and so on with the memory resident
server, they'd currently only be set on the initial values passed to
the original command. This ensures they now match those specified
on the commandline for the options where this makes sense.
To make this work, a command to update the options on the server side
is required so this is added.
[YOCTO #5292]
(Bitbake rev: 1c75cc4d0c8b606c1fe76e6bf60bf6a32298b105)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/command.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/cooker.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/cookerdata.py | 11 | ||||
-rw-r--r-- | bitbake/lib/bb/ui/knotty.py | 1 |
4 files changed, 20 insertions, 0 deletions
diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py index 0cfed0a969..60f9ac08aa 100644 --- a/bitbake/lib/bb/command.py +++ b/bitbake/lib/bb/command.py | |||
@@ -271,6 +271,10 @@ class CommandsSync: | |||
271 | # we always take and leave the cooker in state.initial | 271 | # we always take and leave the cooker in state.initial |
272 | setFeatures.readonly = True | 272 | setFeatures.readonly = True |
273 | 273 | ||
274 | def updateConfig(self, command, params): | ||
275 | options = params[0] | ||
276 | command.cooker.updateConfigOpts(options) | ||
277 | |||
274 | class CommandsAsync: | 278 | class CommandsAsync: |
275 | """ | 279 | """ |
276 | A class of asynchronous commands | 280 | A class of asynchronous commands |
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index f463603d5a..c6c69c30ea 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
@@ -371,6 +371,10 @@ class BBCooker: | |||
371 | 371 | ||
372 | self.handleCollections( self.data.getVar("BBFILE_COLLECTIONS", True) ) | 372 | self.handleCollections( self.data.getVar("BBFILE_COLLECTIONS", True) ) |
373 | 373 | ||
374 | def updateConfigOpts(self,options): | ||
375 | for o in options: | ||
376 | setattr(self.configuration, o, options[o]) | ||
377 | |||
374 | def runCommands(self, server, data, abort): | 378 | def runCommands(self, server, data, abort): |
375 | """ | 379 | """ |
376 | Run any queued asynchronous command | 380 | Run any queued asynchronous command |
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py index 60a6d516af..470d5381ae 100644 --- a/bitbake/lib/bb/cookerdata.py +++ b/bitbake/lib/bb/cookerdata.py | |||
@@ -69,6 +69,17 @@ class ConfigParameters(object): | |||
69 | if bbpkgs: | 69 | if bbpkgs: |
70 | self.options.pkgs_to_build.extend(bbpkgs.split()) | 70 | self.options.pkgs_to_build.extend(bbpkgs.split()) |
71 | 71 | ||
72 | def updateToServer(self, server): | ||
73 | options = {} | ||
74 | for o in ["abort", "tryaltconfigs", "force", "invalidate_stamp", | ||
75 | "verbose", "debug", "dry_run", "dump_signatures", | ||
76 | "debug_domains", "extra_assume_provided", "profile"]: | ||
77 | options[o] = getattr(self.options, o) | ||
78 | |||
79 | ret, error = server.runCommand(["updateConfig", options]) | ||
80 | if error: | ||
81 | raise Exception("Unable to update the server configuration with local parameters: %s" % error) | ||
82 | |||
72 | def parseActions(self): | 83 | def parseActions(self): |
73 | # Parse any commandline into actions | 84 | # Parse any commandline into actions |
74 | action = {'action':None, 'msg':None} | 85 | action = {'action':None, 'msg':None} |
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py index 307886d780..9e58b31727 100644 --- a/bitbake/lib/bb/ui/knotty.py +++ b/bitbake/lib/bb/ui/knotty.py | |||
@@ -284,6 +284,7 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
284 | 284 | ||
285 | if not params.observe_only: | 285 | if not params.observe_only: |
286 | params.updateFromServer(server) | 286 | params.updateFromServer(server) |
287 | params.updateToServer(server) | ||
287 | cmdline = params.parseActions() | 288 | cmdline = params.parseActions() |
288 | if not cmdline: | 289 | if not cmdline: |
289 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") | 290 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") |