mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 00:39:46 +00:00
bitbake/data_smart: Change overrides behaviour to remove expanded variables from the datastore
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.
(Bitbake rev: 899d45b90061eb3cf3e71029072eee42cd80930c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -172,11 +172,13 @@ class DataSmart(MutableMapping):
|
|||||||
if o not in self._seen_overrides:
|
if o not in self._seen_overrides:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
vars = self._seen_overrides[o]
|
vars = self._seen_overrides[o].copy()
|
||||||
for var in vars:
|
for var in vars:
|
||||||
name = var[:-l]
|
name = var[:-l]
|
||||||
try:
|
try:
|
||||||
self.setVar(name, self.getVar(var, False))
|
self.setVar(name, self.getVar(var, False))
|
||||||
|
self.delVar(var)
|
||||||
|
self._seen_overrides[o].remove(var)
|
||||||
except Exception:
|
except Exception:
|
||||||
logger.info("Untracked delVar")
|
logger.info("Untracked delVar")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user