From 36b2b90bc01ae3da3918d5af2eab1f81200ca4e1 Mon Sep 17 00:00:00 2001 From: chao an Date: Fri, 17 Jan 2025 21:35:36 +0800 Subject: [PATCH] cmake/mkconfig: add support of set custom command options to config.h add support of set custom command options to config.h Use the -D parameter to pass the config to header file. NOTE which must begin with the CONFIG_ prefix. eg: cmake -DCONFIG_AAA=1 -DCONFIG_BBB=1 -B build -DBOARD_CONFIG=sim/nsh -GNinja Signed-off-by: chao an --- cmake/nuttx_mkconfig.cmake | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/cmake/nuttx_mkconfig.cmake b/cmake/nuttx_mkconfig.cmake index e5ff721a44e..8b334c2b67f 100644 --- a/cmake/nuttx_mkconfig.cmake +++ b/cmake/nuttx_mkconfig.cmake @@ -135,6 +135,22 @@ foreach(NameAndValue ${ConfigContents}) endif() endforeach() +# cmake-format: off +# add support of set custom command options to config.h +# Use the -D parameter to pass the config to header file. +# NOTE which must start with the CONFIG_ prefix. +# eg: +# cmake -DCONFIG_AAA=1 -DCONFIG_BBB=1 -B build -DBOARD_CONFIG=sim/nsh -GNinja +# cmake-format: on + +get_cmake_property(cache_vars CACHE_VARIABLES) +foreach(var ${cache_vars}) + string(REGEX MATCH "^CONFIG_[^=]+" name ${var}) + if(name) + file(APPEND ${CONFIG_H} "#define ${var} ${${var}}\n") + endif() +endforeach() + file(APPEND ${CONFIG_H} "\n/* Sanity Checks *****************************************/\n\n") file(APPEND ${CONFIG_H}