mirror of
				https://github.com/riscv-software-src/opensbi
				synced 2025-11-04 14:00:31 +00:00 
			
		
		
		
	We adopt Kconfiglib v14.1.0 sources under scripts directory so that top-level OpenSBI makefile can directly use Kconfiglib scripts without expecting users to install a particular version of Kconfiglib on their build system. Signed-off-by: Anup Patel <apatel@ventanamicro.com> Tested-by: Andrew Jones <ajones@ventanamicro.com> Acked-by: Atish Patra <atishp@rivosinc.com> Tested-by: Atish Patra <atishp@rivosinc.com>
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
#!/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()
 |