CMake/Tests/CMakeTests/MessageTest.cmake.in
Brad King ca3b93d9c6 ENH: Teach message() how to display warnings
This adds message(WARNING) and message(AUTHOR_WARNING) command modes and
fully documents the command behavior in all modes.
2009-03-06 10:04:06 -05:00

31 lines
877 B
CMake

execute_process(
COMMAND ${CMAKE_COMMAND} -P
"@CMAKE_CURRENT_SOURCE_DIR@/MessageTestScript.cmake"
OUTPUT_VARIABLE out
ERROR_VARIABLE err
RESULT_VARIABLE result
)
message("out=[${out}]")
message("err=[${err}]")
if(NOT "${result}" STREQUAL "0")
message(FATAL_ERROR "message script failed: [${result}]")
endif()
if(NOT "${out}" MATCHES "message-status")
message(FATAL_ERROR "message(STATUS) did not go to stdout")
endif()
if(NOT "${err}" MATCHES "message-default")
message(FATAL_ERROR "message() did not go to stderr by default")
endif()
if(NOT "${err}" MATCHES "CMake Warning at[^\n]*:\r?\n message-warning")
message(FATAL_ERROR "message(WARNING) did not appear properly")
endif()
if(NOT "${err}" MATCHES "CMake Warning \\(dev\\) at[^\n]*:\r?\n message-author")
message(FATAL_ERROR "message(AUTHOR_WARNING) did not appear properly")
endif()