summaryrefslogtreecommitdiff
path: root/Modules/FindBLAS.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-04-14 13:33:42 -0400
committerBrad King <brad.king@kitware.com>2021-04-14 14:55:51 -0400
commit116edb5c04790e5d9127b5cfb51943eebd5d33d8 (patch)
treea2e1cf2060711c8438df24890fe570f49a9138e1 /Modules/FindBLAS.cmake
parent44bcec240bed6980fdc6f38e7238371d7d3c1f1b (diff)
downloadcmake-116edb5c04790e5d9127b5cfb51943eebd5d33d8.tar.gz
Find{BLAS,LAPACK}: Revert bad refactoring of internal CHECK_*_LIBRARIES
Refactoring in commit 4c74c86f40 (FindBLAS/LAPACK: Add support for the Fujitsu SSL2 library, 2021-01-27) was done in order to support calling `find_library` on the dependencies as well as the candidate libraries. However, it broke a few things: * Intel MKL's BLAS/LAPACK are no longer found. We specify their dependencies using `-l...` flags, so we should not try to use `find_library` for them. * The dependencies are repeated because we accumulate them in the `find_library` search loop and then append them at the end too. Revert the incorrect part of the refactoring. Retain the flags part needed for the Fujitsu vendor. Fixes: #22056
Diffstat (limited to 'Modules/FindBLAS.cmake')
-rw-r--r--Modules/FindBLAS.cmake16
1 files changed, 9 insertions, 7 deletions
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
index 510f47d3af..fafbc0f180 100644
--- a/Modules/FindBLAS.cmake
+++ b/Modules/FindBLAS.cmake
@@ -236,23 +236,25 @@ macro(CHECK_BLAS_LIBRARIES LIBRARIES _prefix _name _flags _list _threadlibs _add
endif()
list(APPEND _extaddlibdir "${CMAKE_C_IMPLICIT_LINK_DIRECTORIES}")
- foreach(_library ${_list} ${_threadlibs})
+ foreach(_library ${_list})
if(_library MATCHES "^-Wl,--(start|end)-group$")
# Respect linker flags like --start/end-group (required by MKL)
set(${LIBRARIES} ${${LIBRARIES}} "${_library}")
else()
- string(REGEX REPLACE "[^A-Za-z0-9]" "_" _lib_var "${_library}")
- set(_combined_name ${_combined_name}_${_lib_var})
+ set(_combined_name ${_combined_name}_${_library})
+ if(NOT "${_threadlibs}" STREQUAL "")
+ set(_combined_name ${_combined_name}_threadlibs)
+ endif()
if(_libraries_work)
- find_library(${_prefix}_${_lib_var}_LIBRARY
+ find_library(${_prefix}_${_library}_LIBRARY
NAMES ${_library}
NAMES_PER_DIR
PATHS ${_extaddlibdir}
PATH_SUFFIXES ${_subdirs}
)
- mark_as_advanced(${_prefix}_${_lib_var}_LIBRARY)
- set(${LIBRARIES} ${${LIBRARIES}} ${${_prefix}_${_lib_var}_LIBRARY})
- set(_libraries_work ${${_prefix}_${_lib_var}_LIBRARY})
+ mark_as_advanced(${_prefix}_${_library}_LIBRARY)
+ set(${LIBRARIES} ${${LIBRARIES}} ${${_prefix}_${_library}_LIBRARY})
+ set(_libraries_work ${${_prefix}_${_library}_LIBRARY})
endif()
endif()
endforeach()