diff --git a/scripts/cmake/test/OgsTestWrapper.cmake b/scripts/cmake/test/OgsTestWrapper.cmake index e2dbdba8d8dc659d46c8da40ca84167f8366e7b9..84dee510960774f0908175e4751bce87ebcd19e7 100644 --- a/scripts/cmake/test/OgsTestWrapper.cmake +++ b/scripts/cmake/test/OgsTestWrapper.cmake @@ -2,14 +2,19 @@ execute_process( COMMAND ${WRAPPER_COMMAND} ${EXECUTABLE} ${EXECUTABLE_ARGS} WORKING_DIRECTORY ${WORKING_DIRECTORY} RESULT_VARIABLE EXIT_CODE - OUTPUT_FILE ${LOG_FILE} - ERROR_FILE ${LOG_FILE} + OUTPUT_VARIABLE LOG + ERROR_VARIABLE LOG ) if(EXIT_CODE STREQUAL "0") - if(DEFINED ENV{CI}) - file(REMOVE ${LOG_FILE}) + if(NOT DEFINED ENV{CI}) + file(WRITE ${LOG_FILE} "${LOG}") endif() else() - message(FATAL_ERROR "Exit code: ${EXIT_CODE}; log file: ${LOG_FILE}") + if(CAT_LOG) + message(FATAL_ERROR "Exit code: ${EXIT_CODE}; log:\n${LOG}") + else() + file(WRITE ${LOG_FILE} "${LOG}") + message(FATAL_ERROR "Exit code: ${EXIT_CODE}; log file: ${LOG_FILE}") + endif() endif()