[OE-core] sstate.bbclass: Ensure machine specific stamps are only wiped for the current task

Koen Kooi koen at dominion.thruhere.net
Thu Oct 6 20:57:09 UTC 2011


let's get this in before my buildserver melts a hole in the floor :)

Op 6 okt. 2011, om 16:19 heeft Richard Purdie het volgende geschreven:

> sstate was being a little too ethusiastic about removing stamp files and
> was removing stamp files for other machines when it shouldn't have been.
> 
> This patch teaches sstate about machine specific stamp extensions and
> allows it to only remove the current task's stampfiles.
> 
> Based on a patch from Phil Blundell <philb at gnu.org> with some tweaks
> from me.
> 
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> ---
> diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
> index eee04ab..6abf55b 100644
> --- a/meta/classes/sstate.bbclass
> +++ b/meta/classes/sstate.bbclass
> @@ -259,10 +259,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"
> 
> 
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core





More information about the Openembedded-core mailing list