summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2020-08-24 12:41:53 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-08-24 17:47:32 +0100
commitf0535beecc692a6213be2a22f9eef5956450ecf8 (patch)
tree4e87dc9b4a2d134c3215c2d25e8138851ad6ba4e
parent423c046f2173aaff3072dc3d0882d01b8a0b0212 (diff)
downloadbitbake-f0535beecc692a6213be2a22f9eef5956450ecf8.tar.gz
cooker/cookerdata/main: Improve loglevel handling
Rather than passing debug/verbose/debug_domains around, pass the computed output of these. Ensure that the cooker sets the levels to match the levels currently set in the UI and generally try and make it easier to understand what the code is doing. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py7
-rw-r--r--lib/bb/cookerdata.py10
-rwxr-xr-xlib/bb/main.py8
3 files changed, 16 insertions, 9 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 57caf38c2..c34de303f 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -446,7 +446,12 @@ class BBCooker:
logger.debug(1, "Marking as dirty due to '%s' option change to '%s'" % (o, options[o]))
print("Marking as dirty due to '%s' option change to '%s'" % (o, options[o]))
clean = False
- setattr(self.configuration, o, options[o])
+ if hasattr(self.configuration, o):
+ setattr(self.configuration, o, options[o])
+
+ bb.msg.loggerDefaultLogLevel = self.configuration.default_loglevel
+ bb.msg.loggerDefaultDomains = self.configuration.debug_domains
+
for k in bb.utils.approved_variables():
if k in environment and k not in self.configuration.env:
logger.debug(1, "Updating new environment variable %s to %s" % (k, environment[k]))
diff --git a/lib/bb/cookerdata.py b/lib/bb/cookerdata.py
index 6bf411bcd..f43610e7f 100644
--- a/lib/bb/cookerdata.py
+++ b/lib/bb/cookerdata.py
@@ -58,13 +58,15 @@ class ConfigParameters(object):
def updateToServer(self, server, environment):
options = {}
for o in ["abort", "force", "invalidate_stamp",
- "debug", "dry_run", "dump_signatures",
- "debug_domains", "extra_assume_provided", "profile",
+ "dry_run", "dump_signatures",
+ "extra_assume_provided", "profile",
"prefile", "postfile", "server_timeout"]:
options[o] = getattr(self.options, o)
options['build_verbose_shell'] = self.options.verbose
options['build_verbose_stdout'] = self.options.verbose
+ options['default_loglevel'] = bb.msg.loggerDefaultLogLevel
+ options['debug_domains'] = bb.msg.loggerDefaultDomains
ret, error = server.runCommand(["updateConfig", options, environment, sys.argv])
if error:
@@ -114,11 +116,11 @@ class CookerConfiguration(object):
"""
def __init__(self):
- self.debug_domains = []
+ self.debug_domains = bb.msg.loggerDefaultDomains
+ self.default_loglevel = bb.msg.loggerDefaultLogLevel
self.extra_assume_provided = []
self.prefile = []
self.postfile = []
- self.debug = 0
self.cmd = None
self.abort = True
self.force = False
diff --git a/lib/bb/main.py b/lib/bb/main.py
index af2880f8d..e483cce1a 100755
--- a/lib/bb/main.py
+++ b/lib/bb/main.py
@@ -357,11 +357,11 @@ def bitbake_main(configParams, configuration):
if "BBDEBUG" in os.environ:
level = int(os.environ["BBDEBUG"])
- if level > configuration.debug:
- configuration.debug = level
+ if level > configParams.debug:
+ configParams.debug = level
- bb.msg.init_msgconfig(configParams.verbose, configuration.debug,
- configuration.debug_domains)
+ bb.msg.init_msgconfig(configParams.verbose, configParams.debug,
+ configParams.debug_domains)
server_connection, ui_module = setup_bitbake(configParams, configuration)
# No server connection