diff options
Diffstat (limited to 'bitbake/lib')
| -rw-r--r-- | bitbake/lib/bb/event.py | 27 | ||||
| -rw-r--r-- | bitbake/lib/bb/ui/knotty.py | 15 |
2 files changed, 40 insertions, 2 deletions
diff --git a/bitbake/lib/bb/event.py b/bitbake/lib/bb/event.py index 9b4a4f97b5..a5f026e151 100644 --- a/bitbake/lib/bb/event.py +++ b/bitbake/lib/bb/event.py | |||
| @@ -647,6 +647,33 @@ class MetadataEvent(Event): | |||
| 647 | self.type = eventtype | 647 | self.type = eventtype |
| 648 | self._localdata = eventdata | 648 | self._localdata = eventdata |
| 649 | 649 | ||
| 650 | class ProcessStarted(Event): | ||
| 651 | """ | ||
| 652 | Generic process started event (usually part of the initial startup) | ||
| 653 | where further progress events will be delivered | ||
| 654 | """ | ||
| 655 | def __init__(self, processname, total): | ||
| 656 | Event.__init__(self) | ||
| 657 | self.processname = processname | ||
| 658 | self.total = total | ||
| 659 | |||
| 660 | class ProcessProgress(Event): | ||
| 661 | """ | ||
| 662 | Generic process progress event (usually part of the initial startup) | ||
| 663 | """ | ||
| 664 | def __init__(self, processname, progress): | ||
| 665 | Event.__init__(self) | ||
| 666 | self.processname = processname | ||
| 667 | self.progress = progress | ||
| 668 | |||
| 669 | class ProcessFinished(Event): | ||
| 670 | """ | ||
| 671 | Generic process finished event (usually part of the initial startup) | ||
| 672 | """ | ||
| 673 | def __init__(self, processname): | ||
| 674 | Event.__init__(self) | ||
| 675 | self.processname = processname | ||
| 676 | |||
| 650 | class SanityCheck(Event): | 677 | class SanityCheck(Event): |
| 651 | """ | 678 | """ |
| 652 | Event to run sanity checks, either raise errors or generate events as return status. | 679 | Event to run sanity checks, either raise errors or generate events as return status. |
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py index 2513501500..6fdaafedb7 100644 --- a/bitbake/lib/bb/ui/knotty.py +++ b/bitbake/lib/bb/ui/knotty.py | |||
| @@ -90,7 +90,7 @@ class NonInteractiveProgress(object): | |||
| 90 | self.msg = msg | 90 | self.msg = msg |
| 91 | self.maxval = maxval | 91 | self.maxval = maxval |
| 92 | 92 | ||
| 93 | def start(self): | 93 | def start(self, update=True): |
| 94 | self.fobj.write("%s..." % self.msg) | 94 | self.fobj.write("%s..." % self.msg) |
| 95 | self.fobj.flush() | 95 | self.fobj.flush() |
| 96 | return self | 96 | return self |
| @@ -304,7 +304,7 @@ _evt_list = [ "bb.runqueue.runQueueExitWait", "bb.event.LogExecTTY", "logging.Lo | |||
| 304 | "bb.event.MultipleProviders", "bb.event.NoProvider", "bb.runqueue.sceneQueueTaskStarted", | 304 | "bb.event.MultipleProviders", "bb.event.NoProvider", "bb.runqueue.sceneQueueTaskStarted", |
| 305 | "bb.runqueue.runQueueTaskStarted", "bb.runqueue.runQueueTaskFailed", "bb.runqueue.sceneQueueTaskFailed", | 305 | "bb.runqueue.runQueueTaskStarted", "bb.runqueue.runQueueTaskFailed", "bb.runqueue.sceneQueueTaskFailed", |
| 306 | "bb.event.BuildBase", "bb.build.TaskStarted", "bb.build.TaskSucceeded", "bb.build.TaskFailedSilent", | 306 | "bb.event.BuildBase", "bb.build.TaskStarted", "bb.build.TaskSucceeded", "bb.build.TaskFailedSilent", |
| 307 | "bb.build.TaskProgress"] | 307 | "bb.build.TaskProgress", "bb.event.ProcessStarted", "bb.event.ProcessProgress", "bb.event.ProcessFinished"] |
| 308 | 308 | ||
| 309 | def main(server, eventHandler, params, tf = TerminalFilter): | 309 | def main(server, eventHandler, params, tf = TerminalFilter): |
| 310 | 310 | ||
| @@ -579,6 +579,17 @@ def main(server, eventHandler, params, tf = TerminalFilter): | |||
| 579 | if isinstance(event, bb.event.DepTreeGenerated): | 579 | if isinstance(event, bb.event.DepTreeGenerated): |
| 580 | continue | 580 | continue |
| 581 | 581 | ||
| 582 | if isinstance(event, bb.event.ProcessStarted): | ||
| 583 | parseprogress = new_progress(event.processname, event.total) | ||
| 584 | parseprogress.start(False) | ||
| 585 | continue | ||
| 586 | if isinstance(event, bb.event.ProcessProgress): | ||
| 587 | parseprogress.update(event.progress) | ||
| 588 | continue | ||
| 589 | if isinstance(event, bb.event.ProcessFinished): | ||
| 590 | parseprogress.finish() | ||
| 591 | continue | ||
| 592 | |||
| 582 | # ignore | 593 | # ignore |
| 583 | if isinstance(event, (bb.event.BuildBase, | 594 | if isinstance(event, (bb.event.BuildBase, |
| 584 | bb.event.MetadataEvent, | 595 | bb.event.MetadataEvent, |
