summaryrefslogtreecommitdiffstats
path: root/Modules/FindBLAS.cmake
diff options
context:
space:
mode:
authorMario Emmenlauer <mario@emmenlauer.de>2020-01-31 10:29:58 (GMT)
committerMario Emmenlauer <mario@emmenlauer.de>2020-01-31 10:36:07 (GMT)
commit807a129f3c4c59d594aea5842d249ba35815d3fb (patch)
treede06dfb41f5935640973ed00b315453cfd55d6d6 /Modules/FindBLAS.cmake
parentfe86dc43fec40e96ee6670a3a62a25da6c2667a5 (diff)
downloadCMake-807a129f3c4c59d594aea5842d249ba35815d3fb.zip
CMake-807a129f3c4c59d594aea5842d249ba35815d3fb.tar.gz
CMake-807a129f3c4c59d594aea5842d249ba35815d3fb.tar.bz2
Find{BLAS,LAPACK}: Include parent of points directory in search
This is required if MKLROOT points to the subdirectory .../mkl/ instead of the root of an Intel MKL library installation. Only in this case the MKL will be searched starting from the parent directory, to detect relevant dependencies in parallel subdirectories, like 'compiler' and 'tbb'.
Diffstat (limited to 'Modules/FindBLAS.cmake')
-rw-r--r--Modules/FindBLAS.cmake7
1 files changed, 7 insertions, 0 deletions
diff --git a/Modules/FindBLAS.cmake b/Modules/FindBLAS.cmake
index 9830395..9b6d09c 100644
--- a/Modules/FindBLAS.cmake
+++ b/Modules/FindBLAS.cmake
@@ -449,6 +449,12 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
endif()
if(DEFINED ENV{MKLROOT})
set(BLAS_mkl_MKLROOT "$ENV{MKLROOT}")
+ # If MKLROOT points to the subdirectory 'mkl', use the parent directory instead
+ # so we can better detect other relevant libraries in 'compiler' or 'tbb':
+ get_filename_component(BLAS_mkl_MKLROOT_LAST_DIR "${BLAS_mkl_MKLROOT}" NAME)
+ if(BLAS_mkl_MKLROOT_LAST_DIR STREQUAL "mkl")
+ get_filename_component(BLAS_mkl_MKLROOT "${BLAS_mkl_MKLROOT}" DIRECTORY)
+ endif()
endif()
set(BLAS_mkl_LIB_PATH_SUFFIXES
"compiler/lib" "compiler/lib/${BLAS_mkl_ARCH_NAME}_${BLAS_mkl_OS_NAME}"
@@ -479,6 +485,7 @@ if(BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
unset(BLAS_mkl_LM)
unset(BLAS_mkl_LDL)
unset(BLAS_mkl_MKLROOT)
+ unset(BLAS_mkl_MKLROOT_LAST_DIR)
unset(BLAS_mkl_ARCH_NAME)
unset(BLAS_mkl_OS_NAME)
unset(BLAS_mkl_LIB_PATH_SUFFIXES)