py_menuconfig.py 1.2 KB

1234567891011121314151617181920212223242526272829
  1. import os
  2. import sys
  3. from kconfiglib import Kconfig
  4. from menuconfig import menuconfig
  5. def project_menuconfig(config='.config', file='Kconfig'):
  6. # os.environ['MENUCONFIG_STYLE'] = 'default path=fg:black,bg:white separator=fg:white,bg:blue,bold selection=fg:white,bg:red,bold help=path'
  7. # os.environ['KCONFIG_CONFIG_HEADER'] = '#\n# Automatically generated file: Do not edit !!!\n#\n'
  8. # os.environ['KCONFIG_CONFIG'] = config
  9. # 判断是否在Windows下执行, 若是则启动一个独立的命令行提示符窗口来执行menuconfig
  10. if sys.platform.startswith('win'):
  11. os.system('start /wait cmd.exe /c menuconfig.exe %s' % file)
  12. #write_autoconf
  13. #Kconfig(filename=config)
  14. kconf = Kconfig(file, warn_to_stderr=False,
  15. suppress_traceback=True)
  16. print(kconf.load_config(config, False))
  17. print(kconf.load_config('prj.config', False))
  18. print(kconf.load_config('overwrite.config', False))
  19. #print(kconf.write_config(config))
  20. print(kconf.write_autoconf("test.h"))
  21. # os.system('start /wait cmd.exe /c guiconfig.exe %s' % file)
  22. else:
  23. menuconfig(Kconfig(filename=file))
  24. # guiconfig(Kconfig(filename=file))
  25. project_menuconfig()