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 | ||
