From 84b3a5ac3509109abd7550ee8becd3daa8ded0df Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Tue, 20 Dec 2016 19:02:11 +0000 Subject: bitbake: cookerdata: Convert multiconfig to use BB_CURRENT_MC People are struggling with multiconfig as the point the conf file is injected into the data store is not what people expect. We can't really use a post config since that is too late and we can't really use a pre config file since that is too early. In OE terms, we need something right around the local.conf point so it behaves in a similar way. A way to handle this is to set the new variable BB_CURRENT_MC to be the currently selected multiconfig, then the metadata itself can choose when to inject the approriate configuration. (Bitbake rev: 1469828fa747da0aaaa3e964954ff17f2b3180fa) Signed-off-by: Richard Purdie --- bitbake/lib/bb/cookerdata.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py index b07c266439..98f56ac7be 100644 --- a/bitbake/lib/bb/cookerdata.py +++ b/bitbake/lib/bb/cookerdata.py @@ -288,7 +288,7 @@ class CookerDataBuilder(object): multiconfig = (self.data.getVar("BBMULTICONFIG", True) or "").split() for config in multiconfig: - mcdata = self.parseConfigurationFiles(['conf/multiconfig/%s.conf' % config] + self.prefiles, self.postfiles) + mcdata = self.parseConfigurationFiles(self.prefiles, self.postfiles, config) bb.event.fire(bb.event.ConfigParsed(), mcdata) self.mcdata[config] = mcdata @@ -304,8 +304,9 @@ class CookerDataBuilder(object): def _findLayerConf(self, data): return findConfigFile("bblayers.conf", data) - def parseConfigurationFiles(self, prefiles, postfiles): + def parseConfigurationFiles(self, prefiles, postfiles, mc = "default"): data = bb.data.createCopy(self.basedata) + data.setVar("BB_CURRENT_MC", mc) # Parse files for loading *before* bitbake.conf and any includes for f in prefiles: -- cgit 1.2.3-korg