diff options
Diffstat (limited to 'bitbake/lib/bb/ui/crumbs/hobeventhandler.py')
-rw-r--r-- | bitbake/lib/bb/ui/crumbs/hobeventhandler.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py index 3f5bebaca3..393c258e46 100644 --- a/bitbake/lib/bb/ui/crumbs/hobeventhandler.py +++ b/bitbake/lib/bb/ui/crumbs/hobeventhandler.py | |||
@@ -21,6 +21,7 @@ | |||
21 | 21 | ||
22 | import gobject | 22 | import gobject |
23 | import logging | 23 | import logging |
24 | import ast | ||
24 | from bb.ui.crumbs.runningbuild import RunningBuild | 25 | from bb.ui.crumbs.runningbuild import RunningBuild |
25 | 26 | ||
26 | class HobHandler(gobject.GObject): | 27 | class HobHandler(gobject.GObject): |
@@ -357,7 +358,20 @@ class HobHandler(gobject.GObject): | |||
357 | def set_incompatible_license(self, incompat_license): | 358 | def set_incompatible_license(self, incompat_license): |
358 | self.set_var_in_file("INCOMPATIBLE_LICENSE", incompat_license, "local.conf") | 359 | self.set_var_in_file("INCOMPATIBLE_LICENSE", incompat_license, "local.conf") |
359 | 360 | ||
361 | def set_extra_setting(self, extra_setting): | ||
362 | self.set_var_in_file("EXTRA_SETTING", extra_setting, "local.conf") | ||
363 | |||
360 | def set_extra_config(self, extra_setting): | 364 | def set_extra_config(self, extra_setting): |
365 | old_extra_setting = ast.literal_eval(self.runCommand(["getVariable", "EXTRA_SETTING"]) or "{}") | ||
366 | if extra_setting: | ||
367 | self.set_var_in_file("EXTRA_SETTING", extra_setting, "local.conf") | ||
368 | else: | ||
369 | self.remove_var_from_file("EXTRA_SETTING") | ||
370 | |||
371 | #remove not needed settings from conf | ||
372 | for key in old_extra_setting: | ||
373 | if key not in extra_setting: | ||
374 | self.remove_var_from_file(key) | ||
361 | for key in extra_setting.keys(): | 375 | for key in extra_setting.keys(): |
362 | value = extra_setting[key] | 376 | value = extra_setting[key] |
363 | self.set_var_in_file(key, value, "local.conf") | 377 | self.set_var_in_file(key, value, "local.conf") |
@@ -477,6 +491,9 @@ class HobHandler(gobject.GObject): | |||
477 | self.server.runCommand(["setVarFile", var, val, default_file, "earlyAssign"]) | 491 | self.server.runCommand(["setVarFile", var, val, default_file, "earlyAssign"]) |
478 | self.runCommand(["disableDataTracking"]) | 492 | self.runCommand(["disableDataTracking"]) |
479 | 493 | ||
494 | def remove_var_from_file(self, var): | ||
495 | self.server.runCommand(["removeVarFile", var]) | ||
496 | |||
480 | def append_var_in_file(self, var, val, default_file=None): | 497 | def append_var_in_file(self, var, val, default_file=None): |
481 | self.server.runCommand(["setVarFile", var, val, default_file, "append"]) | 498 | self.server.runCommand(["setVarFile", var, val, default_file, "append"]) |
482 | 499 | ||