04-30-2020, 01:07 PM
因为coreboot的board-status的主板支持列表对variant的支持不好,所以我有重构相关代码的想法。我的思路是从Kconfig里面直接拿到主板名称等信息,而要操作Kconfig,我觉得用脚本手动parse,不如直接用Kconfig现成的parser方便。但现在Kconfig的parser是用lex和bison做的,产生的是C语言的代码,AST是用一堆指针连接起来的树结构表示的,很不直观。
为了调试方便,Kconfig的源码里面有一个zconfdump(FILE*)函数,但它输出的是一份Kconfig,而不是AST,而且我尝试运行的时候,还出错了。所以要想满足我的需求,我需要重新做一个dump AST的功能,或者重新写一个parser.
我之前有一个做调查问卷系统的想法,今天突然想到,Kconfig就是一个这样的系统。一份调查问卷可以写成Kconfig文件,menuconfig/nconfig/xconfig做成html+js,一个调查问卷系统就出来了。
为了调试方便,Kconfig的源码里面有一个zconfdump(FILE*)函数,但它输出的是一份Kconfig,而不是AST,而且我尝试运行的时候,还出错了。所以要想满足我的需求,我需要重新做一个dump AST的功能,或者重新写一个parser.
我之前有一个做调查问卷系统的想法,今天突然想到,Kconfig就是一个这样的系统。一份调查问卷可以写成Kconfig文件,menuconfig/nconfig/xconfig做成html+js,一个调查问卷系统就出来了。