summaryrefslogtreecommitdiffstats
path: root/lib/bb/ui/crumbs
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-12-02 17:48:40 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-12-03 12:44:49 +0000
commitbae5210d7e048022f083361964ebec7daf1608f7 (patch)
tree99deb423473a42f7a9358bbd967958e5216b7526 /lib/bb/ui/crumbs
parentcd7f4d85e3f187140d1bb0aecf82f657a8f8701a (diff)
downloadopenembedded-core-contrib-bae5210d7e048022f083361964ebec7daf1608f7.tar.gz
cooker/command/hob: Cleanup configuration init/reset functions and commands
initConfigurationData and loadConfigurationData are similar functions, the only reason for them appears to be to be able to reset the pre/post configuration files. The current code is confusing and unmaintainable. Instead this patch creates a new Sync command which allows these to be explicitly set. The init and load functions can then be merged into one. There is then no need for a parseConfiguration command, we can simply reset the server to have the settings take effect. The reset fuction is not an instant value return and triggers an event so it should be an Async command, not a sync one. The number of calls for the set pre/post command is probably higher than it need be but someone with more familiarity with the hob code base can probably figure out the right places its needed (maybe just init_cooker?). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/ui/crumbs')
-rwxr-xr-xlib/bb/ui/crumbs/builder.py1
-rw-r--r--lib/bb/ui/crumbs/hobeventhandler.py17
2 files changed, 8 insertions, 10 deletions
diff --git a/lib/bb/ui/crumbs/builder.py b/lib/bb/ui/crumbs/builder.py
index 1ace5cf714..e0fc0d1114 100755
--- a/lib/bb/ui/crumbs/builder.py
+++ b/lib/bb/ui/crumbs/builder.py
@@ -704,7 +704,6 @@ class Builder(gtk.Window):
self.set_user_config_proxies()
def set_user_config(self):
- self.handler.reset_cooker()
# set bb layers
self.handler.set_bblayers(self.configuration.layers)
# set local configuration
diff --git a/lib/bb/ui/crumbs/hobeventhandler.py b/lib/bb/ui/crumbs/hobeventhandler.py
index 06a05b67f4..ce8584df4c 100644
--- a/lib/bb/ui/crumbs/hobeventhandler.py
+++ b/lib/bb/ui/crumbs/hobeventhandler.py
@@ -149,9 +149,7 @@ class HobHandler(gobject.GObject):
elif next_command == self.SUB_MATCH_CLASS:
self.runCommand(["findFilesMatchingInDir", "rootfs_", "classes"])
elif next_command == self.SUB_PARSE_CONFIG:
- self.runCommand(["enableDataTracking"])
- self.runCommand(["parseConfigurationFiles", "conf/.hob.conf", ""])
- self.runCommand(["disableDataTracking"])
+ self.runCommand(["resetCooker"])
elif next_command == self.SUB_GNERATE_TGTS:
self.runCommand(["generateTargetsTree", "classes/image.bbclass", []])
elif next_command == self.SUB_GENERATE_PKGINFO:
@@ -206,7 +204,8 @@ class HobHandler(gobject.GObject):
reparse = self.runCommand(["getVariable", "BB_INVALIDCONF"]) or None
if reparse is True:
self.set_var_in_file("BB_INVALIDCONF", False, "local.conf")
- self.runCommand(["parseConfigurationFiles", "conf/.hob.conf", ""])
+ self.runCommand(["setPrePostConfFiles", "conf/.hob.conf", ""])
+ self.commands_async.prepend(self.SUB_PARSE_CONFIG)
self.run_next_command()
elif isinstance(event, bb.event.SanityCheckFailed):
@@ -304,12 +303,8 @@ class HobHandler(gobject.GObject):
return
def init_cooker(self):
- self.runCommand(["initCooker"])
self.runCommand(["createConfigFile", ".hob.conf"])
- def reset_cooker(self):
- self.runCommand(["resetCooker"])
-
def set_extra_inherit(self, bbclass):
inherits = self.runCommand(["getVariable", "INHERIT"]) or ""
inherits = inherits + " " + bbclass
@@ -409,15 +404,17 @@ class HobHandler(gobject.GObject):
self.run_next_command(self.NETWORK_TEST)
def generate_configuration(self):
- self.commands_async.append(self.SUB_PARSE_CONFIG)
+ self.runCommand(["setPrePostConfFiles", "conf/.hob.conf", ""])
self.commands_async.append(self.SUB_PATH_LAYERS)
self.commands_async.append(self.SUB_FILES_DISTRO)
self.commands_async.append(self.SUB_FILES_MACH)
self.commands_async.append(self.SUB_FILES_SDKMACH)
self.commands_async.append(self.SUB_MATCH_CLASS)
+ self.commands_async.append(self.SUB_PARSE_CONFIG)
self.run_next_command(self.GENERATE_CONFIGURATION)
def generate_recipes(self):
+ self.runCommand(["setPrePostConfFiles", "conf/.hob.conf", ""])
self.commands_async.append(self.SUB_PARSE_CONFIG)
self.commands_async.append(self.SUB_GNERATE_TGTS)
self.run_next_command(self.GENERATE_RECIPES)
@@ -427,6 +424,7 @@ class HobHandler(gobject.GObject):
targets.extend(tgts)
self.recipe_queue = targets
self.default_task = default_task
+ self.runCommand(["setPrePostConfFiles", "conf/.hob.conf", ""])
self.commands_async.append(self.SUB_PARSE_CONFIG)
self.commands_async.append(self.SUB_BUILD_RECIPES)
self.run_next_command(self.GENERATE_PACKAGES)
@@ -438,6 +436,7 @@ class HobHandler(gobject.GObject):
self.package_queue = image_packages
self.toolchain_packages = toolchain_packages
self.default_task = default_task
+ self.runCommand(["setPrePostConfFiles", "conf/.hob.conf", ""])
self.commands_async.append(self.SUB_PARSE_CONFIG)
self.commands_async.append(self.SUB_BUILD_IMAGE)
self.run_next_command(self.GENERATE_IMAGE)