From 95e7dae968d83e7fa793dd72444e60338b801ecd Mon Sep 17 00:00:00 2001 From: Cristiana Voicu Date: Tue, 12 Feb 2013 15:27:22 +0200 Subject: bitbake: bitbake & hob: reparse config files, when sanity check updates bblayers.conf I've sent a patch to poky, with some changes in sanity.bbclass. When bblayers.conf is updated, it updates also a variable to know when to reparse configuration files. This patch contains the changes to reparse conf files, after a sanity check which changes bblayers.conf. [YOCTO #3213] (Bitbake rev: 966e3e59ceb1c8b33b5881f291c148ea6513eda0) Signed-off-by: Cristiana Voicu Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 14 ++++++++++---- bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 4 ++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index f70a04f460..9d051fa30f 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -977,10 +977,16 @@ class BBCooker: bb.fetch.fetcher_init(data) bb.codeparser.parser_cache_init(data) bb.event.fire(bb.event.ConfigParsed(), data) - bb.parse.init_parser(data) - data.setVar('BBINCLUDED',bb.parse.get_file_depends(data)) - self.configuration.data = data - self.configuration.data_hash = data.get_hash() + + if data.getVar("BB_INVALIDCONF") is True: + data.setVar("BB_INVALIDCONF", False) + self.parseConfigurationFiles(self.configuration.prefile, + self.configuration.postfile) + else: + bb.parse.init_parser(data) + data.setVar('BBINCLUDED',bb.parse.get_file_depends(data)) + self.configuration.data = data + self.configuration.data_hash = data.get_hash() def handleCollections( self, collections ): """Handle collections""" diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py index d953f3497c..15d28d927a 100644 --- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py +++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py @@ -202,6 +202,10 @@ class HobHandler(gobject.GObject): self.run_next_command() elif isinstance(event, bb.event.SanityCheckPassed): + reparse = self.runCommand(["getVariable", "BB_INVALIDCONF"]) or None + if reparse is True: + self.runCommand(["setVariable", "BB_INVALIDCONF", False]) + self.runCommand(["parseConfigurationFiles", "", ""]) self.run_next_command() elif isinstance(event, bb.event.SanityCheckFailed): -- cgit v1.2.3-54-g00ecf