summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/taskdata.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/taskdata.py')
-rw-r--r--bitbake/lib/bb/taskdata.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/bitbake/lib/bb/taskdata.py b/bitbake/lib/bb/taskdata.py
index 17d6d95530..3d3adfdbda 100644
--- a/bitbake/lib/bb/taskdata.py
+++ b/bitbake/lib/bb/taskdata.py
@@ -43,6 +43,7 @@ class TaskData:
43 self.tasks_fnid = [] 43 self.tasks_fnid = []
44 self.tasks_name = [] 44 self.tasks_name = []
45 self.tasks_tdepends = [] 45 self.tasks_tdepends = []
46 self.tasks_idepends = []
46 # Cache to speed up task ID lookups 47 # Cache to speed up task ID lookups
47 self.tasks_lookup = {} 48 self.tasks_lookup = {}
48 49
@@ -108,6 +109,7 @@ class TaskData:
108 self.tasks_name.append(task) 109 self.tasks_name.append(task)
109 self.tasks_fnid.append(fnid) 110 self.tasks_fnid.append(fnid)
110 self.tasks_tdepends.append([]) 111 self.tasks_tdepends.append([])
112 self.tasks_idepends.append([])
111 113
112 listid = len(self.tasks_name) - 1 114 listid = len(self.tasks_name) - 1
113 115
@@ -134,8 +136,9 @@ class TaskData:
134 if fnid in self.tasks_fnid: 136 if fnid in self.tasks_fnid:
135 return 137 return
136 138
137 # Work out task dependencies
138 for task in task_graph.allnodes(): 139 for task in task_graph.allnodes():
140
141 # Work out task dependencies
139 parentids = [] 142 parentids = []
140 for dep in task_graph.getparents(task): 143 for dep in task_graph.getparents(task):
141 parentid = self.gettask_id(fn, dep) 144 parentid = self.gettask_id(fn, dep)
@@ -143,6 +146,14 @@ class TaskData:
143 taskid = self.gettask_id(fn, task) 146 taskid = self.gettask_id(fn, task)
144 self.tasks_tdepends[taskid].extend(parentids) 147 self.tasks_tdepends[taskid].extend(parentids)
145 148
149 # Touch all intertask dependencies
150 if 'depends' in task_deps and task in task_deps['depends']:
151 ids = []
152 for dep in task_deps['depends'][task].split(" "):
153 if dep:
154 ids.append(str(self.getbuild_id(dep.split(":")[0])) + ":" + dep.split(":")[1])
155 self.tasks_idepends[taskid].extend(ids)
156
146 # Work out build dependencies 157 # Work out build dependencies
147 if not fnid in self.depids: 158 if not fnid in self.depids:
148 dependids = {} 159 dependids = {}