Currently if you do:
OVERRIDES = "z"
DEPENDS_prepend = "a "
DEPENDS = "b"
DEPENDS_z = "c"
d.update_data()
d.getVar("DEPENDS")
gives "a c"
d.update_data()
d.getVar("DEPENDS")
then gives "c"
This patch changes the behaviour such that at the time bitbake expands the DEPENDS_z
override, it removes "DEPENDS_z" from the data store. In the above example this would
mean that it wouldn't matter how often you call d.update_data(), you'd always get
"a c" back.
See the bitbake-devel mailing list for further discussion and analysis of the
potential impact of this change.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
if o not in self._seen_overrides:
continue
- vars = self._seen_overrides[o]
+ vars = self._seen_overrides[o].copy()
for var in vars:
name = var[:-l]
try:
self.setVar(name, self.getVar(var, False))
+ self.delVar(var)
+ self._seen_overrides[o].remove(var)
except Exception:
logger.info("Untracked delVar")