diff options
Diffstat (limited to 'savedefconfig.py')
| -rwxr-xr-x | savedefconfig.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/savedefconfig.py b/savedefconfig.py new file mode 100755 index 0000000..19a403b --- /dev/null +++ b/savedefconfig.py @@ -0,0 +1,47 @@ +#!/usr/bin/env python + +# Copyright (c) 2019, Ulf Magnusson +# SPDX-License-Identifier: ISC + +import argparse + +import kconfiglib + + +def main(): + parser = argparse.ArgumentParser( + formatter_class=argparse.RawDescriptionHelpFormatter, + description=""" +Saves a minimal configuration file that only lists symbols that differ in value +their defaults. Loading such a configuration file is equivalent to loading the +"full" configuration file. + +Minimal configuration files are handy to start from when editing configuration +files by hand. + +The default input configuration file is '.config'. A different input filename +can be passed in the KCONFIG_CONFIG environment variable. + +Note: Minimal configurations can also be generated from within the menuconfig +interface. +""") + + parser.add_argument( + "--kconfig", + default="Kconfig", + help="Base Kconfig file (default: Kconfig)") + + parser.add_argument( + "--out", + default="defconfig", + help="Output filename for minimal configuration (default: defconfig)") + + args = parser.parse_args() + + kconf = kconfiglib.Kconfig(args.kconfig) + kconf.load_config() + kconf.write_min_config(args.out) + + +if __name__ == "__main__": + main() |
