mirror of
https://github.com/swaywm/sway.git
synced 2024-11-25 17:31:28 +00:00
46 lines
1.4 KiB
CMake
46 lines
1.4 KiB
CMake
|
find_package(A2X REQUIRED)
|
||
|
|
||
|
function(configure_test)
|
||
|
set(options)
|
||
|
set(oneValueArgs NAME SUBPROJECT)
|
||
|
set(multiValueArgs WRAPPERS SOURCES INCLUDES LIBRARIES)
|
||
|
cmake_parse_arguments(CONFIGURE_TEST "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
||
|
message("${CONFIGURE_TEST_SOURCES}")
|
||
|
message("${CONFIGURE_TEST_WRAPPERS}")
|
||
|
|
||
|
include_directories(
|
||
|
${CMOCKA_INCLUDE_DIR}
|
||
|
${CONFIGURE_TEST_INCLUDES}
|
||
|
)
|
||
|
add_definitions(${CMOCKA_DEFINITIONS})
|
||
|
|
||
|
set(
|
||
|
CMAKE_RUNTIME_OUTPUT_DIRECTORY
|
||
|
${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/test/${CONFIGURE_TEST_SUBPROJECT}/${CONFIGURE_TEST_NAME}
|
||
|
)
|
||
|
|
||
|
add_executable(${CONFIGURE_TEST_NAME}_test ${CONFIGURE_TEST_SOURCES})
|
||
|
|
||
|
list(LENGTH CONFIGURE_TEST_WRAPPERS WRAPPED_COUNT)
|
||
|
|
||
|
if(NOT ${WRAPPED_COUNT} STREQUAL "0")
|
||
|
set(WRAPPED "")
|
||
|
|
||
|
foreach(WRAPPER ${CONFIGURE_TEST_WRAPPERS})
|
||
|
string(REGEX REPLACE "\\n" "" WRAPPER "${WRAPPER}")
|
||
|
set(WRAPPED
|
||
|
"${WRAPPED} \
|
||
|
-Wl,--wrap=${WRAPPER}"
|
||
|
)
|
||
|
message("${WRAPPER}, ${WRAPPED}")
|
||
|
endforeach()
|
||
|
|
||
|
set_target_properties(${CONFIGURE_TEST_NAME}_test
|
||
|
PROPERTIES
|
||
|
LINK_FLAGS "${WRAPPED}"
|
||
|
)
|
||
|
endif()
|
||
|
|
||
|
target_link_libraries(${CONFIGURE_TEST_NAME}_test ${CMOCKA_LIBRARIES} ${CONFIGURE_TEST_LIBRARIES})
|
||
|
endfunction()
|