[OE-core] [PATCH] lib/classextend: Fix determinism issue

Richard Purdie richard.purdie at linuxfoundation.org
Mon May 9 13:13:44 UTC 2016


The ordering of dependency variables needs to be deterministic to avoid task checksums
changing. Use an OrderedDict to achieve this.

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

diff --git a/meta/lib/oe/classextend.py b/meta/lib/oe/classextend.py
index 5107ecd..4c8a000 100644
--- a/meta/lib/oe/classextend.py
+++ b/meta/lib/oe/classextend.py
@@ -1,3 +1,5 @@
+import collections
+
 class ClassExtender(object):
     def __init__(self, extname, d):
         self.extname = extname
@@ -77,7 +79,7 @@ class ClassExtender(object):
             self.d.setVar("EXTENDPKGV", orig)
             return
         deps = bb.utils.explode_dep_versions2(deps)
-        newdeps = {}
+        newdeps = collections.OrderedDict()
         for dep in deps:
             newdeps[self.map_depends(dep)] = deps[dep]
 





More information about the Openembedded-core mailing list