You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

22 lines
632 B

include(ExternalProject)
set(_tmp_dir "${CMAKE_CURRENT_BINARY_DIR}/tmp")
set(_cache_file "${_tmp_dir}/FOO-cache.cmake")
ExternalProject_Add(FOO TMP_DIR "${_tmp_dir}"
DOWNLOAD_COMMAND ""
CMAKE_CACHE_ARGS "-DFOO:STRING=BAR")
if(NOT EXISTS "${_cache_file}")
message(FATAL_ERROR "Initial cache not created")
endif()
file(READ "${_cache_file}" _cache)
if(NOT "${_cache}" MATCHES "set\\(FOO \"BAR\".+\\)") # \(\)
message(FATAL_ERROR "Cannot find FOO argument in cache")
endif()
if(NOT "${CMAKE_MATCH_0}" MATCHES FORCE)
message(FATAL_ERROR "Expected forced FOO argument")
endif()