summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorxoviat <xoviat@users.noreply.github.com>2018-02-20 19:56:32 (GMT)
committerBrad King <brad.king@kitware.com>2018-02-21 15:23:38 (GMT)
commit965f977c7c90512f80776781dfeb52bc7e73bcff (patch)
tree13dfd57fb2a85d06f2f63e2a9df8a7a0f9722868 /Modules
parentb89252689cf5d63495de4b0458aa3c239acd01d4 (diff)
downloadCMake-965f977c7c90512f80776781dfeb52bc7e73bcff.zip
CMake-965f977c7c90512f80776781dfeb52bc7e73bcff.tar.gz
CMake-965f977c7c90512f80776781dfeb52bc7e73bcff.tar.bz2
Fortran: Adjust compiler candidates based on host platform
Typical Fortran compiler command-line tool names differ on Windows and non-Windows platforms. Also, the name `ifc` should not be used on Windows because there is an `ifc.exe` tool in Visual Studio that is unrelated. Fixes: #17752
Diffstat (limited to 'Modules')
-rw-r--r--Modules/CMakeDetermineFortranCompiler.cmake20
1 files changed, 14 insertions, 6 deletions
diff --git a/Modules/CMakeDetermineFortranCompiler.cmake b/Modules/CMakeDetermineFortranCompiler.cmake
index cf502f6..5ddd64f 100644
--- a/Modules/CMakeDetermineFortranCompiler.cmake
+++ b/Modules/CMakeDetermineFortranCompiler.cmake
@@ -66,12 +66,20 @@ else()
# The order is 95 or newer compilers first, then 90,
# then 77 or older compilers, gnu is always last in the group,
# so if you paid for a compiler it is picked by default.
- set(CMAKE_Fortran_COMPILER_LIST
- ftn
- ifort ifc af95 af90 efc f95 pathf2003 pathf95 pgf95 pgfortran lf95 xlf95
- fort flang gfortran gfortran-4 g95 f90 pathf90 pgf90 xlf90 epcf90 fort77
- frt pgf77 xlf fl32 af77 g77 f77 nag
- )
+ if(CMAKE_HOST_WIN32)
+ set(CMAKE_Fortran_COMPILER_LIST
+ ifort pgf95 pgfortran lf95 fort
+ flang gfortran gfortran-4 g95 f90 pgf90
+ pgf77 g77 f77 nag
+ )
+ else()
+ set(CMAKE_Fortran_COMPILER_LIST
+ ftn
+ ifort ifc efc pgf95 pgfortran lf95 xlf95 fort
+ flang gfortran gfortran-4 g95 f90 pgf90
+ frt pgf77 xlf g77 f77 nag
+ )
+ endif()
# Vendor-specific compiler names.
set(_Fortran_COMPILER_NAMES_GNU gfortran gfortran-4 g95 g77)