#!/usr/bin/env python3 # Copyright (c) 2019, Ulf Magnusson # SPDX-License-Identifier: ISC """ Reads a specified configuration file, then writes a new configuration file. This can be used to initialize the configuration from e.g. an arch-specific configuration file. This input configuration file would usually be a minimal configuration file, as generated by e.g. savedefconfig. The default output filename is '.config'. A different filename can be passed in the KCONFIG_CONFIG environment variable. """ import argparse import kconfiglib def main(): parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description=__doc__) parser.add_argument( "--kconfig", default="Kconfig", help="Top-level Kconfig file (default: Kconfig)") parser.add_argument( "config", metavar="CONFIGURATION", help="Input configuration file") args = parser.parse_args() kconf = kconfiglib.Kconfig(args.kconfig, suppress_traceback=True) print(kconf.load_config(args.config)) print(kconf.write_config()) if __name__ == "__main__": main()