Allow old Fortran code for LAPACK tests to compile despite argument mismatch errors (REAL passed to COMPLEX workspace argument) with GNU Fortran 10.

(cherry picked from commit 7e096ddcb09d560a846b119691e48651e74ee677)
This commit is contained in:
Rasmus Munk Larsen 2021-08-30 12:26:39 -07:00
parent 07cc362238
commit 0fdc99c65e

View File

@ -5,6 +5,13 @@ include(CheckLanguage)
check_language(Fortran) check_language(Fortran)
if(CMAKE_Fortran_COMPILER) if(CMAKE_Fortran_COMPILER)
enable_language(Fortran) enable_language(Fortran)
if("${CMAKE_Fortran_COMPILER_ID}" STREQUAL "GNU")
if ("${CMAKE_Fortran_COMPILER_VERSION}" VERSION_GREATER_EQUAL 10.0)
# We use an old version of LAPACK with argument type mismatches.
# Allow them to compile anyway with newer GNU versions.
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fallow-argument-mismatch")
endif()
endif()
set(EIGEN_Fortran_COMPILER_WORKS ON) set(EIGEN_Fortran_COMPILER_WORKS ON)
else() else()
set(EIGEN_Fortran_COMPILER_WORKS OFF) set(EIGEN_Fortran_COMPILER_WORKS OFF)