diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-09-30 14:50:00 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-10-01 07:43:35 +0100 |
commit | 2c196955a87e79f0b670de009fccb73ea47427ea (patch) | |
tree | 384539ae36fae0caee560e2d966f87d04a98c3e7 /meta/lib/oe/sstatesig.py | |
parent | ff17f148785c3b24ff8069a4829cd3baffa43a9a (diff) | |
download | poky-2c196955a87e79f0b670de009fccb73ea47427ea.tar.gz |
lib/oe/sstate: Add tasks_resolved handler for virtual/xxx mappings
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.
(From OE-Core rev: 0a6d0d040ab7f885b667a34f4ddcc775d135c07c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oe/sstatesig.py')
-rw-r--r-- | meta/lib/oe/sstatesig.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py index cb46712eea..6d1be3e372 100644 --- a/meta/lib/oe/sstatesig.py +++ b/meta/lib/oe/sstatesig.py | |||
@@ -94,6 +94,26 @@ class SignatureGeneratorOEBasicHash(bb.siggen.SignatureGeneratorBasicHash): | |||
94 | self.machine = data.getVar("MACHINE", True) | 94 | self.machine = data.getVar("MACHINE", True) |
95 | self.mismatch_msgs = [] | 95 | self.mismatch_msgs = [] |
96 | pass | 96 | pass |
97 | |||
98 | def tasks_resolved(self, virtmap, virtpnmap, dataCache): | ||
99 | # Translate virtual/xxx entries to PN values | ||
100 | newabisafe = [] | ||
101 | for a in self.abisaferecipes: | ||
102 | if a in virtpnmap: | ||
103 | newabisafe.append(virtpnmap[a]) | ||
104 | else: | ||
105 | newabisafe.append(a) | ||
106 | self.abisaferecipes = newabisafe | ||
107 | newsafedeps = [] | ||
108 | for a in self.saferecipedeps: | ||
109 | a1, a2 = a.split("->") | ||
110 | if a1 in virtpnmap: | ||
111 | a1 = virtpnmap[a1] | ||
112 | if a2 in virtpnmap: | ||
113 | a2 = virtpnmap[a2] | ||
114 | newsafedeps.append(a1 + "->" + a2) | ||
115 | self.saferecipedeps = newsafedeps | ||
116 | |||
97 | def rundep_check(self, fn, recipename, task, dep, depname, dataCache = None): | 117 | def rundep_check(self, fn, recipename, task, dep, depname, dataCache = None): |
98 | return sstate_rundepfilter(self, fn, recipename, task, dep, depname, dataCache) | 118 | return sstate_rundepfilter(self, fn, recipename, task, dep, depname, dataCache) |
99 | 119 | ||