From patchwork Mon Jan 9 17:00:53 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [bitbake-devel] bitbake/knotty: Show summary of warning/error messages shown Date: Mon, 09 Jan 2012 17:00:53 -0000 From: Richard Purdie X-Patchwork-Id: 18799 Message-Id: <1326128453.9278.23.camel@ted> To: bitbake-devel Show a summary count of warning/errors messages shown to the user during the build and make it clear when an error exit code is being set. [YOCTO #1540] Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py index 38acb47..0340619 100644 --- a/bitbake/lib/bb/ui/knotty.py +++ b/bitbake/lib/bb/ui/knotty.py @@ -105,6 +105,8 @@ def main(server, eventHandler): cacheprogress = None shutdown = 0 return_value = 0 + errors = 0 + warnings = 0 while True: try: event = eventHandler.waitEvent(0.25) @@ -123,13 +125,15 @@ def main(server, eventHandler): if isinstance(event, logging.LogRecord): if event.levelno >= format.ERROR: + errors = errors + 1 return_value = 1 + if event.levelno >= format.WARNING: + warnings = warnings + 1 # For "normal" logging conditions, don't show note logs from tasks # but do show them if the user has changed the default log level to # include verbose/debug messages - #if logger.getEffectiveLevel() > format.VERBOSE: if event.taskpid != 0 and event.levelno <= format.NOTE: - continue + continue logger.handle(event) continue @@ -208,6 +212,7 @@ def main(server, eventHandler): continue if isinstance(event, bb.event.NoProvider): return_value = 1 + errors = errors + 1 if event._runtime: r = "R" else: @@ -267,4 +272,8 @@ def main(server, eventHandler): server.runCommand(["stateShutdown"]) shutdown = shutdown + 1 pass + if warnings: + print("Summary: There were %s WARNING messages shown.\n" % warnings) + if return_value: + print("Summary: There were %s ERROR messages shown, returning a non-zero exit code.\n" % errors) return return_value