diff options
Diffstat (limited to 'Tests/ExternalProjectSubdir/CMakeLists.txt')
-rw-r--r-- | Tests/ExternalProjectSubdir/CMakeLists.txt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Tests/ExternalProjectSubdir/CMakeLists.txt b/Tests/ExternalProjectSubdir/CMakeLists.txt index 013b418..e65087a 100644 --- a/Tests/ExternalProjectSubdir/CMakeLists.txt +++ b/Tests/ExternalProjectSubdir/CMakeLists.txt @@ -2,6 +2,19 @@ cmake_minimum_required(VERSION 3.2) project(ExternalProjectSubdir NONE) include(ExternalProject) +# Remove the custom target output to be sure it runs in an +# incremental test. Skip this on VS 6 because it sometimes +# re-runs CMake after the custom command runs. +if(NOT CMAKE_GENERATOR STREQUAL "Visual Studio 6") + file(REMOVE ${CMAKE_CURRENT_BINARY_DIR}/PreSubdir1.txt) +endif() + +add_custom_target(PreSubdir1 + COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_CURRENT_BINARY_DIR}/PreSubdir1.txt + ) +add_library(PreSubdir1Interface INTERFACE) +add_dependencies(PreSubdir1Interface PreSubdir1) + ExternalProject_Add(Subdir1 SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Subdir1 BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/Subdir1 @@ -11,4 +24,6 @@ ExternalProject_Add(Subdir1 BUILD_COMMAND "" INSTALL_COMMAND "" + + DEPENDS PreSubdir1Interface ) |