summaryrefslogtreecommitdiffstats
path: root/Tests/ExternalProjectSubdir/CMakeLists.txt
blob: e65087a8cc6dc3f7fcd0be22f8c82885aa564fb8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
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

  CMAKE_ARGS -DNORMAL_VAR=NORMAL_VALUE -DGENEX_VAR=$<1:GENEX_VALUE>
  LOG_CONFIGURE 1

  BUILD_COMMAND ""
  INSTALL_COMMAND ""

  DEPENDS PreSubdir1Interface
  )