这里以正点原子的i.mx6ull的alientek开发板为例
1.我们可以通过include/configs/mx6ull_alientek_emmc.h头文件对u-boot进行裁剪配置,这个文件是我们移植到正点原子开发板的时候自己添加的
这个文件发挥作用是依赖include/config.h文件,这个头文件是编译过程中自动生成的,里面有#include <configs/mx6ull_alientek_emmc.h>这样一句话,把include/configs/mx6ull_alientek_emmc.h包含了进来。
2.可以通过make menuconfig 和 make mx6ull_alientek_emmc_defconfig进行配置
这两个指令都是正式编译u-boot之前运行的。
make mx6ull_alientek_emmc_defconfig会根据mx6ull_alientek_emmc_defconfig的内容生成.config文件;
make menuconfig 会根据Kconfig生成图形界面,并最终将用户的选择记录到.config文件中,
经测试即使没有使用make menuconfig, 只使用了make mx6ull_alientek_emmc_defconfig,Kconfig在u-boot的生成过程中也会发挥作用。查看编译日志,发现了一条scripts/kconfig/conf --silentoldconfig Kconfig 的指令,具体作用未深究,但Kconfig肯定是发挥作用了,并且会影响1中include/config.h文件的生成。所以移植u-boot的时候Kconfig文件也是要修改的,即使不使用图形界面也要配置好Kconfig。
正式编译u-boot的时候,会根据.config等生成include/generated/autoconf.h文件