mirror of
https://github.com/boostorg/cmake.git
synced 2026-01-19 04:02:15 +00:00
Add support for WORKING_DIRECTORY to boost_test
Allow to set the working directory for the test and the VS debugger target.
This commit is contained in:
@@ -9,6 +9,7 @@ set(BOOST_TEST_COMPILE_DEFINITIONS "")
|
||||
set(BOOST_TEST_COMPILE_OPTIONS "")
|
||||
set(BOOST_TEST_COMPILE_FEATURES "")
|
||||
set(BOOST_TEST_SOURCES "")
|
||||
set(BOOST_TEST_WORKING_DIRECTORY "")
|
||||
|
||||
# Include guard
|
||||
|
||||
@@ -38,7 +39,7 @@ function(__boost_test_list_replace list what with)
|
||||
|
||||
endfunction()
|
||||
|
||||
# boost_test( [TYPE type] [PREFIX prefix] [NAME name] [IGNORE_TEST_GLOBALS]
|
||||
# boost_test( [TYPE type] [PREFIX prefix] [NAME name] [WORKING_DIRECTORY wd] [IGNORE_TEST_GLOBALS]
|
||||
# SOURCES sources...
|
||||
# ARGUMENTS args...
|
||||
# LINK_LIBRARIES libs...
|
||||
@@ -49,7 +50,7 @@ endfunction()
|
||||
|
||||
function(boost_test)
|
||||
|
||||
cmake_parse_arguments(_ "IGNORE_TEST_GLOBALS" "TYPE;PREFIX;NAME" "SOURCES;ARGUMENTS;LIBRARIES;LINK_LIBRARIES;COMPILE_DEFINITIONS;COMPILE_OPTIONS;COMPILE_FEATURES" ${ARGN})
|
||||
cmake_parse_arguments(_ "IGNORE_TEST_GLOBALS" "TYPE;PREFIX;NAME;WORKING_DIRECTORY" "SOURCES;ARGUMENTS;LIBRARIES;LINK_LIBRARIES;COMPILE_DEFINITIONS;COMPILE_OPTIONS;COMPILE_FEATURES" ${ARGN})
|
||||
|
||||
if(NOT __TYPE)
|
||||
set(__TYPE run)
|
||||
@@ -86,6 +87,7 @@ function(boost_test)
|
||||
set(BOOST_TEST_COMPILE_OPTIONS "")
|
||||
set(BOOST_TEST_COMPILE_FEATURES "")
|
||||
set(BOOST_TEST_SOURCES "")
|
||||
set(BOOST_TEST_WORKING_DIRECTORY "")
|
||||
|
||||
endif()
|
||||
|
||||
@@ -94,6 +96,9 @@ function(boost_test)
|
||||
list(APPEND BOOST_TEST_COMPILE_OPTIONS ${__COMPILE_OPTIONS})
|
||||
list(APPEND BOOST_TEST_COMPILE_FEATURES ${__COMPILE_FEATURES})
|
||||
list(APPEND BOOST_TEST_SOURCES ${__SOURCES})
|
||||
if(__WORKING_DIRECTORY)
|
||||
set(BOOST_TEST_WORKING_DIRECTORY ${__WORKING_DIRECTORY})
|
||||
endif()
|
||||
|
||||
if(MSVC)
|
||||
|
||||
@@ -211,6 +216,10 @@ function(boost_test)
|
||||
if(__TYPE STREQUAL "run-fail")
|
||||
set_tests_properties(${__TYPE}-${__NAME} PROPERTIES WILL_FAIL TRUE)
|
||||
endif()
|
||||
if(BOOST_TEST_WORKING_DIRECTORY)
|
||||
set_target_properties(${__NAME} PROPERTIES VS_DEBUGGER_WORKING_DIRECTORY "${BOOST_TEST_WORKING_DIRECTORY}")
|
||||
set_tests_properties(${__TYPE}-${__NAME} PROPERTIES WORKING_DIRECTORY "${BOOST_TEST_WORKING_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
else()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user