Setting Kconfig configuration values
生成的配置文件:zephyr/build/.config: for CMake use.zephyr/build/zephyr/include/generated/autoconf.h: for c file use.
所有的Kconfig配置会merge如下路径的Kconfig files:
board/<arch>/<BOARD>/<BOARD>_defconfig- CMake中定义的
CONFIG_XXX - Application configuration(APP 目录下的Kconfig相关文件)
第三点Application configuration又会从如下路径获取Kconfig,默认使用prj.conf:
- 如果定义了
CONF_FILE, 会把该文件的Kconfig merge进来。CONF_FILE可以在如下定义- App的
CMakeLists.txt, 在find_package(zephyr)前定义。 - west直接传入
-DCONF_FILE=<conf file(s)> - From the CMake variable cache
- App的
- 如果未定义
CONF_FILE, 如果存在prj_<BOARD>.conf,merge进prj.conf。 - 如果存在
board/<BOARD>.conf,merge进prj.conf。 - 如果存在
board/<BOARD>_<revision>.conf,merge进prj.conf。 - merge必须有的
prj.conf。
如果board/下的<BOARD>_defconfig和APP/下的Kconfig冲突了,以APP的为准。