blob: 9ce99b8a4dd30db8785459f53188ac2d54425afb (
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
30
|
function(TEST variable)
if(ARGC GREATER 2)
set(i 0)
foreach(value IN LISTS ${variable})
math(EXPR j "${i} + 1")
set(${variable}[${i}] "${value}")
TEST(${variable}[${i}] "${ARGV${j}}")
set(i ${j})
endforeach()
else()
set(expected "${ARGN}")
if("${expected}" STREQUAL "UNDEFINED")
if(DEFINED ${variable})
message(FATAL_ERROR "'${variable}' shall be undefined but has value '${${variable}}'")
endif()
elseif("${expected}" STREQUAL "FALSE")
if(NOT ${variable} STREQUAL "FALSE")
message(FATAL_ERROR "'${variable}' shall be FALSE")
endif()
elseif("${expected}" STREQUAL "TRUE")
if(NOT ${variable} STREQUAL "TRUE")
message(FATAL_ERROR "'${variable}' shall be TRUE")
endif()
else()
if(NOT ${variable} STREQUAL "${expected}")
message(FATAL_ERROR "'${variable}' shall be '${expected}'")
endif()
endif()
endif()
endfunction()
|