summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake')
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/builder.py18
-rw-r--r--bitbake/lib/bb/ui/crumbs/hobeventhandler.py21
-rw-r--r--bitbake/lib/bb/ui/crumbs/runningbuild.py17
3 files changed, 31 insertions, 25 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py
index 48053b35c5..dd59d59d10 100755
--- a/bitbake/lib/bb/ui/crumbs/builder.py
+++ b/bitbake/lib/bb/ui/crumbs/builder.py
@@ -349,6 +349,7 @@ class Builder(gtk.Window):
349 self.handler.build.connect("build-failed", self.handler_build_failed_cb) 349 self.handler.build.connect("build-failed", self.handler_build_failed_cb)
350 self.handler.build.connect("task-started", self.handler_task_started_cb) 350 self.handler.build.connect("task-started", self.handler_task_started_cb)
351 self.handler.build.connect("log-error", self.handler_build_failure_cb) 351 self.handler.build.connect("log-error", self.handler_build_failure_cb)
352 self.handler.build.connect("no-provider", self.handler_no_provider_cb)
352 self.handler.connect("generating-data", self.handler_generating_data_cb) 353 self.handler.connect("generating-data", self.handler_generating_data_cb)
353 self.handler.connect("data-generated", self.handler_data_generated_cb) 354 self.handler.connect("data-generated", self.handler_data_generated_cb)
354 self.handler.connect("command-succeeded", self.handler_command_succeeded_cb) 355 self.handler.connect("command-succeeded", self.handler_command_succeeded_cb)
@@ -624,10 +625,6 @@ class Builder(gtk.Window):
624 self.rcppkglist_populated() 625 self.rcppkglist_populated()
625 if self.current_step == self.FAST_IMAGE_GENERATING: 626 if self.current_step == self.FAST_IMAGE_GENERATING:
626 self.generate_image_async() 627 self.generate_image_async()
627 elif self.current_step == self.PACKAGE_GENERATING:
628 self.switch_page(self.PACKAGE_GENERATED)
629 elif self.current_step == self.IMAGE_GENERATING:
630 self.switch_page(self.IMAGE_GENERATED)
631 628
632 def handler_command_failed_cb(self, handler, msg): 629 def handler_command_failed_cb(self, handler, msg):
633 if msg: 630 if msg:
@@ -755,6 +752,11 @@ class Builder(gtk.Window):
755 self.handler.build_succeeded_async() 752 self.handler.build_succeeded_async()
756 self.stopping = False 753 self.stopping = False
757 754
755 if self.current_step == self.PACKAGE_GENERATING:
756 self.switch_page(self.PACKAGE_GENERATED)
757 elif self.current_step == self.IMAGE_GENERATING:
758 self.switch_page(self.IMAGE_GENERATED)
759
758 def build_failed(self): 760 def build_failed(self):
759 if self.stopping: 761 if self.stopping:
760 status = "stop" 762 status = "stop"
@@ -785,6 +787,14 @@ class Builder(gtk.Window):
785 def handler_build_failed_cb(self, running_build): 787 def handler_build_failed_cb(self, running_build):
786 self.build_failed() 788 self.build_failed()
787 789
790 def handler_no_provider_cb(self, running_build, msg):
791 dialog = CrumbsMessageDialog(self, msg, gtk.STOCK_DIALOG_INFO)
792 button = dialog.add_button("Close", gtk.RESPONSE_OK)
793 HobButton.style_button(button)
794 dialog.run()
795 dialog.destroy()
796 self.build_failed()
797
788 def handler_task_started_cb(self, running_build, message): 798 def handler_task_started_cb(self, running_build, message):
789 fraction = message["current"] * 1.0/message["total"] 799 fraction = message["current"] * 1.0/message["total"]
790 title = "Build packages" 800 title = "Build packages"
diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
index 7a3cc6b3f9..a61cca014b 100644
--- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
+++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py
@@ -180,27 +180,6 @@ class HobHandler(gobject.GObject):
180 elif isinstance(event, bb.command.CommandCompleted): 180 elif isinstance(event, bb.command.CommandCompleted):
181 self.current_phase = None 181 self.current_phase = None
182 self.run_next_command() 182 self.run_next_command()
183 # TODO: Currently there are NoProvider issues when generate
184 # universe tree dependency for non-x86 architecture.
185 # Comment the follow code to enable the build of non-x86
186 # architectures in Hob.
187 #elif isinstance(event, bb.event.NoProvider):
188 # if event._runtime:
189 # r = "R"
190 # else:
191 # r = ""
192 # if event._dependees:
193 # self.error_msg += " Nothing %sPROVIDES '%s' (but %s %sDEPENDS on or otherwise requires it)" % (r, event._item, ", ".join(event._dependees), r)
194 # else:
195 # self.error_msg += " Nothing %sPROVIDES '%s'" % (r, event._item)
196 # if event._reasons:
197 # for reason in event._reasons:
198 # self.error_msg += " %s" % reason
199
200 # self.commands_async = []
201 # self.emit("command-failed", self.error_msg)
202 # self.error_msg = ""
203
204 elif isinstance(event, bb.command.CommandFailed): 183 elif isinstance(event, bb.command.CommandFailed):
205 self.commands_async = [] 184 self.commands_async = []
206 self.clear_busy() 185 self.clear_busy()
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