diff --git a/Modules/CMakeDetermineCompilerId.cmake b/Modules/CMakeDetermineCompilerId.cmake index b612e7560..a0c0164b5 100644 --- a/Modules/CMakeDetermineCompilerId.cmake +++ b/Modules/CMakeDetermineCompilerId.cmake @@ -53,10 +53,12 @@ MACRO(CMAKE_DETERMINE_COMPILER_ID lang flagvar src) "${CMAKE_${lang}_COMPILER_ID_SRC}\" failed with the following output:\n" "${CMAKE_${lang}_COMPILER_ID_RESULT}\n" "${CMAKE_${lang}_COMPILER_ID_OUTPUT}\n\n") - MESSAGE(FATAL_ERROR "Compiling the ${lang} compiler identification source file \"" - "${CMAKE_${lang}_COMPILER_ID_SRC}\" failed with the following output:\n" - "${CMAKE_${lang}_COMPILER_ID_RESULT}\n" - "${CMAKE_${lang}_COMPILER_ID_OUTPUT}\n\n") + IF(NOT CMAKE_${lang}_COMPILER_ID_ALLOW_FAIL) + MESSAGE(FATAL_ERROR "Compiling the ${lang} compiler identification source file \"" + "${CMAKE_${lang}_COMPILER_ID_SRC}\" failed with the following output:\n" + "${CMAKE_${lang}_COMPILER_ID_RESULT}\n" + "${CMAKE_${lang}_COMPILER_ID_OUTPUT}\n\n") + ENDIF(NOT CMAKE_${lang}_COMPILER_ID_ALLOW_FAIL) ELSE(CMAKE_${lang}_COMPILER_ID_RESULT) # Compilation succeeded. FILE(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeOutput.log diff --git a/Modules/CMakeDetermineFortranCompiler.cmake b/Modules/CMakeDetermineFortranCompiler.cmake index 687bb8d18..3da3c9932 100644 --- a/Modules/CMakeDetermineFortranCompiler.cmake +++ b/Modules/CMakeDetermineFortranCompiler.cmake @@ -81,6 +81,7 @@ IF(NOT CMAKE_Fortran_COMPILER_ID_RUN) # Try to identify the compiler. SET(CMAKE_Fortran_COMPILER_ID) + SET(CMAKE_Fortran_COMPILER_ID_ALLOW_FAIL 1) INCLUDE(${CMAKE_ROOT}/Modules/CMakeDetermineCompilerId.cmake) CMAKE_DETERMINE_COMPILER_ID(Fortran FFLAGS ${CMAKE_ROOT}/Modules/CMakeFortranCompilerId.F90)