summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-18 07:55:47 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-18 15:13:15 +0100
commitf3ee534cb0560dbb5f88a0ffe01e9305bae102e1 (patch)
treeca65b18cdb6811f9e0516d8f446165c56c2c6ded
parent944734503768f9e9223ef041f2d7873455418a54 (diff)
downloadbitbake-f3ee534cb0560dbb5f88a0ffe01e9305bae102e1.zip
data_smart: Ensure OVERRIDES dependencies account for contains()
The dependencies of OVERRIDES were not including DEFAULTTUNE in OE-Core. This is pulled in by a bb.utils.contains() reference which the override dependency tracking code wasn't accounting for. This patch ensures we do track contains references too. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/data_smart.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py
index 51cf8130..70558c15 100644
--- a/lib/bb/data_smart.py
+++ b/lib/bb/data_smart.py
@@ -530,12 +530,16 @@ class DataSmart(MutableMapping):
self._setvar_update_overridevars(var, value)
def _setvar_update_overridevars(self, var, value):
- new = self.expandWithRefs(value, var).references
+ vardata = self.expandWithRefs(value, var)
+ new = vardata.references
+ new.update(vardata.contains.keys())
while not new.issubset(self.overridevars):
nextnew = set()
self.overridevars.update(new)
for i in new:
- nextnew.update(self.expandWithRefs(self.getVar(i, True), i).references)
+ vardata = self.expandWithRefs(self.getVar(i, True), i)
+ nextnew.update(vardata.references)
+ nextnew.update(vardata.contains.keys())
new = nextnew
self.internal_finalize(True)