aboutsummaryrefslogtreecommitdiffstats
path: root/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2007-08-11 18:18:55 +0000
committerRichard Purdie <rpurdie@linux.intel.com>2007-08-11 18:18:55 +0000
commit03a67eb10b550e5638dba83b8c9549560fe3bd07 (patch)
treec96d625607784b84db3ba45c3a2d78e9ebca6675 /lib/bb/runqueue.py
parent656f3bd77b21d3bab3a6b5eaef0d1765f44cea50 (diff)
downloadbitbake-03a67eb10b550e5638dba83b8c9549560fe3bd07.tar.gz
runqueue.py: Improve the progress indicator by skipping tasks that have already run before starting the build rather than during it
Diffstat (limited to 'lib/bb/runqueue.py')
-rw-r--r--lib/bb/runqueue.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index 6852dc3cd..2f0e04f01 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -482,6 +482,18 @@ class RunQueue:
def sigint_handler(signum, frame):
raise KeyboardInterrupt
+ # Find any tasks with current stamps and remove them from the queue
+ for task1 in range(len(self.runq_fnid)):
+ task = self.prio_map[task1]
+ fn = self.taskData.fn_index[self.runq_fnid[task]]
+ taskname = self.runq_task[task]
+ if bb.build.stamp_is_current(taskname, self.dataCache, fn):
+ bb.msg.debug(2, bb.msg.domain.RunQueue, "Stamp current task %s (%s)" % (task, self.get_user_idstring(task)))
+ self.runq_running[task] = 1
+ self.task_complete(task)
+ self.stats.taskCompleted()
+ self.stats.taskSkipped()
+
while True:
task = self.get_next_task()
if task is not None: