[OE-core] sstate_clean() overzealous?

Phil Blundell philb at gnu.org
Tue Oct 4 15:03:18 UTC 2011


On Tue, 2011-10-04 at 11:54 +0100, Richard Purdie wrote:
> I think we need to teach this clean function about stamp-extra-info and
> instead of stfile + ".*", remove stfile + ".*." + stamp-extra-info if
> stamp-extra-info is set. That would likely fix the problem you're
> seeing.

Okay, thanks.  I applied this change locally:

diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 91f209a..7f38800 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -258,10 +258,15 @@ def sstate_clean(ss, d):
             bb.utils.unlockfile(lock)
 
     stfile = d.getVar("STAMP", True) + ".do_" + ss['task']
+    extrainf = d.getVarFlag("do_" + ss['task'], 'stamp-extra-info')
     oe.path.remove(stfile)
     oe.path.remove(stfile + "_setscene")
-    oe.path.remove(stfile + ".*")
-    oe.path.remove(stfile + "_setscene" + ".*")
+    if extrainf:
+        oe.path.remove(stfile + ".*." + extrainf)
+       oe.path.remove(stfile + "_setscene" + ".*." + extrainf)
+    else:
+        oe.path.remove(stfile + ".*")
+       oe.path.remove(stfile + "_setscene" + ".*")
 
 CLEANFUNCS += "sstate_cleanall"
 
and it does indeed seem to resolve the problem I was seeing before.

p.






More information about the Openembedded-core mailing list