summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bitbake/lib/bb/runqueue.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/bitbake/lib/bb/runqueue.py b/bitbake/lib/bb/runqueue.py
index ebc70ee61c..2f204aea97 100644
--- a/bitbake/lib/bb/runqueue.py
+++ b/bitbake/lib/bb/runqueue.py
@@ -464,10 +464,9 @@ class RunQueue:
fnid = self.runq_fnid[task]
if fnid not in reccumdepends:
reccumdepends[fnid] = set()
- if task in self.runq_depends:
- reccumdepends[fnid].update(self.runq_depends[task])
- if fnid in tdepends_fnid:
- reccumdepends[fnid].update(tdepends_fnid[fnid])
+ if fnid in tdepends_fnid:
+ reccumdepends[fnid].update(tdepends_fnid[fnid])
+ reccumdepends[fnid].update(self.runq_depends[task])
for task in range(len(self.runq_fnid)):
taskfnid = self.runq_fnid[task]
for fnid in reccumdepends:
@@ -485,6 +484,9 @@ class RunQueue:
if len(runq_recrdepends[task]) > 0:
taskfnid = self.runq_fnid[task]
for dep in reccumdepends[taskfnid]:
+ # Ignore self references
+ if dep == task:
+ continue
for taskname in runq_recrdepends[task]:
if taskData.tasks_name[dep] == taskname:
self.runq_depends[task].add(dep)