summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorAlexander Kanavin <alex@linutronix.de>2025-09-29 14:56:16 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2025-10-04 11:16:43 +0100
commitbbef4aeb3a78f740ef836f0ecd563e05303c9ee1 (patch)
tree291204f72d54c42c8339f9d0d57ac0ede447ec08 /bitbake
parent0399d4b95b890077a93e902f4a633bf957b40063 (diff)
downloadpoky-bbef4aeb3a78f740ef836f0ecd563e05303c9ee1.tar.gz
bitbake: bitbake-setup: improve robustness of loading/writing settings
Particularly: - ensure global settings command line argument is always expanded to full path - ensure any errors that happen when loading settings are reported at that point, otherwise we get an empty dictionary and cryptic key errors later (Bitbake rev: b3f3ea52e90fb2036074cc88fd00496eb995346d) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rwxr-xr-xbitbake/bin/bitbake-setup6
1 files changed, 3 insertions, 3 deletions
diff --git a/bitbake/bin/bitbake-setup b/bitbake/bin/bitbake-setup
index 8ceacada9a..1fbb65494b 100755
--- a/bitbake/bin/bitbake-setup
+++ b/bitbake/bin/bitbake-setup
@@ -635,11 +635,11 @@ def load_settings(top_dir, non_interactive):
635 settings_path = default_settings_path(top_dir) 635 settings_path = default_settings_path(top_dir)
636 settings = configparser.ConfigParser() 636 settings = configparser.ConfigParser()
637 print('Loading settings from\n {}\n'.format(settings_path)) 637 print('Loading settings from\n {}\n'.format(settings_path))
638 settings.read([settings_path]) 638 settings.read_file(open(settings_path))
639 return settings 639 return settings
640 640
641def global_settings_path(args): 641def global_settings_path(args):
642 return args.global_settings if args.global_settings else os.path.join(os.path.expanduser('~'), '.config', 'bitbake-setup', 'config') 642 return os.path.abspath(args.global_settings) if args.global_settings else os.path.join(os.path.expanduser('~'), '.config', 'bitbake-setup', 'config')
643 643
644def write_global_settings(settings_path, force_replace, non_interactive=True): 644def write_global_settings(settings_path, force_replace, non_interactive=True):
645 if not os.path.exists(settings_path) or force_replace: 645 if not os.path.exists(settings_path) or force_replace:
@@ -673,7 +673,7 @@ def load_global_settings(settings_path, non_interactive):
673 673
674 settings = configparser.ConfigParser() 674 settings = configparser.ConfigParser()
675 print('Loading global settings from\n {}\n'.format(settings_path)) 675 print('Loading global settings from\n {}\n'.format(settings_path))
676 settings.read([settings_path]) 676 settings.read_file(open(settings_path))
677 return settings 677 return settings
678 678
679def change_settings(top_dir, new_settings): 679def change_settings(top_dir, new_settings):