From bb3be6ee9793f23c275d318f58cb6cf21391b371 Mon Sep 17 00:00:00 2001 From: Ulf Magnusson Date: Sun, 17 Nov 2019 05:39:37 +0100 Subject: Support giving the header path in KCONFIG_AUTOHEADER This environment variable is used by the C tools. Use it when filename=None is passed to write_autoconf(), and default to include/generated/autoconf.h for compatibility. Also update genconfig.py to use KCONFIG_AUTOHEADER if set when no --header-path is passed. If KCONFIG_AUTOHEADER isn't set, keep defaulting to 'config.h' for backwards compatibility. It's probably a saner default for tools as well. --- genconfig.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'genconfig.py') diff --git a/genconfig.py b/genconfig.py index 96124c5..b202a5b 100755 --- a/genconfig.py +++ b/genconfig.py @@ -35,7 +35,6 @@ import sys import kconfiglib -DEFAULT_HEADER_PATH = "config.h" DEFAULT_SYNC_DEPS_PATH = "deps/" @@ -47,9 +46,11 @@ def main(): parser.add_argument( "--header-path", metavar="HEADER_FILE", - default=DEFAULT_HEADER_PATH, - help="Path for the generated header file (default: {})" - .format(DEFAULT_HEADER_PATH)) + help=""" +Path to write the generated header file to. If not specified, the path in the +environment variable KCONFIG_AUTOHEADER is used if it is set, and 'config.h' +otherwise. +""") parser.add_argument( "--config-out", @@ -107,7 +108,17 @@ only supported for backwards compatibility). kconf = kconfiglib.Kconfig(args.kconfig_filename) kconf.load_config() - kconf.write_autoconf(args.header_path) + if args.header_path is None: + if "KCONFIG_AUTOHEADER" in os.environ: + kconf.write_autoconf() + else: + # Kconfiglib defaults to include/generated/autoconf.h to be + # compatible with the C tools. 'config.h' is used here instead for + # backwards compatibility. It's probably a saner default for tools + # as well. + kconf.write_autoconf("config.h") + else: + kconf.write_autoconf(args.header_path) if args.config_out is not None: kconf.write_config(args.config_out, save_old=False) -- cgit v1.2.3