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()