[PATCH] image/image-live: Add back IMAGE_TYPES_MASKED support

Richard Purdie
2016-01-15T11:50:08Z

IMAGE_TYPES_MASKED support was accidentally removed. The original
idea behind it was to remove some of the hardcoding in the core
image code, so do that for image-live and ensure the dependency
and masked variables correctly reflect the needs of the class.
This means we can remove all the hardcoded special cases since
image-vm already has the needed markup.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>

diff --git a/meta/classes/image-live.bbclass b/meta/classes/image-live.bbclass
index 624ff38..d2e8b85 100644
--- a/meta/classes/image-live.bbclass
+++ b/meta/classes/image-live.bbclass
@@ -15,4 +15,6 @@ do_bootimg[depends] += "${PN}:do_image_complete"
inherit bootimg

IMAGE_TYPEDEP_live = "ext4"
-IMAGE_TYPES_MASKED += "live"
+IMAGE_TYPEDEP_iso = "ext4"
+IMAGE_TYPEDEP_hddimg = "ext4"
+IMAGE_TYPES_MASKED += "live hddimg iso"
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 8a09db1..0b73965 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -297,8 +297,6 @@ python () {
old_overrides = d.getVar('OVERRIDES', 0)

def _image_base_type(type):
- if type in ["vmdk", "vdi", "qcow2", "live", "iso", "hddimg"]:
- type = "ext4"
basetype = type
for ctype in ctypes:
if type.endswith("." + ctype):
@@ -337,18 +335,23 @@ python () {
_add_type(dep)
basedep = _image_base_type(dep)
typedeps[baset].add(basedep)
-
+
for t in alltypes[:]:
_add_type(t)

d.appendVarFlag('do_image', 'vardeps', ' '.join(vardeps))

+ maskedtypes = (d.getVar('IMAGE_TYPES_MASKED', True) or "").split()
+
for t in basetypes:
vardeps = set()
cmds = []
subimages = []
realt = t

+ if t in maskedtypes:
+ continue
+
localdata = bb.data.createCopy(d)
debug = ""