diff options
author | Brad King <brad.king@kitware.com> | 2021-07-15 14:50:02 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2021-07-15 14:50:22 (GMT) |
commit | 23e87ae1632f77972736aa9b9e11ef07ebffd513 (patch) | |
tree | 1d7af6c2e5f10490a390a7b7b7bb1476d55329f3 | |
parent | 769c539d599ca1911e4d63a2b8e248d1e26bd078 (diff) | |
parent | 76487b04b152b2dc6abc258b21306f58c57a3e80 (diff) | |
download | CMake-23e87ae1632f77972736aa9b9e11ef07ebffd513.zip CMake-23e87ae1632f77972736aa9b9e11ef07ebffd513.tar.gz CMake-23e87ae1632f77972736aa9b9e11ef07ebffd513.tar.bz2 |
Merge topic 'findblaslapack-cray'
76487b04b1 Find{BLAS,LAPACK}: clean variables
fc54e68c05 Find{BLAS,LAPACK}: improve found message on Cray
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6348
-rw-r--r-- | Modules/FindBLAS.cmake | 37 | ||||
-rw-r--r-- | Modules/FindLAPACK.cmake | 28 |
2 files changed, 39 insertions, 26 deletions
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index 726ff75..0898240 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -386,6 +386,8 @@ if(BLA_VENDOR STREQUAL "All") ) endif() if(BLAS_WORKS) + # Give a more helpful "found" message + set(BLAS_WORKS "implicitly linked") set(_blas_fphsa_req_var BLAS_WORKS) endif() endif() @@ -439,7 +441,7 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") if(BLA_F95) set(BLAS_mkl_SEARCH_SYMBOL "sgemm_f95") - set(_LIBRARIES BLAS95_LIBRARIES) + set(_BLAS_LIBRARIES BLAS95_LIBRARIES) if(WIN32) # Find the main file (32-bit or 64-bit) set(BLAS_SEARCH_LIBS_WIN_MAIN "") @@ -501,7 +503,7 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") endif() else() set(BLAS_mkl_SEARCH_SYMBOL sgemm) - set(_LIBRARIES BLAS_LIBRARIES) + set(_BLAS_LIBRARIES BLAS_LIBRARIES) if(WIN32) # Find the main file (32-bit or 64-bit) set(BLAS_SEARCH_LIBS_WIN_MAIN "") @@ -613,15 +615,15 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") "lib/${BLAS_mkl_ARCH_NAME}" ) - foreach(IT ${BLAS_SEARCH_LIBS}) - string(REPLACE " " ";" SEARCH_LIBS ${IT}) - if(NOT ${_LIBRARIES}) + foreach(_search ${BLAS_SEARCH_LIBS}) + string(REPLACE " " ";" _search ${_search}) + if(NOT ${_BLAS_LIBRARIES}) check_blas_libraries( - ${_LIBRARIES} + ${_BLAS_LIBRARIES} BLAS ${BLAS_mkl_SEARCH_SYMBOL} "" - "${SEARCH_LIBS}" + "${_search}" "${CMAKE_THREAD_LIBS_INIT};${BLAS_mkl_LM};${BLAS_mkl_LDL}" "${BLAS_mkl_MKLROOT}" "${BLAS_mkl_LIB_PATH_SUFFIXES}" @@ -629,6 +631,7 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All") endif() endforeach() + unset(_search) unset(BLAS_mkl_ILP_MODE) unset(BLAS_mkl_INTFACE) unset(BLAS_mkl_THREADING) @@ -734,14 +737,14 @@ if(BLA_VENDOR MATCHES "Arm" OR BLA_VENDOR STREQUAL "All") # Check for 64bit Integer support if(BLA_VENDOR MATCHES "_ilp64") - set(BLAS_armpl_LIB "armpl_ilp64") + set(_blas_armpl_lib "armpl_ilp64") else() - set(BLAS_armpl_LIB "armpl_lp64") + set(_blas_armpl_lib "armpl_lp64") endif() # Check for OpenMP support, VIA BLA_VENDOR of Arm_mp or Arm_ipl64_mp if(BLA_VENDOR MATCHES "_mp") - set(BLAS_armpl_LIB "${BLAS_armpl_LIB}_mp") + set(_blas_armpl_lib "${_blas_armpl_lib}_mp") endif() if(NOT BLAS_LIBRARIES) @@ -750,13 +753,13 @@ if(BLA_VENDOR MATCHES "Arm" OR BLA_VENDOR STREQUAL "All") BLAS sgemm "" - "${BLAS_armpl_LIB}" + "${_blas_armpl_lib}" "" "" "" ) endif() - + set(_blas_armpl_lib) endif() # FLAME's blis library? (https://github.com/flame/blis) @@ -1087,11 +1090,11 @@ endif() # Elbrus Math Library? if(BLA_VENDOR MATCHES "EML" OR BLA_VENDOR STREQUAL "All") - set(BLAS_EML_LIB "eml") + set(_blas_eml_lib "eml") # Check for OpenMP support, VIA BLA_VENDOR of eml_mt if(BLA_VENDOR MATCHES "_mt") - set(BLAS_EML_LIB "${BLAS_EML_LIB}_mt") + set(_blas_eml_lib "${BLAS_EML_LIB}_mt") endif() if(NOT BLAS_LIBRARIES) @@ -1100,13 +1103,13 @@ if(BLA_VENDOR MATCHES "EML" OR BLA_VENDOR STREQUAL "All") BLAS sgemm "" - "${BLAS_EML_LIB}" + "${_blas_eml_lib}" "" "" "" ) endif() - + set(_blas_eml_lib) endif() # Fujitsu SSL2 Library? @@ -1163,3 +1166,5 @@ if(NOT BLA_F95) endif() _add_blas_target() +unset(_blas_fphsa_req_var) +unset(_BLAS_LIBRARIES) diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index 3146e06..aa5423a 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -298,7 +298,7 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) if(BLA_F95) set(LAPACK_mkl_SEARCH_SYMBOL "cheev_f95") - set(_LIBRARIES LAPACK95_LIBRARIES) + set(_LAPACK_LIBRARIES LAPACK95_LIBRARIES) set(_BLAS_LIBRARIES ${BLAS95_LIBRARIES}) # old @@ -311,7 +311,7 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) "mkl_lapack95_${LAPACK_mkl_ILP_MODE}") else() set(LAPACK_mkl_SEARCH_SYMBOL "cheev") - set(_LIBRARIES LAPACK_LIBRARIES) + set(_LAPACK_LIBRARIES LAPACK_LIBRARIES) set(_BLAS_LIBRARIES ${BLAS_LIBRARIES}) # old and new >= 10.3 @@ -350,10 +350,10 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) "lib/${LAPACK_mkl_ARCH_NAME}" ) - # First try empty lapack libs - if(NOT ${_LIBRARIES}) + # First try empty lapack libs (implicitly linked or automatic from BLAS) + if(NOT ${_LAPACK_LIBRARIES}) check_lapack_libraries( - ${_LIBRARIES} + ${_LAPACK_LIBRARIES} LAPACK ${LAPACK_mkl_SEARCH_SYMBOL} "" @@ -363,18 +363,23 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) "${LAPACK_mkl_LIB_PATH_SUFFIXES}" "${_BLAS_LIBRARIES}" ) + if(LAPACK_WORKS AND NOT _BLAS_LIBRARIES) + # Give a more helpful "found" message + set(LAPACK_WORKS "implicitly linked") + set(_lapack_fphsa_req_var LAPACK_WORKS) + endif() endif() # Then try the search libs - foreach(IT ${LAPACK_SEARCH_LIBS}) - string(REPLACE " " ";" SEARCH_LIBS ${IT}) - if(NOT ${_LIBRARIES}) + foreach(_search ${LAPACK_SEARCH_LIBS}) + string(REPLACE " " ";" _search ${_search}) + if(NOT ${_LAPACK_LIBRARIES}) check_lapack_libraries( - ${_LIBRARIES} + ${_LAPACK_LIBRARIES} LAPACK ${LAPACK_mkl_SEARCH_SYMBOL} "" - "${SEARCH_LIBS}" + "${_search}" "${CMAKE_THREAD_LIBS_INIT};${LAPACK_mkl_LM};${LAPACK_mkl_LDL}" "${LAPACK_mkl_MKLROOT}" "${LAPACK_mkl_LIB_PATH_SUFFIXES}" @@ -383,6 +388,7 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) endif() endforeach() + unset(_search) unset(LAPACK_mkl_ILP_MODE) unset(LAPACK_mkl_SEARCH_SYMBOL) unset(LAPACK_mkl_LM) @@ -646,3 +652,5 @@ if(LAPACK_LIBRARIES STREQUAL "LAPACK_LIBRARIES-PLACEHOLDER-FOR-EMPTY-LIBRARIES") endif() _add_lapack_target() +unset(_lapack_fphsa_req_var) +unset(_LAPACK_LIBRARIES) |