[OE-core] [PATCH] sstatesig: don't squash dependencies of useradd packages

Maxin B. John maxin.john at intel.com
Mon Dec 12 13:48:04 UTC 2016


Without this change, sstate dependency filter squashes dependencies
of packages which inherits useradd class. That causes failures while
rebuilding it for another MACHINE.

Fixes [YOCTO #8078]

Signed-off-by: Maxin B. John <maxin.john at intel.com>
---
 meta/lib/oe/sstatesig.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 8224e3a..88b2290 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -17,6 +17,9 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     def isAllArch(fn):
         inherits = " ".join(dataCache.inherits[fn])
         return "/allarch.bbclass" in inherits
+    def isUserAdd(fn):
+        inherits = " ".join(dataCache.inherits[fn])
+        return "/useradd.bbclass" in inherits
     def isImage(fn):
         return "/image.bbclass" in " ".join(dataCache.inherits[fn])
 
@@ -39,6 +42,10 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
 
     # Only target packages beyond here
 
+    # Don't squash the dependencies of packages inheritting useradd class
+    if  isUserAdd(fn):
+        return True
+
     # allarch packagegroups are assumed to have well behaved names which don't change between architecures/tunes
     if isPackageGroup(fn) and isAllArch(fn) and not isNative(depname):
         return False  
-- 
2.4.0




More information about the Openembedded-core mailing list