Skip to contentSkip to conversation

image.bbclass: image_types.bbclass is a must

PATCH New Robert Yang 1 participant 2 messages Aug 12, 2014

lore
Share & tools
lore
#0 lore raw

cover image.bbclass: image_types.bbclass is a must

The following changes since commit 4321c553d5ae816e566234e981a0815bba046d39:

SIGGEN_EXCLUDERECIPES_ABISAFE: add initscripts (2014-08-11 17:44:09 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib rbt/image
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/image

Robert Yang (1):
image.bbclass: image_types.bbclass is a must

 meta/classes/image.bbclass |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 image.bbclass: image_types.bbclass is a must

The image_types.bbclass is a must since we use this in image.bbclass:

[snip]
python () {
deps = " " + imagetypes_getdepends(d)
d.appendVarFlag('do_rootfs', 'depends', deps)
[snip]

The imagetypes_getdepends() is defined in image_types.bbclass. Use "+=" to replace "?=" since it is a must, so that the user can use "IMAGE_CLASSES = foo.bbclass" in local.conf to add their own image class.

NOTE: the IMAGE_CLASSES_append = " foo" doesn't work since we use this in image.bbclass:
IMAGE_CLASSES += "image_types"
inherit ${IMAGE_CLASSES}

I think that it is because inherit takes effect before append?

Another way to fix the problem is:
IMAGE_CLASSES ?= ""
inherit image_types ${IMAGE_CLASSES}

But it seems that we need another name for IMAGE_CLASSES, for example IMAGE_CLASSES_EXTRA, and also need update the doc, which would make it complicated.

---
 meta/classes/image.bbclass |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/image.bbclass +1 -1
index 82605f2..940bdb6 100644
@@ -163,7 +163,7 @@ python () {
         d.appendVarFlag('do_bundle_initramfs', 'depends', " %s:do_rootfs" % initramfs_image)
 }
 
-IMAGE_CLASSES ?= "image_types"
+IMAGE_CLASSES += "image_types"
 inherit ${IMAGE_CLASSES}
 
 IMAGE_POSTPROCESS_COMMAND ?= ""
Signature · 1 line
1.7.9.5