diff options
author | Dongxiao Xu <dongxiao.xu@intel.com> | 2012-04-15 15:26:37 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-04-15 17:31:57 +0100 |
commit | 74211e0372da92bd6b8600bee9e5624f044127a6 (patch) | |
tree | 79526597accae1f9c046d51f6d7c1f8c9427afdb /bitbake/lib/bb/ui/crumbs/runningbuild.py | |
parent | a5210e47b08e0ee42e9e188d83953203147a994d (diff) | |
download | poky-74211e0372da92bd6b8600bee9e5624f044127a6.tar.gz |
Hob: Handle NoProvider event in runningbuild module
If NoProvider event is received, we will handle it in runningbuild
module and send notification to Hob instance, avoiding stepping into the
final page with no image built out.
This fixes [YOCTO #2249]
(Bitbake rev: 067bc46a0fbc542fef1fcaa406ad3737a4c5a55a)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/ui/crumbs/runningbuild.py')
-rw-r--r-- | bitbake/lib/bb/ui/crumbs/runningbuild.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/runningbuild.py b/bitbake/lib/bb/ui/crumbs/runningbuild.py index 042902e48c..8cf36ee24e 100644 --- a/bitbake/lib/bb/ui/crumbs/runningbuild.py +++ b/bitbake/lib/bb/ui/crumbs/runningbuild.py | |||
@@ -82,6 +82,9 @@ class RunningBuild (gobject.GObject): | |||
82 | 'log-error' : (gobject.SIGNAL_RUN_LAST, | 82 | 'log-error' : (gobject.SIGNAL_RUN_LAST, |
83 | gobject.TYPE_NONE, | 83 | gobject.TYPE_NONE, |
84 | ()), | 84 | ()), |
85 | 'no-provider' : (gobject.SIGNAL_RUN_LAST, | ||
86 | gobject.TYPE_NONE, | ||
87 | (gobject.TYPE_PYOBJECT,)), | ||
85 | } | 88 | } |
86 | pids_to_task = {} | 89 | pids_to_task = {} |
87 | tasks_to_iter = {} | 90 | tasks_to_iter = {} |
@@ -320,6 +323,20 @@ class RunningBuild (gobject.GObject): | |||
320 | message["title"] = "" | 323 | message["title"] = "" |
321 | message["task"] = event.taskstring | 324 | message["task"] = event.taskstring |
322 | self.emit("task-started", message) | 325 | self.emit("task-started", message) |
326 | elif isinstance(event, bb.event.NoProvider): | ||
327 | msg = "" | ||
328 | if event._runtime: | ||
329 | r = "R" | ||
330 | else: | ||
331 | r = "" | ||
332 | if event._dependees: | ||
333 | msg = "Nothing %sPROVIDES '%s' (but %s %sDEPENDS on or otherwise requires it)\n" % (r, event._item, ", ".join(event._dependees), r) | ||
334 | else: | ||
335 | msg = "Nothing %sPROVIDES '%s'\n" % (r, event._item) | ||
336 | if event._reasons: | ||
337 | for reason in event._reasons: | ||
338 | msg += ("%s\n" % reason) | ||
339 | self.emit("no-provider", msg) | ||
323 | 340 | ||
324 | return | 341 | return |
325 | 342 | ||