summaryrefslogtreecommitdiffstats
path: root/meta/lib
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib')
-rw-r--r--meta/lib/oe/image.py18
1 files changed, 16 insertions, 2 deletions
diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py
index 7e080b00dd..f9c8f84cf8 100644
--- a/meta/lib/oe/image.py
+++ b/meta/lib/oe/image.py
@@ -48,11 +48,13 @@ class ImageDepGraph(object):
48 graph = dict() 48 graph = dict()
49 49
50 def add_node(node): 50 def add_node(node):
51 base_type = self._image_base_type(node)
51 deps = (self.d.getVar('IMAGE_TYPEDEP_' + node, True) or "") 52 deps = (self.d.getVar('IMAGE_TYPEDEP_' + node, True) or "")
52 if deps != "": 53 base_deps = (self.d.getVar('IMAGE_TYPEDEP_' + base_type, True) or "")
54 if deps != "" or base_deps != "":
53 graph[node] = deps 55 graph[node] = deps
54 56
55 for dep in deps.split(): 57 for dep in deps.split() + base_deps.split():
56 if not dep in graph: 58 if not dep in graph:
57 add_node(dep) 59 add_node(dep)
58 else: 60 else:
@@ -72,6 +74,18 @@ class ImageDepGraph(object):
72 for item in remove_list: 74 for item in remove_list:
73 self.graph.pop(item, None) 75 self.graph.pop(item, None)
74 76
77 def _image_base_type(self, type):
78 ctypes = self.d.getVar('COMPRESSIONTYPES', True).split()
79 if type in ["vmdk", "live", "iso", "hddimg"]:
80 type = "ext3"
81 basetype = type
82 for ctype in ctypes:
83 if type.endswith("." + ctype):
84 basetype = type[:-len("." + ctype)]
85 break
86
87 return basetype
88
75 def _compute_dependencies(self): 89 def _compute_dependencies(self):
76 """ 90 """
77 returns dict object of nodes with [no_of_depends_on, no_of_depended_by] 91 returns dict object of nodes with [no_of_depends_on, no_of_depended_by]