mirror of
https://github.com/reactos/CMake.git
synced 2024-12-15 23:57:44 +00:00
c869984ea0
This will allow decoupling the name of the test from the name and location of the source file under test, which means one source file can be used for multiple tests. Rename the PARENT_SCOPE test in RunCMake.set to not use a keyword of the if() command as a file name. As the filename is now used with an if condition, this causes a conflict.
34 lines
693 B
CMake
34 lines
693 B
CMake
set(FOO )
|
|
set(BAR "bar")
|
|
set(BAZ "baz")
|
|
set(BOO "boo")
|
|
|
|
function(_parent_scope)
|
|
set(FOO "foo" PARENT_SCOPE)
|
|
set(BAR "" PARENT_SCOPE)
|
|
set(BAZ PARENT_SCOPE)
|
|
unset(BOO PARENT_SCOPE)
|
|
endfunction()
|
|
|
|
_parent_scope()
|
|
|
|
if(NOT DEFINED FOO)
|
|
message(FATAL_ERROR "FOO not defined")
|
|
elseif(NOT "${FOO}" STREQUAL "foo")
|
|
message(FATAL_ERROR "FOO should be \"foo\", not \"${FOO}\"")
|
|
endif()
|
|
|
|
if(NOT DEFINED BAR)
|
|
message(FATAL_ERROR "BAR not defined")
|
|
elseif(NOT "${BAR}" STREQUAL "")
|
|
message(FATAL_ERROR "BAR should be an empty string, not \"${BAR}\"")
|
|
endif()
|
|
|
|
if(DEFINED BAZ)
|
|
message(FATAL_ERROR "BAZ defined")
|
|
endif()
|
|
|
|
if(DEFINED BOO)
|
|
message(FATAL_ERROR "BOO defined")
|
|
endif()
|