From 834dd533ed7d73d8e97aea64bb276b4b86e71eea Mon Sep 17 00:00:00 2001 From: Alin Elena Date: Mon, 21 Jul 2008 13:40:31 -0400 Subject: ENH: checks if Fortran is enbaled. If not an error message is produced. --- Modules/FindBLAS.cmake | 13 ++++++++----- Modules/FindLAPACK.cmake | 8 +++++++- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index 58d0967..8aa425f 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -1,4 +1,5 @@ -# - Find BLAS library +# - Find a Fortran BLAS library +# N.B. Fortran only. This module cannot be used to find a C BLAS library. # This module finds an installed fortran library that implements the BLAS # linear-algebra interface (see http://www.netlib.org/blas/). # The list of libraries searched for is taken @@ -15,6 +16,11 @@ # BLAS95_LIBRARIES - uncached list of libraries (using full path name) # to link against to use BLAS95 interface # +get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES) +if(NOT _LANGUAGES_ MATCHES Fortran) + message(FATAL_ERROR "FindBLAS is Fortran-only so Fortran must be enabled.") +endif(NOT _LANGUAGES_ MATCHES Fortran) + include(CheckFortranFunctionExists) macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list) @@ -65,10 +71,7 @@ macro(Check_Fortran_Libraries LIBRARIES _prefix _name _flags _list) # Test this combination of libraries. set(CMAKE_REQUIRED_LIBRARIES ${_flags} ${${LIBRARIES}}) #message("DEBUG: CMAKE_REQUIRED_LIBRARIES = ${CMAKE_REQUIRED_LIBRARIES}") - get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES) - if(_LANGUAGES_ MATCHES Fortran) - check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS) - endif(_LANGUAGES_ MATCHES Fortran) + check_fortran_function_exists(${_name} ${_prefix}${_combined_name}_WORKS) set(CMAKE_REQUIRED_LIBRARIES) mark_as_advanced(${_prefix}${_combined_name}_WORKS) set(_libraries_work ${${_prefix}${_combined_name}_WORKS}) diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index 693287d..b3fece3 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -1,4 +1,5 @@ -# - Find LAPACK library +# - Find a Fortran LAPACK library +# N.B. Fortran only. This module cannot be used to find a C LAPACK library. # This module finds an installed fortran library that implements the LAPACK # linear-algebra interface (see http://www.netlib.org/lapack/). # @@ -17,6 +18,11 @@ # +get_property(_LANGUAGES_ GLOBAL PROPERTY ENABLED_LANGUAGES) +if(NOT _LANGUAGES_ MATCHES Fortran) + message(FATAL_ERROR "FindLAPACK is Fortran-only so Fortran must be enabled.") +endif(NOT _LANGUAGES_ MATCHES Fortran) + include(CheckFortranFunctionExists) set(LAPACK_FOUND FALSE) -- cgit v0.12