summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorMatthew McClintock <msm-oss@mcclintock.net>2017-03-08 14:24:38 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-03-13 09:43:40 +0000
commit404f2aef94f8db6e46101e4ec9a6aa7e85b97880 (patch)
treefa823091470404e215c3f6d496121e2b063c1388 /bitbake/lib/bb/runqueue.py
parent3e5f3cfe812dd5787c7420cdbfe47e1b257f567d (diff)
downloadpoky-404f2aef94f8db6e46101e4ec9a6aa7e85b97880.tar.gz
bitbake: runqueue: add option to run all tasks in specific build target
For example: $ bitbake core-image-minimal --runall unpack ... NOTE: Tasks Summary: Attempted 326 tasks of which 88 didn't need to be rerun and all succeeded. $ bitbake core-image-minimal --runall patch NOTE: Tasks Summary: Attempted 453 tasks of which 332 didn't need to be rerun and all succeeded. This can replace fetchall as well: $ bitbake core-image-minimal --runall fetch NOTE: Tasks Summary: Attempted 135 tasks of which 119 didn't need to be rerun and all succeeded. (Bitbake rev: 7c0fa6ba66cdb956b37d94055307cde857633df9) Signed-off-by: Matthew McClintock <msm-oss@mcclintock.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index a3b451ad6f..38304d16d3 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -803,6 +803,23 @@ class RunQueueData:
803 803
804 self.init_progress_reporter.next_stage() 804 self.init_progress_reporter.next_stage()
805 805
806 if self.cooker.configuration.runall is not None:
807 runall = "do_%s" % self.cooker.configuration.runall
808 runall_tids = { k: v for k, v in self.runtaskentries.items() if taskname_from_tid(k) == runall }
809
810 # re-run the mark_active and then drop unused tasks from new list
811 runq_build = {}
812 for tid in list(runall_tids):
813 mark_active(tid,1)
814
815 for tid in list(self.runtaskentries.keys()):
816 if tid not in runq_build:
817 del self.runtaskentries[tid]
818 delcount += 1
819
820 if len(self.runtaskentries) == 0:
821 bb.msg.fatal("RunQueue", "No remaining tasks to run run for build target %s with runall %s" % (target, runall))
822
806 # 823 #
807 # Step D - Sanity checks and computation 824 # Step D - Sanity checks and computation
808 # 825 #