@@ -278,18 +278,27 @@ endif()
278278
279279# Check the usage of the user provided or automatically found LAPACK libraries 
280280if (LAPACK_LIBRARIES)
281-   include (CheckFortranFunctionExists)
282-   set (CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES} )
283-   # Check if new routine of 3.4.0 is in LAPACK_LIBRARIES 
284-   CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt"  LATESTLAPACK_FOUND)
285-   unset (CMAKE_REQUIRED_LIBRARIES)
286-   if (LATESTLAPACK_FOUND)
287-     message (STATUS  "--> LAPACK supplied by user is WORKING, will use ${LAPACK_LIBRARIES} ." )
281+   include (CheckLanguage)
282+   check_language(Fortran)
283+   if (CMAKE_Fortran_COMPILER)
284+     enable_language (Fortran)
285+     include (CheckFortranFunctionExists)
286+     set (CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES} )
287+     # Check if new routine of 3.4.0 is in LAPACK_LIBRARIES 
288+     CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt"  LATESTLAPACK_FOUND)
289+     unset (CMAKE_REQUIRED_LIBRARIES)
290+     if (LATESTLAPACK_FOUND)
291+       message (STATUS  "--> LAPACK supplied by user is WORKING, will use ${LAPACK_LIBRARIES} ." )
292+     else ()
293+       message (ERROR "--> LAPACK supplied by user is not WORKING or is older than LAPACK 3.4.0, CANNOT USE ${LAPACK_LIBRARIES} ." )
294+       message (ERROR "-->     Will use REFERENCE LAPACK (by default)" )
295+       message (ERROR "-->     Or Correct your LAPACK_LIBRARIES entry " )
296+       message (ERROR "-->     Or Consider checking USE_OPTIMIZED_LAPACK" )
297+     endif ()
288298  else ()
289-     message (ERROR "--> LAPACK supplied by user is not WORKING or is older than LAPACK 3.4.0, CANNOT USE ${LAPACK_LIBRARIES} ." )
290-     message (ERROR "-->     Will use REFERENCE LAPACK (by default)" )
291-     message (ERROR "-->     Or Correct your LAPACK_LIBRARIES entry " )
292-     message (ERROR "-->     Or Consider checking USE_OPTIMIZED_LAPACK" )
299+     message (STATUS  "--> LAPACK supplied by user is ${LAPACK_LIBRARIES} ." )
300+     message (STATUS  "--> CMake couldn't find a Fortran compiler, so it cannot check if the provided LAPACK library works." )
301+     set (LATESTLAPACK_FOUND TRUE )
293302  endif ()
294303endif ()
295304
@@ -350,6 +359,7 @@ endif()
350359# Cache export target 
351360set (LAPACK_INSTALL_EXPORT_NAME_CACHE ${LAPACK_INSTALL_EXPORT_NAME} )
352361if (BUILD_TESTING OR  LAPACKE_WITH_TMG)
362+   enable_language (Fortran)
353363  if (LATESTLAPACK_FOUND AND  LAPACKE_WITH_TMG)
354364    set (CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES} )
355365    # Check if dlatms (part of tmg) is found 
0 commit comments