diff options
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r-- | bitbake/lib/bb/runqueue.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py index 84a6f4172c..999868dd72 100644 --- a/bitbake/lib/bb/runqueue.py +++ b/bitbake/lib/bb/runqueue.py | |||
@@ -1280,11 +1280,18 @@ class RunQueueData: | |||
1280 | dealtwith = set() | 1280 | dealtwith = set() |
1281 | todeal = set(self.runtaskentries) | 1281 | todeal = set(self.runtaskentries) |
1282 | while todeal: | 1282 | while todeal: |
1283 | ready = set() | ||
1283 | for tid in todeal.copy(): | 1284 | for tid in todeal.copy(): |
1284 | if not (self.runtaskentries[tid].depends - dealtwith): | 1285 | if not (self.runtaskentries[tid].depends - dealtwith): |
1285 | dealtwith.add(tid) | 1286 | self.runtaskentries[tid].taskhash_deps = bb.parse.siggen.prep_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches) |
1286 | todeal.remove(tid) | 1287 | # get_taskhash for a given tid *must* be called before get_unihash* below |
1287 | self.prepare_task_hash(tid) | 1288 | self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches) |
1289 | ready.add(tid) | ||
1290 | unihashes = bb.parse.siggen.get_unihashes(ready) | ||
1291 | for tid in ready: | ||
1292 | dealtwith.add(tid) | ||
1293 | todeal.remove(tid) | ||
1294 | self.runtaskentries[tid].unihash = unihashes[tid] | ||
1288 | 1295 | ||
1289 | bb.event.check_for_interrupts(self.cooker.data) | 1296 | bb.event.check_for_interrupts(self.cooker.data) |
1290 | 1297 | ||
@@ -1301,11 +1308,6 @@ class RunQueueData: | |||
1301 | #self.dump_data() | 1308 | #self.dump_data() |
1302 | return len(self.runtaskentries) | 1309 | return len(self.runtaskentries) |
1303 | 1310 | ||
1304 | def prepare_task_hash(self, tid): | ||
1305 | self.runtaskentries[tid].taskhash_deps = bb.parse.siggen.prep_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches) | ||
1306 | self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches) | ||
1307 | self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid) | ||
1308 | |||
1309 | def dump_data(self): | 1311 | def dump_data(self): |
1310 | """ | 1312 | """ |
1311 | Dump some debug information on the internal data structures | 1313 | Dump some debug information on the internal data structures |