summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-07 14:24:19 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-08 10:52:00 +0100
commitdbda297fd91aab2727f7a69d3b7d3a32ad4261d2 (patch)
tree058ba524f01432dfd532fb74039e55723d906f97 /bitbake/lib/bb
parent6bb9ac9c65432b4c88c3a6827e036d6e5f8cf6a9 (diff)
downloadpoky-dbda297fd91aab2727f7a69d3b7d3a32ad4261d2.tar.gz
bitbake: runqueue: Allow the hash validate function to have an idea of build completion
There is an oversight in the current hash validation API in that the function can't know how many setscene tasks already completed. Rather than trying to add additional parameters to the function, causing incompatibilities, store the value in the datastore. This is useful to allow build status reporting to the user for figures on sstate reusage and build completion. (Bitbake rev: ec037d3e49264037b81212f498d98e292ae7c334) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/runqueue.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index a43c9983a1..400709c160 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -2314,10 +2314,15 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
2314 sq_hash.append(self.rqdata.runtaskentries[tid].hash) 2314 sq_hash.append(self.rqdata.runtaskentries[tid].hash)
2315 sq_taskname.append(taskname) 2315 sq_taskname.append(taskname)
2316 sq_task.append(tid) 2316 sq_task.append(tid)
2317
2318 self.cooker.data.setVar("BB_SETSCENE_STAMPCURRENT_COUNT", len(stamppresent))
2319
2317 call = self.rq.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)" 2320 call = self.rq.hashvalidate + "(sq_fn, sq_task, sq_hash, sq_hashfn, d)"
2318 locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.data } 2321 locs = { "sq_fn" : sq_fn, "sq_task" : sq_taskname, "sq_hash" : sq_hash, "sq_hashfn" : sq_hashfn, "d" : self.cooker.data }
2319 valid = bb.utils.better_eval(call, locs) 2322 valid = bb.utils.better_eval(call, locs)
2320 2323
2324 self.cooker.data.delVar("BB_SETSCENE_STAMPCURRENT_COUNT")
2325
2321 valid_new = stamppresent 2326 valid_new = stamppresent
2322 for v in valid: 2327 for v in valid:
2323 valid_new.append(sq_task[v]) 2328 valid_new.append(sq_task[v])