[OE-core] [PATCH] image: Fix IMAGE_FEATURES determinism issue
Richard Purdie
richard.purdie at linuxfoundation.org
Mon May 9 13:09:37 UTC 2016
remain_features uses a dict which means the order is not deterministic. This
can lead to the task hash changing depending on the state of the memory at
parse time. This is particularly noticeable under python v3.
Since the dict is helpful in constructing the data, pass the data through
sort() so the order is always deterministic.
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 1fb1964..a1772ad 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -166,7 +166,7 @@ python () {
if temp:
bb.fatal("%s contains conflicting IMAGE_FEATURES %s %s" % (d.getVar('PN', True), feature, ' '.join(list(temp))))
- d.setVar('IMAGE_FEATURES', ' '.join(list(remain_features)))
+ d.setVar('IMAGE_FEATURES', ' '.join(sorted(list(remain_features))))
check_image_features(d)
initramfs_image = d.getVar('INITRAMFS_IMAGE', True) or ""
More information about the Openembedded-core
mailing list