[oe-commits] Otavio Salvador : lib/oe/image.py: Handle compressed IMAGE_TYPEDEP values
git at git.openembedded.org
git at git.openembedded.org
Wed Dec 24 17:50:15 UTC 2014
Module: openembedded-core.git
Branch: master-next
Commit: 6e7d1de6cc99ed2def346dc40310573f5f0ce5ca
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=6e7d1de6cc99ed2def346dc40310573f5f0ce5ca
Author: Otavio Salvador <otavio at ossystems.com.br>
Date: Wed Dec 24 14:32:11 2014 -0200
lib/oe/image.py: Handle compressed IMAGE_TYPEDEP values
When computing the dependency graph for the image generation, we need
to take into account the compression type and identify the base type
it relates to. This allow for a more robust graph generation even when
using composed image types.
Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/lib/oe/image.py | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py
index 7e080b0..f9c8f84 100644
--- a/meta/lib/oe/image.py
+++ b/meta/lib/oe/image.py
@@ -48,11 +48,13 @@ class ImageDepGraph(object):
graph = dict()
def add_node(node):
+ base_type = self._image_base_type(node)
deps = (self.d.getVar('IMAGE_TYPEDEP_' + node, True) or "")
- if deps != "":
+ base_deps = (self.d.getVar('IMAGE_TYPEDEP_' + base_type, True) or "")
+ if deps != "" or base_deps != "":
graph[node] = deps
- for dep in deps.split():
+ for dep in deps.split() + base_deps.split():
if not dep in graph:
add_node(dep)
else:
@@ -72,6 +74,18 @@ class ImageDepGraph(object):
for item in remove_list:
self.graph.pop(item, None)
+ def _image_base_type(self, type):
+ ctypes = self.d.getVar('COMPRESSIONTYPES', True).split()
+ if type in ["vmdk", "live", "iso", "hddimg"]:
+ type = "ext3"
+ basetype = type
+ for ctype in ctypes:
+ if type.endswith("." + ctype):
+ basetype = type[:-len("." + ctype)]
+ break
+
+ return basetype
+
def _compute_dependencies(self):
"""
returns dict object of nodes with [no_of_depends_on, no_of_depended_by]
More information about the Openembedded-commits
mailing list