From 62914f9208ef2427a34daa523af857f4027900eb Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 12 Sep 2013 13:06:22 +0000 Subject: data_smart: Account for changes in append/prepend/remove in the config hash bitbake wasn't reparsing when _remove items were added to its configuration and equally, appends/prepends were also being badly tracked. This change enrures these variables are accounted for in the configuration hash. [YOCTO #5172] Signed-off-by: Richard Purdie --- lib/bb/data_smart.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'lib/bb/data_smart.py') diff --git a/lib/bb/data_smart.py b/lib/bb/data_smart.py index 20e33a487..635b25983 100644 --- a/lib/bb/data_smart.py +++ b/lib/bb/data_smart.py @@ -635,13 +635,13 @@ class DataSmart(MutableMapping): self.varhistory.record(**loginfo) self.dict[var][i] = flags[i] - def getVarFlags(self, var): + def getVarFlags(self, var, internalflags=False): local_var = self._findVar(var) flags = {} if local_var: for i in local_var: - if i.startswith("_"): + if i.startswith("_") and not internalflags: continue flags[i] = local_var[i] @@ -750,13 +750,16 @@ class DataSmart(MutableMapping): for key in keys: if key in config_whitelist: continue + value = d.getVar(key, False) or "" data.update({key:value}) - varflags = d.getVarFlags(key) + varflags = d.getVarFlags(key, internalflags = True) if not varflags: continue for f in varflags: + if f == "_content": + continue data.update({'%s[%s]' % (key, f):varflags[f]}) for key in ["__BBTASKS", "__BBANONFUNCS", "__BBHANDLERS"]: -- cgit 1.2.3-korg