diff options
Diffstat (limited to 'bitbake')
-rw-r--r-- | bitbake/lib/bb/ui/knotty.py | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py index 3f2b77b6be..a8b968ccea 100644 --- a/bitbake/lib/bb/ui/knotty.py +++ b/bitbake/lib/bb/ui/knotty.py | |||
@@ -289,6 +289,7 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
289 | llevel, debug_domains = bb.msg.constructLogOptions() | 289 | llevel, debug_domains = bb.msg.constructLogOptions() |
290 | server.runCommand(["setEventMask", server.getEventHandle(), llevel, debug_domains, _evt_list]) | 290 | server.runCommand(["setEventMask", server.getEventHandle(), llevel, debug_domains, _evt_list]) |
291 | 291 | ||
292 | universe = False | ||
292 | if not params.observe_only: | 293 | if not params.observe_only: |
293 | params.updateFromServer(server) | 294 | params.updateFromServer(server) |
294 | params.updateToServer(server, os.environ.copy()) | 295 | params.updateToServer(server, os.environ.copy()) |
@@ -299,6 +300,8 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
299 | if 'msg' in cmdline and cmdline['msg']: | 300 | if 'msg' in cmdline and cmdline['msg']: |
300 | logger.error(cmdline['msg']) | 301 | logger.error(cmdline['msg']) |
301 | return 1 | 302 | return 1 |
303 | if cmdline['action'][0] == "buildTargets" and "universe" in cmdline['action'][1]: | ||
304 | universe = True | ||
302 | 305 | ||
303 | ret, error = server.runCommand(cmdline['action']) | 306 | ret, error = server.runCommand(cmdline['action']) |
304 | if error: | 307 | if error: |
@@ -444,8 +447,6 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
444 | logger.info("consider defining a PREFERRED_PROVIDER entry to match %s", event._item) | 447 | logger.info("consider defining a PREFERRED_PROVIDER entry to match %s", event._item) |
445 | continue | 448 | continue |
446 | if isinstance(event, bb.event.NoProvider): | 449 | if isinstance(event, bb.event.NoProvider): |
447 | return_value = 1 | ||
448 | errors = errors + 1 | ||
449 | if event._runtime: | 450 | if event._runtime: |
450 | r = "R" | 451 | r = "R" |
451 | else: | 452 | else: |
@@ -456,13 +457,20 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
456 | if event._close_matches: | 457 | if event._close_matches: |
457 | extra = ". Close matches:\n %s" % '\n '.join(event._close_matches) | 458 | extra = ". Close matches:\n %s" % '\n '.join(event._close_matches) |
458 | 459 | ||
460 | # For universe builds, only show these as warnings, not errors | ||
461 | h = logger.warning | ||
462 | if not universe: | ||
463 | return_value = 1 | ||
464 | errors = errors + 1 | ||
465 | h = logger.error | ||
466 | |||
459 | if event._dependees: | 467 | if event._dependees: |
460 | logger.error("Nothing %sPROVIDES '%s' (but %s %sDEPENDS on or otherwise requires it)%s", r, event._item, ", ".join(event._dependees), r, extra) | 468 | h("Nothing %sPROVIDES '%s' (but %s %sDEPENDS on or otherwise requires it)%s", r, event._item, ", ".join(event._dependees), r, extra) |
461 | else: | 469 | else: |
462 | logger.error("Nothing %sPROVIDES '%s'%s", r, event._item, extra) | 470 | h("Nothing %sPROVIDES '%s'%s", r, event._item, extra) |
463 | if event._reasons: | 471 | if event._reasons: |
464 | for reason in event._reasons: | 472 | for reason in event._reasons: |
465 | logger.error("%s", reason) | 473 | h("%s", reason) |
466 | continue | 474 | continue |
467 | 475 | ||
468 | if isinstance(event, bb.runqueue.sceneQueueTaskStarted): | 476 | if isinstance(event, bb.runqueue.sceneQueueTaskStarted): |