summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/runqueue.py
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-26 12:53:21 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-27 09:40:05 +0000
commit9aeb38a5b813b4bb03c926e5dcead2124f935ff7 (patch)
tree49e92d06c8d57a2204470d71105b1a8a32e14550 /bitbake/lib/bb/runqueue.py
parent2a361cdb39d26a0e592f3fc46a1481c476bd5674 (diff)
downloadpoky-9aeb38a5b813b4bb03c926e5dcead2124f935ff7.tar.gz
runqueue.py: Fix missing setscene dependencies
When constructing the setscene inter-dependencies, we need to account for all task, not just the last one found. This patch corrects this oversight and ensures all dependencies are added, not just the first one found. (Bitbake rev: b9b5b5129d066e1ff7d3effda116afc3c6657beb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/runqueue.py')
-rw-r--r--bitbake/lib/bb/runqueue.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index c74e73cde9..a4030b3b93 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -1435,18 +1435,20 @@ class RunQueueExecuteScenequeue(RunQueueExecute):
1435 sq_revdeps.append(copy.copy(self.rqdata.runq_revdeps[task])) 1435 sq_revdeps.append(copy.copy(self.rqdata.runq_revdeps[task]))
1436 sq_revdeps_new.append(set()) 1436 sq_revdeps_new.append(set())
1437 if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene: 1437 if (len(self.rqdata.runq_revdeps[task]) == 0) and task not in self.rqdata.runq_setscene:
1438 endpoints[task] = None 1438 endpoints[task] = set()
1439 1439
1440 for task in self.rqdata.runq_setscene: 1440 for task in self.rqdata.runq_setscene:
1441 for dep in self.rqdata.runq_depends[task]: 1441 for dep in self.rqdata.runq_depends[task]:
1442 endpoints[dep] = task 1442 if dep not in endpoints:
1443 endpoints[dep] = set()
1444 endpoints[dep].add(task)
1443 1445
1444 def process_endpoints(endpoints): 1446 def process_endpoints(endpoints):
1445 newendpoints = {} 1447 newendpoints = {}
1446 for point, task in endpoints.items(): 1448 for point, task in endpoints.items():
1447 tasks = set() 1449 tasks = set()
1448 if task: 1450 if task:
1449 tasks.add(task) 1451 tasks |= task
1450 if sq_revdeps_new[point]: 1452 if sq_revdeps_new[point]:
1451 tasks |= sq_revdeps_new[point] 1453 tasks |= sq_revdeps_new[point]
1452 sq_revdeps_new[point] = set() 1454 sq_revdeps_new[point] = set()