diff --git a/envsetup.py b/envsetup.py index e0d01453d736317e575c58ef13809775ae9165a7..c804e17b9f6f3c0760766cfa29957b2614bfb3c6 100755 --- a/envsetup.py +++ b/envsetup.py @@ -136,14 +136,14 @@ class EnvSetup(): elif target == 'c': # Display current configuration log('Configuration status:') - status = utils.get_conf('_config_status') - if not status: - log('No configuration.') + override = utils.get_conf('_override') + if not override: + log('Configuration status not available.') else: log('Is default | Name | Value') - for name, info in status.items(): - is_default = '\033[94m yes' if info['using_default'] else '\033[93m no ' - log('%s\033[0m | \033[95m%s\033[0m | \033[96m%s\033[0m' % (is_default, name, info['value'])) + for name, is_overriden in override.items(): + is_default = '\033[93m no ' if is_overriden else '\033[94m yes' + log('%s\033[0m | \033[95m%s\033[0m | \033[96m%s\033[0m' % (is_default, name, utils.get_conf(name))) else: # Run an action found = False diff --git a/utils.py b/utils.py index 2de2ac0aa3dcc78136c9d151a6059d50af226a63..547bf73914289b35c374b8c0a67480f18d832847 100644 --- a/utils.py +++ b/utils.py @@ -41,12 +41,13 @@ def exec_cmd(cmd, get_out=False): def load_conf(): + base_dir = get_dir(__file__) files = ( - (DEFAULT_CONF_PATH, True), - (CONF_PATH, False), + (os.path.join(base_dir, DEFAULT_CONF_PATH), True), + (os.path.join(base_dir, CONF_PATH), False), ) only_default = True - status = OrderedDict() + override = OrderedDict() for path, is_default in files: if not os.path.exists(path): log('The configuration file for EnvSetup script does not exist.\nPath of configuration file: %s' % path, error=True) @@ -64,21 +65,19 @@ def load_conf(): val = ('='.join(val)).strip(' \t\'\"') CONF[name] = val if is_default: - status[name] = dict(value=val, using_default=True) + override[name] = False else: only_default = False - if name not in status: - status[name] = dict() - status[name]['value'] = val - status[name]['using_default'] = False - CONF['_config_status'] = status + override[name] = True + CONF['_override'] = override # Check a value to know if the config file has been changed if only_default: log('\033[93mWarning:\033[0m') log('The configuration is using only default values.') log('Perhaps you forget to change the configuration.') - log('Path of configuration file: %s' % CONF_PATH) + log('Path of configuration file: %s' % os.path.join(base_dir, CONF_PATH)) log('Perhaps you want to quit this script to change the configuration?\n') + return CONF def get_conf(name, default=None):