cmake: all allyes target for better CI coverage

Currently only v6x-rt and SITL are supported
But targets with label allyes will try to enable all kconfig symbols
This commit is contained in:
Peter van der Perk
2024-03-31 21:32:17 +02:00
committed by Daniel Agar
parent 791d7894c8
commit a9ba0acb2a
5 changed files with 335 additions and 1 deletions

View File

@@ -25,6 +25,7 @@ set(COMMON_KCONFIG_ENV_SETTINGS
TOOLCHAIN=${CMAKE_TOOLCHAIN_FILE}
ARCHITECTURE=${CMAKE_SYSTEM_PROCESSOR}
ROMFSROOT=${config_romfs_root}
BASE_DEFCONFIG=${BOARD_CONFIG}
)
set(config_user_list)
@@ -52,6 +53,15 @@ if(EXISTS ${BOARD_DEFCONFIG})
)
endif()
if(${LABEL} MATCHES "allyes")
message(AUTHOR_WARNING "allyes build: allyes is for CI coverage and not for use in production")
execute_process(
COMMAND ${CMAKE_COMMAND} -E env ${COMMON_KCONFIG_ENV_SETTINGS}
${PYTHON_EXECUTABLE} ${PX4_SOURCE_DIR}/Tools/kconfig/allyesconfig.py
WORKING_DIRECTORY ${PX4_SOURCE_DIR}
)
endif()
# Generate header file for C/C++ preprocessor
execute_process(
COMMAND ${CMAKE_COMMAND} -E env ${COMMON_KCONFIG_ENV_SETTINGS}
@@ -438,7 +448,7 @@ if(${LABEL} MATCHES "default" OR ${LABEL} MATCHES "bootloader" OR ${LABEL} MATCH
COMMAND_EXPAND_LISTS
)
else()
elseif(NOT ${LABEL} MATCHES "allyes") # All other configs except allyes which isn't configurable
add_custom_target(boardconfig
${CMAKE_COMMAND} -E env ${COMMON_KCONFIG_ENV_SETTINGS} ${MENUCONFIG_PATH} Kconfig
COMMAND ${CMAKE_COMMAND} -E env ${COMMON_KCONFIG_ENV_SETTINGS} ${SAVEDEFCONFIG_PATH}