summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/siggen.py
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2012-05-30 17:17:18 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-05-30 17:23:32 +0100
commit534f31903b98de9298c69f4de4d6cd1c51d394d6 (patch)
treebf9ddc40879ce0101545dee3365edc1561ca5471 /bitbake/lib/bb/siggen.py
parent43551f513da4c6dc81043099f9e8aa0211eefd8e (diff)
downloadpoky-534f31903b98de9298c69f4de4d6cd1c51d394d6.tar.gz
bitbake: include varflags in checksums
Add a dependency to each variable on a filtered list of its varflags. This is intended to catch things such as SRC_URI checksums, varflags controlling extra functionality from classes (e.g. the recently updated update-alternatives class in OE-Core), etc. and ensure their values influence the sstate checksums. There is an exclusion list which needs to be set via bitbake.conf (BB_SIGNATURE_EXCLUDE_FLAGS), if this is not set then the functionality is disabled. The existing vardepsexclude mechanism can also be used to exclude undesired varflags, but they must be fully specified, e.g.: do_patch[vardepsexclude] += "do_patch[someflag]" Implements [YOCTO #2517]. (Bitbake rev: 56c1ab18fcaf4ac245dcb412ed55e8e0af07883b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/siggen.py')
-rw-r--r--bitbake/lib/bb/siggen.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py
index daf56770f9..c4b7c3992e 100644
--- a/bitbake/lib/bb/siggen.py
+++ b/bitbake/lib/bb/siggen.py
@@ -108,6 +108,10 @@ class SignatureGeneratorBasic(SignatureGenerator):
108 data = data + dep 108 data = data + dep
109 if dep in lookupcache: 109 if dep in lookupcache:
110 var = lookupcache[dep] 110 var = lookupcache[dep]
111 elif dep[-1] == ']':
112 vf = dep[:-1].split('[')
113 var = d.getVarFlag(vf[0], vf[1], False)
114 lookupcache[dep] = var
111 else: 115 else:
112 var = d.getVar(dep, False) 116 var = d.getVar(dep, False)
113 lookupcache[dep] = var 117 lookupcache[dep] = var