diff options
| -rw-r--r-- | bitbake/lib/bb/ui/crumbs/tasklistmodel.py | 40 |
1 files changed, 19 insertions, 21 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/tasklistmodel.py b/bitbake/lib/bb/ui/crumbs/tasklistmodel.py index c0b0495d8c..1f00f6cfb2 100644 --- a/bitbake/lib/bb/ui/crumbs/tasklistmodel.py +++ b/bitbake/lib/bb/ui/crumbs/tasklistmodel.py | |||
| @@ -226,32 +226,30 @@ class TaskListModel(gtk.ListStore): | |||
| 226 | lic = event_model["pn"][item]["license"] | 226 | lic = event_model["pn"][item]["license"] |
| 227 | group = event_model["pn"][item]["section"] | 227 | group = event_model["pn"][item]["section"] |
| 228 | filename = event_model["pn"][item]["filename"] | 228 | filename = event_model["pn"][item]["filename"] |
| 229 | depends = event_model["depends"].get(item, "") | ||
| 230 | rdepends = event_model["rdepends-pn"].get(item, "") | ||
| 231 | if rdepends: | ||
| 232 | for rdep in rdepends: | ||
| 233 | if event_model["packages"].get(rdep, ""): | ||
| 234 | pn = event_model["packages"][rdep].get("pn", "") | ||
| 235 | if pn: | ||
| 236 | depends.append(pn) | ||
| 237 | |||
| 238 | # uniquify the list of depends | ||
| 239 | depends = self.squish(depends) | ||
| 240 | # remove circular dependencies | ||
| 241 | if name in depends: | ||
| 242 | depends.remove(name) | ||
| 243 | deps = " ".join(depends) | ||
| 244 | |||
| 245 | if name.count('task-') > 0: | 229 | if name.count('task-') > 0: |
| 246 | atype = 'task' | 230 | atype = 'task' |
| 247 | elif name.count('-image-') > 0: | 231 | elif name.count('-image-') > 0: |
| 248 | atype = 'image' | 232 | atype = 'image' |
| 249 | 233 | ||
| 250 | self.set(self.append(), self.COL_NAME, name, self.COL_DESC, summary, | 234 | depends = event_model["depends"].get(item, []) |
| 251 | self.COL_LIC, lic, self.COL_GROUP, group, | 235 | rdepends = event_model["rdepends-pn"].get(item, []) |
| 252 | self.COL_DEPS, deps, self.COL_BINB, "", | 236 | if ("%s-dev" % item) in rdepends: |
| 253 | self.COL_TYPE, atype, self.COL_INC, False, | 237 | rdepends.remove("%s-dev" % item) |
| 254 | self.COL_IMG, False, self.COL_PATH, filename) | 238 | packages = {} |
| 239 | for pkg in event_model["packages"]: | ||
| 240 | if event_model["packages"][pkg]["pn"] == name: | ||
| 241 | deps = [] | ||
| 242 | deps.extend(depends) | ||
| 243 | deps.extend(event_model["rdepends-pkg"].get(pkg, [])) | ||
| 244 | deps.extend(rdepends) | ||
| 245 | packages[pkg] = deps | ||
| 246 | |||
| 247 | for p in packages: | ||
| 248 | self.set(self.append(), self.COL_NAME, p, self.COL_DESC, summary, | ||
| 249 | self.COL_LIC, lic, self.COL_GROUP, group, | ||
| 250 | self.COL_DEPS, " ".join(packages[p]), self.COL_BINB, "", | ||
| 251 | self.COL_TYPE, atype, self.COL_INC, False, | ||
| 252 | self.COL_IMG, False, self.COL_PATH, filename) | ||
| 255 | 253 | ||
| 256 | self.emit("tasklist-populated") | 254 | self.emit("tasklist-populated") |
| 257 | 255 | ||
