summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-20 23:01:48 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-21 00:05:44 +0100
commite57497a24b6157c92519a34accd66035a39ad1f8 (patch)
tree1621e8b78b782b14dd3e70557ff82152e0855e46
parent22a0b3cf73d2689db0c118b37aa7492632f8b0a7 (diff)
downloadbitbake-e57497a24b6157c92519a34accd66035a39ad1f8.tar.gz
bitbake/cookerdata: Explicitly specify cooker configuration options
As the code stands today its hard to know which configuration variables are used by which parts of the system. Some are used by the UIs, some by bin/bitbake itself, some by cooker. This patch changes the configuration to just contain the variables cooker uses, and changes bin/bitbake to access the variables it needs directly which hopefully lets us start to untangle this mess. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-xbin/bitbake20
-rw-r--r--lib/bb/cookerdata.py13
2 files changed, 21 insertions, 12 deletions
diff --git a/bin/bitbake b/bin/bitbake
index c87e5b398..ac35b94e3 100755
--- a/bin/bitbake
+++ b/bin/bitbake
@@ -193,8 +193,8 @@ def main():
# Server type can be xmlrpc, process or none currently, if nothing is specified,
# the default server is process
- if configuration.servertype:
- server_type = configuration.servertype
+ if configParams.servertype:
+ server_type = configParams.servertype
else:
server_type = 'process'
@@ -205,13 +205,13 @@ def main():
sys.exit("FATAL: Invalid server type '%s' specified.\n"
"Valid interfaces: xmlrpc, process [default], none." % servertype)
- if configuration.server_only:
- if configuration.servertype != "xmlrpc":
+ if configParams.server_only:
+ if configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '--server-only' is defined, we must set the servertype as 'xmlrpc'.\n")
- if not configuration.bind:
+ if not configParams.bind:
sys.exit("FATAL: The '--server-only' option requires a name/address to bind to with the -B option.\n")
- if configuration.bind and configuration.servertype != "xmlrpc":
+ if configParams.bind and configParams.servertype != "xmlrpc":
sys.exit("FATAL: If '-B' or '--bind' is defined, we must set the servertype as 'xmlrpc'.\n")
if "BBDEBUG" in os.environ:
@@ -219,7 +219,7 @@ def main():
if level > configuration.debug:
configuration.debug = level
- bb.msg.init_msgconfig(configuration.verbose, configuration.debug,
+ bb.msg.init_msgconfig(configParams.verbose, configuration.debug,
configuration.debug_domains)
# Ensure logging messages get sent to the UI as events
@@ -230,8 +230,8 @@ def main():
cleanedvars = bb.utils.clean_environment()
server = server.BitBakeServer()
- if configuration.bind:
- server.initServer((configuration.bind, 0))
+ if configParams.bind:
+ server.initServer((configParams.bind, 0))
else:
server.initServer()
@@ -262,7 +262,7 @@ def main():
logger.removeHandler(handler)
- if not configuration.server_only:
+ if not configParams.server_only:
# Setup a connection to the server (cooker)
server_connection = server.establishConnection()
diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index 0b436b37e..70e22b4a5 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -117,11 +117,20 @@ class CookerConfiguration(object):
self.postfile = []
self.debug = 0
self.cmd = None
+ self.abort = True
+ self.force = False
+ self.ui = None
+ self.profile = False
+ self.nosetscene = False
+ self.invalidate_stamp = False
+ self.dump_signatures = False
+ self.dry_run = False
def setConfigParameters(self, parameters):
self.params = parameters
- for key, val in parameters.options.__dict__.items():
- setattr(self, key, val)
+ for key in self.__dict__.keys():
+ if key in parameters.options.__dict__:
+ setattr(self, key, parameters.options.__dict__[key])
def setServerRegIdleCallback(self, srcb):
self.server_register_idlecallback = srcb