diff options
author | Brad King <brad.king@kitware.com> | 2015-04-21 15:32:22 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-04-22 12:48:52 (GMT) |
commit | e1c6df392bae4f807bbc56f2c4320de412f48721 (patch) | |
tree | 6ef9578dcdbdd01d6ee5059374c56a590a326392 /Tests/ExternalProjectSubdir/CMakeLists.txt | |
parent | c0502faa4b6c0a3c33d1b0dd346801ff8d4f8b0d (diff) | |
download | CMake-e1c6df392bae4f807bbc56f2c4320de412f48721.zip CMake-e1c6df392bae4f807bbc56f2c4320de412f48721.tar.gz CMake-e1c6df392bae4f807bbc56f2c4320de412f48721.tar.bz2 |
ExternalProject: Allow dependencies on INTERFACE libraries
Respect INTERFACE library property whitelist. Check that a target has
type "UTILITY" before querying other properties.
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 ) |