summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/command.py4
-rw-r--r--bitbake/lib/bb/cooker.py4
-rw-r--r--bitbake/lib/bb/cookerdata.py11
-rw-r--r--bitbake/lib/bb/ui/knotty.py1
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
274class CommandsAsync: 278class 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.")