diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-05-30 17:17:18 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-05-30 17:23:32 +0100 |
commit | 534f31903b98de9298c69f4de4d6cd1c51d394d6 (patch) | |
tree | bf9ddc40879ce0101545dee3365edc1561ca5471 /bitbake/lib/bb/siggen.py | |
parent | 43551f513da4c6dc81043099f9e8aa0211eefd8e (diff) | |
download | poky-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.py | 4 |
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 |