diff options
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-12-20 19:02:11 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-11 17:21:47 +0000
commit84b3a5ac3509109abd7550ee8becd3daa8ded0df (patch)
parent7bab6ffc45494aea9b5c6264a153b3f9b6290301 (diff)
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 <richard.purdie@linuxfoundation.org>
1 files changed, 3 insertions, 2 deletions
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py
index b07c2664393..98f56ac7be9 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: