image_types.bbclass: IMAGE_TYPEDEP_ now adds deps for conversion types

Previously if IMAGE_TYPEDEP_* contained a conversion type of the form,
"foo.bar", the dependency on CONVERSION_DEPENDS_bar would not get added
to the task depends for do_rootfs.

[YOCTO #10883]

(From OE-Core rev: c0ff0e1ff872b04006b26c6db4f8c9cf053b0764)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
(cherry picked from commit 037d39898e0e16c6d5b24a8d3844abfb328d3c14)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Randy Witt
2017-02-21 10:04:49 -08:00
committed by Richard Purdie
parent 7c0a184f8b
commit 6c3d10ea62

View File

@@ -17,17 +17,25 @@ def imagetypes_getdepends(d):
d += ":do_populate_sysroot"
deps.add(d)
# Take a type in the form of foo.bar.car and split it into the items
# needed for the image deps "foo", and the conversion deps ["bar", "car"]
def split_types(typestring):
types = typestring.split(".")
return types[0], types[1:]
fstypes = set((d.getVar('IMAGE_FSTYPES', True) or "").split())
fstypes |= set((d.getVar('IMAGE_FSTYPES_DEBUGFS', True) or "").split())
deps = set()
for typestring in fstypes:
types = typestring.split(".")
basetype, resttypes = types[0], types[1:]
basetype, resttypes = split_types(typestring)
adddep(d.getVar('IMAGE_DEPENDS_%s' % basetype, True) , deps)
for typedepends in (d.getVar("IMAGE_TYPEDEP_%s" % basetype, True) or "").split():
base, rest = split_types(typedepends)
resttypes += rest
adddep(d.getVar('IMAGE_DEPENDS_%s' % typedepends, True) , deps)
for ctype in resttypes:
adddep(d.getVar("CONVERSION_DEPENDS_%s" % ctype, True), deps)
adddep(d.getVar("COMPRESS_DEPENDS_%s" % ctype, True), deps)