build: refine SETUP_BASIC_TEST to also support include directories

This commit is contained in:
skypjack
2026-03-21 15:29:21 +01:00
parent eec10a861e
commit 75769cde27

View File

@@ -98,9 +98,13 @@ set_target_properties(odr PROPERTIES POSITION_INDEPENDENT_CODE ON)
SETUP_TARGET(odr) SETUP_TARGET(odr)
function(SETUP_BASIC_TEST) function(SETUP_BASIC_TEST)
cmake_parse_arguments(BASIC_TEST "DEFS" "NAME" "SOURCES" ${ARGN}) set(options DEFS)
set(oneValueArgs NAME)
set(multiValueArgs SOURCES INCLUDE)
cmake_parse_arguments(BASIC_TEST "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
add_executable(${BASIC_TEST_NAME} $<TARGET_OBJECTS:odr> ${BASIC_TEST_SOURCES}) add_executable(${BASIC_TEST_NAME} $<TARGET_OBJECTS:odr> ${BASIC_TEST_SOURCES})
target_link_libraries(${BASIC_TEST_NAME} PRIVATE GTest::Main Threads::Threads) target_link_libraries(${BASIC_TEST_NAME} PRIVATE GTest::Main Threads::Threads)
target_include_directories(${BASIC_TEST_NAME} PRIVATE ${BASIC_TEST_INCLUDE})
SETUP_TARGET(${BASIC_TEST_NAME} ${BASIC_TEST_UNPARSED_ARGUMENTS}) SETUP_TARGET(${BASIC_TEST_NAME} ${BASIC_TEST_UNPARSED_ARGUMENTS})
add_test(NAME ${BASIC_TEST_NAME} COMMAND ${BASIC_TEST_NAME}) add_test(NAME ${BASIC_TEST_NAME} COMMAND ${BASIC_TEST_NAME})
set_tests_properties(${BASIC_TEST_NAME} PROPERTIES TIMEOUT 60) set_tests_properties(${BASIC_TEST_NAME} PROPERTIES TIMEOUT 60)