Patchwork sstatesig.py: Fix image regeneration issue

login
register
mail settings
Submitter Richard Purdie
Date Nov. 27, 2013, 5:57 p.m.
Message ID <1385575046.11222.13.camel@ted>
Download mbox | patch
Permalink /patch/62499/
State Accepted
Commit 80d522a5bc694fdb8b8a53ad4aa36410f3612c6b
Headers show

Comments

Richard Purdie - Nov. 27, 2013, 5:57 p.m.
With the "ABI safe" recipes, we've been excluding those from signatures. This
is fine in the general case but in the specific case of image recipes it breaks.

A good test case is the interfaces file. Editing this causes init-ifupdown
to rebuild but not an image containing it (e.g. core-image-minimal).

We need to ensure the checksums are added to the image recipes and this change
does that.

[YOCTO #5585] 

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

Patch

diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 33ff892..329c84d 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -14,6 +14,8 @@  def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
     def isPackageGroup(fn):
         inherits = " ".join(dataCache.inherits[fn])
         return "packagegroup.bbclass" in inherits
+    def isImage(fn):
+        return "image.bbclass" in " ".join(dataCache.inherits[fn])
 
     # Always include our own inter-task dependencies
     if recipename == depname:
@@ -39,7 +41,7 @@  def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache):
         return False
 
     # Exclude well defined machine specific configurations which don't change ABI
-    if depname in siggen.abisaferecipes:
+    if depname in siggen.abisaferecipes and not isImage(fn):
         return False
 
     # Exclude well defined recipe->dependency