diff options
| author | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-02-25 21:35:50 -0500 |
|---|---|---|
| committer | Jacob McDonnell <jacob@jacobmcdonnell.com> | 2026-02-25 21:35:50 -0500 |
| commit | 84830c81c9e0188c840d13b99e077d557f210c21 (patch) | |
| tree | ecc1c17b0dfec4a3fc4fdc657a4ee4291fddc22b /cmake | |
| parent | 76b511c7fecac26e305600f3a2274d1039e62b67 (diff) | |
feat: Support for menuconfig & genconfig
Support for menuconfig and genconfg as targets in cmake.
Diffstat (limited to 'cmake')
| -rw-r--r-- | cmake/Kconfig.cmake | 31 | ||||
| -rw-r--r-- | cmake/TC-clang.cmake | 7 |
2 files changed, 38 insertions, 0 deletions
diff --git a/cmake/Kconfig.cmake b/cmake/Kconfig.cmake new file mode 100644 index 0000000..e19a539 --- /dev/null +++ b/cmake/Kconfig.cmake @@ -0,0 +1,31 @@ +set(TOOL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/tools) +set(KCONFIG_DIR ${TOOL_DIR}/Kconfiglib) +set(LOCAL_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/.config) + +function(parse_dot_config) +endfunction() + +if(DEFCONFIG) + execute_process(COMMAND ${KCONFIG_DIR}/defconfig.py ${CMAKE_CURRENT_SOURCE_DIR}/configs/${DEFCONFIG}) +else() + message(FATAL_ERROR "DEFCONFIG not set.") +endif() + +#if(EXISTS ${LOCAL_CONFIG}) +#endif() + +add_custom_target(menuconfig + COMMAND ${KCONFIG_DIR}/menuconfig.py + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} +) + +add_custom_target(genconfig + COMMAND ${KCONFIG_DIR}/genconfig.py --header-path ${CMAKE_BINARY_DIR}/generated.h --config-out ${CMAKE_BINARY_DIR}/config.make + COMMAND ${TOOL_DIR}/make-cmake-config ${CMAKE_BINARY_DIR}/config.make + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} +) + +if(EXISTS ${CMAKE_BINARY_DIR}/config.cmake) + include(${CMAKE_BINARY_DIR}/config.cmake) +endif() + diff --git a/cmake/TC-clang.cmake b/cmake/TC-clang.cmake new file mode 100644 index 0000000..992011f --- /dev/null +++ b/cmake/TC-clang.cmake @@ -0,0 +1,7 @@ +set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR amd64) + +set(tools /usr/lib/llvm/21/) +set(CMAKE_C_COMPILER ${tools}/bin/clang) +set(CMAKE_CXX_COMPILER ${tools}/bin/clang++) +add_compile_options(-g) |
