summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorKevin Tian <kevin.tian@intel.com>2010-11-23 00:35:03 +0800
committerRichard Purdie <rpurdie@linux.intel.com>2010-12-07 12:45:08 +0000
commit4336d676d44b18242691306d319b4c57fb591ced (patch)
tree2b632b3bfcf4248bfdff1243810316e13f352ec3 /bitbake
parent55859b9c3d6fb806427ccbcfb6cda095ef557f29 (diff)
downloadopenembedded-core-4336d676d44b18242691306d319b4c57fb591ced.tar.gz
siggen.py: fix the wrong usage on BB_TASKHASH_WHITELIST
BB_TASKHASH_WHITELIST is expected to filter out native tasks from the dependency list for target recipe's checksum. However current code actually implements the opposite. All native sstate packages end up to have empty task dependency while target sstate packages still have native tasks counted into the checksum. Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/lib/bb/siggen.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py
index 9e956ee91f..391020a9ed 100644
--- a/bitbake/lib/bb/siggen.py
+++ b/bitbake/lib/bb/siggen.py
@@ -108,11 +108,15 @@ class SignatureGeneratorBasic(SignatureGenerator):
data = dataCache.basetaskhash[k]
self.runtaskdeps[k] = []
for dep in sorted(deps):
- if self.twl and self.twl.search(dataCache.pkg_fn[fn]):
- #bb.note("Skipping %s" % dep)
- continue
+ # We only manipulate the dependencies for packages not in the whitelist
+ if self.twl and not self.twl.search(dataCache.pkg_fn[fn]):
+ # then process the actual dependencies
+ dep_fn = re.search("(?P<fn>.*)\..*", dep).group('fn')
+ if self.twl.search(dataCache.pkg_fn[dep_fn]):
+ #bb.note("Skipping %s" % dep)
+ continue
if dep not in self.taskhash:
- bb.fatal("%s is not in taskhash, caller isn't calling in dependency order?", dep)
+ bb.fatal("%s is not in taskhash, caller isn't calling in dependency order?", dep)
data = data + self.taskhash[dep]
self.runtaskdeps[k].append(dep)
h = hashlib.md5(data).hexdigest()