[OE-core] [PATCH] lib/oe/sstate: Add task_resolved handler for virtual/xxx mappings

Richard Purdie richard.purdie at linuxfoundation.org
Wed Sep 30 16:12:54 UTC 2015


On Wed, 2015-09-30 at 14:50 +0100, Richard Purdie wrote:
> In SIGGEN_EXCLUDERECIPES_ABISAFE and SIGGEN_EXCLUDE_SAFE_RECIPE_DEP
> we really need to be able to use virtual/xxx namespaces but this
> currently doesn't work.
> 
> To make this work, we need to translate them into the resolved
> providers. After such a hook was added to bitbake, we can add
> this translation here.
> 
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> 
> diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
> index cba0a84..fa41145 100644
> --- a/meta/lib/oe/sstatesig.py
> +++ b/meta/lib/oe/sstatesig.py
> @@ -94,6 +94,28 @@ class SignatureGeneratorOEBasicHash(bb.siggen.SignatureGeneratorBasicHash):
>          self.machine = data.getVar("MACHINE", True)
>          self.mismatch_msgs = []
>          pass
> +
> +    def tasks_resolved(self, virtmap, virtpnmap, dataCache):
> +        # Translate virtual/xxx entries to PN values
> +        newabisafe = []
> +        for a in self.abisaferecipes:
> +            if a in virtpnmap:
> +                newabisafe.append(virtpnmap[a])
> +            else:
> +                newabisafe.append(a)
> +        self.abisaferecipes = newabisafe
> +        newsafedeps = []
> +        for a in self.saferecipedeps:
> +            a1, a2 = a.split("->")
> +            if a1 in virtpnmap:
> +                a1 = virtpnmap[a1]
> +            if a2 in virtpnmap:
> +                a2 = virtpnmap[a2]
> +            newsafedeps.append(a1 + "->" + a2)
> +        self.saferecipedeps = newsafedeps
> +        bb.warn(str(self.abisaferecipes))
> +        bb.warn(str(self.saferecipedeps))

Yes, I left some debug in here, I'll remove these two lines sorry!

Cheers,

Richard




More information about the Openembedded-core mailing list