a3c98cb30e
Fix passing a list to the CMAKE_CACHE_ARGS and CMAKE_CACHE_DEFAULT_ARGS options of ExternalProject_Add. Following commit v3.7.0-rc1~273^2~1 (prefer list(APPEND) over string(APPEND) where appropriate, 2016-08-08), the semicolon list separator after the first list element was missing in the generated cache.
27 lines
756 B
CMake
27 lines
756 B
CMake
set(_cache_file "${RunCMake_TEST_BINARY_DIR}/tmp/FOO-cache-Debug.cmake")
|
|
|
|
if(NOT EXISTS "${_cache_file}")
|
|
set(RunCMake_TEST_FAILED "Initial cache not created")
|
|
return()
|
|
endif()
|
|
|
|
file(READ "${_cache_file}" _cache)
|
|
|
|
if(NOT "${_cache}" MATCHES "set\\(FOO \"BAR\".+\\)") # \(\)
|
|
set(RunCMake_TEST_FAILED "Cannot find FOO argument in cache")
|
|
return()
|
|
endif()
|
|
if("${CMAKE_MATCH_0}" MATCHES FORCE)
|
|
set(RunCMake_TEST_FAILED "Expected not forced FOO argument")
|
|
return()
|
|
endif()
|
|
|
|
if(NOT "${_cache}" MATCHES "set\\(TEST_LIST \"A;B;C\".+\\)")
|
|
set(RunCMake_TEST_FAILED "Cannot find TEST_LIST argument in cache")
|
|
return()
|
|
endif()
|
|
if("${CMAKE_MATCH_0}" MATCHES FORCE)
|
|
set(RunCMake_TEST_FAILED "Expected not forced TEST_LIST argument")
|
|
return()
|
|
endif()
|