1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-09 15:50:16 +00:00

bitbake: runqueue.py: Fix recursive task pruning to only prune self referencing tasks

(Bitbake rev: 4962a59793504b26b06cf058dda600a07fbbd951)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2012-07-04 16:39:11 +00:00
parent ee89e38d47
commit 3051f36444
+4 -2
View File
@@ -376,6 +376,7 @@ class RunQueueData:
runq_build = []
recursivetasks = {}
recursivetasksselfref = set()
taskData = self.taskData
@@ -494,6 +495,8 @@ class RunQueueData:
recursivetasks[task] = tasknames
add_build_dependencies(taskData.depids[fnid], tasknames, depends)
add_runtime_dependencies(taskData.rdepids[fnid], tasknames, depends)
if taskData.tasks_name[task] in tasknames:
recursivetasksselfref.add(task)
self.runq_fnid.append(taskData.tasks_fnid[task])
self.runq_task.append(taskData.tasks_name[task])
@@ -528,9 +531,8 @@ class RunQueueData:
generate_recdeps(task)
# Remove circular references so that do_a[recrdeptask] = "do_a do_b" can work
recursivetaskset = set(recursivetasks.keys())
for task in recursivetasks:
extradeps[task].difference_update(recursivetaskset)
extradeps[task].difference_update(recursivetasksselfref)
for task in xrange(len(taskData.tasks_name)):
# Add in extra dependencies