diff options
author | Brad King <brad.king@kitware.com> | 2021-07-29 12:39:42 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2021-07-29 12:40:00 (GMT) |
commit | 272bbda602138ca3a1420e77ce9e342315489b74 (patch) | |
tree | 4498dddb39f801dc53e07e1d76f7b258fbd7cb99 | |
parent | 824bab99e90337c62a837756eb55fb29c131da8f (diff) | |
parent | 03913b12cb9ae48d81ec773a1c6b93ba5fd2ad5d (diff) | |
download | CMake-272bbda602138ca3a1420e77ce9e342315489b74.zip CMake-272bbda602138ca3a1420e77ce9e342315489b74.tar.gz CMake-272bbda602138ca3a1420e77ce9e342315489b74.tar.bz2 |
Merge topic 'FindBLAS-LAPACK-IBM-ESSL'
03913b12cb FindLAPACK: IBM ESSL 6.1 also has LAPACK routines
ccb85f8943 FindBLAS: Add possibility to find OMP parallelized version of ESSL
73e452eb98 FindBLAS: IBM ESSL 6.1 does not required BLAS lib
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6399
-rw-r--r-- | Modules/FindBLAS.cmake | 16 | ||||
-rw-r--r-- | Modules/FindLAPACK.cmake | 24 |
2 files changed, 36 insertions, 4 deletions
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake index 799d179..2ea6d98 100644 --- a/Modules/FindBLAS.cmake +++ b/Modules/FindBLAS.cmake @@ -109,7 +109,8 @@ BLAS/LAPACK Vendors ``Goto`` GotoBLAS -``IBMESSL`` +``IBMESSL``, ``IBMESSL_SMP`` + IBM Engineering and Scientific Subroutine Library ``Intel`` @@ -893,20 +894,27 @@ if(BLA_VENDOR STREQUAL "SGIMATH" OR BLA_VENDOR STREQUAL "All") endif() endif() -# BLAS in IBM ESSL library? (requires generic BLAS lib, too) -if(BLA_VENDOR STREQUAL "IBMESSL" OR BLA_VENDOR STREQUAL "All") +# BLAS in IBM ESSL library? +if(BLA_VENDOR MATCHES "IBMESSL" OR BLA_VENDOR STREQUAL "All") + set(_blas_essl_lib "essl") + + if(BLA_VENDOR MATCHES "_SMP") + set(_blas_essl_lib "${_blas_essl_lib}smp") + endif() if(NOT BLAS_LIBRARIES) check_blas_libraries( BLAS_LIBRARIES BLAS sgemm "" - "essl;blas" + "${_blas_essl_lib}" "" "" "" ) endif() + + unset(_blas_essl_lib) endif() # BLAS in acml library? diff --git a/Modules/FindLAPACK.cmake b/Modules/FindLAPACK.cmake index aa5423a..d70453b 100644 --- a/Modules/FindLAPACK.cmake +++ b/Modules/FindLAPACK.cmake @@ -586,6 +586,30 @@ if(NOT LAPACK_NOT_FOUND_MESSAGE) unset(_ssl2_suffix) endif() + # LAPACK in IBM ESSL library? + if(NOT LAPACK_LIBRARIES + AND (BLA_VENDOR MATCHES "IBMESSL" OR BLA_VENDOR STREQUAL "All")) + set(_lapack_essl_lib "essl") + + # Check for OpenMP support, VIA BLA_VENDOR of esslsmp + if(BLA_VENDOR MATCHES "_SMP") + set(_lapack_essl_lib "${_lapack_essl_lib}smp") + endif() + + check_lapack_libraries( + LAPACK_LIBRARIES + LAPACK + cheev + "" + "${_lapack_essl_lib}" + "" + "" + "" + "${BLAS_LIBRARIES}" + ) + unset(_lapack_essl_lib) + endif() + # NVHPC Library? if(NOT LAPACK_LIBRARIES AND (BLA_VENDOR MATCHES "NVHPC" OR BLA_VENDOR STREQUAL "All")) |