diff options
author | Brad King <brad.king@kitware.com> | 2011-12-15 14:20:28 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2011-12-15 14:25:49 (GMT) |
commit | fcb2a27982bf8648c3aa3de58a4d54c7d700f580 (patch) | |
tree | 43641b7df27faedfaa9d532f6b46f20ad92cefb3 /Tests | |
parent | 4ed1769186f0622efced9d89e6593d136c920dd2 (diff) | |
download | CMake-fcb2a27982bf8648c3aa3de58a4d54c7d700f580.zip CMake-fcb2a27982bf8648c3aa3de58a4d54c7d700f580.tar.gz CMake-fcb2a27982bf8648c3aa3de58a4d54c7d700f580.tar.bz2 |
Fix and simplify Fortran test compiler compatibility check
Since commit 38aab379 (Set CMAKE_<lang>_COMPILER_ID for VS generators,
2011-09-02) the VS IDE generators set the C and C++ compiler id to MSVC
and the Fortran compiler id to Intel. This caused the Fortran test to
fail compatible compiler detection because the if() test
"${CMAKE_C_COMPILER_ID}" MATCHES "MSVC"
is evaluated as the "var MATCHES regex" signature which evaluates the
compiler id "MSVC" as a variable which is defined to 1 which does not
match "MSVC".
Combine tests for non-identical but compatible compiler vendors into a
single regex match whose left hand side will not be defined as a
variable.
Diffstat (limited to 'Tests')
-rw-r--r-- | Tests/Fortran/CMakeLists.txt | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/Tests/Fortran/CMakeLists.txt b/Tests/Fortran/CMakeLists.txt index ba0bdcc..a995f68 100644 --- a/Tests/Fortran/CMakeLists.txt +++ b/Tests/Fortran/CMakeLists.txt @@ -113,16 +113,8 @@ endfunction() # if the id's match or the compilers are compatible, then # call the test_fortran_c_interface_module function -if(("${CMAKE_Fortran_COMPILER_ID}" MATCHES "Intel") - AND - ("${CMAKE_C_COMPILER_ID}" MATCHES "MSVC") - ) - set(COMPATABLE_COMPILERS TRUE) -endif() -if("${CMAKE_Fortran_COMPILER_ID}:${CMAKE_C_COMPILER_ID}" MATCHES "Absoft:GNU") - set(COMPATABLE_COMPILERS TRUE) -endif() -if(COMPATABLE_COMPILERS +if("${CMAKE_Fortran_COMPILER_ID}:${CMAKE_C_COMPILER_ID}" MATCHES + "(Intel:MSVC|Absoft:GNU)" OR ("${CMAKE_Fortran_COMPILER_ID}" MATCHES "${CMAKE_C_COMPILER_ID}" )) test_fortran_c_interface_module() else() |