Tests: Add case to cover ExternalProject with subdirectories
Add an ExternalProjectSubdir test directory with a minimal test showing use of ExternalProject_Add for a source tree in a subdirectory. This will allow us to easily add test external projects that cover specific behavior where the client project must check results.
This commit is contained in:
parent
5a5ef00106
commit
1cf43dcf7c
|
@ -1326,6 +1326,18 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
|
|||
set_tests_properties(ExternalProject PROPERTIES
|
||||
TIMEOUT ${CMAKE_LONG_TEST_TIMEOUT})
|
||||
|
||||
add_test(NAME ExternalProjectSubdir
|
||||
COMMAND ${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/ExternalProjectSubdir"
|
||||
"${CMake_BINARY_DIR}/Tests/ExternalProjectSubdir"
|
||||
${build_generator_args}
|
||||
--build-project ExternalProjectSubdir
|
||||
--force-new-ctest-process
|
||||
--build-options ${build_options}
|
||||
)
|
||||
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/ExternalProjectSubdir")
|
||||
|
||||
add_test(ExternalProjectLocal ${CMAKE_CTEST_COMMAND}
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/ExternalProjectLocal"
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
project(ExternalProjectSubdir NONE)
|
||||
include(ExternalProject)
|
||||
|
||||
ExternalProject_Add(Subdir1
|
||||
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Subdir1
|
||||
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/Subdir1
|
||||
|
||||
CMAKE_ARGS -DNORMAL_VAR=NORMAL_VALUE
|
||||
LOG_CONFIGURE 1
|
||||
|
||||
BUILD_COMMAND ""
|
||||
INSTALL_COMMAND ""
|
||||
)
|
|
@ -0,0 +1,6 @@
|
|||
cmake_minimum_required(VERSION 3.2)
|
||||
project(Subdir1 NONE)
|
||||
|
||||
if(NOT "${NORMAL_VAR}" STREQUAL "NORMAL_VALUE")
|
||||
message(SEND_ERROR "NORMAL_VAR != 'NORMAL_VALUE'")
|
||||
endif()
|
Loading…
Reference in New Issue