mirror of https://github.com/davisking/dlib.git
Updated cmake file so it can find the new version of the Intel MKL on linux.
This commit is contained in:
parent
ceb71d96e6
commit
1ef4260e32
|
@ -29,12 +29,16 @@ if (UNIX)
|
||||||
if (SIZE_OF_VOID_PTR EQUAL 8)
|
if (SIZE_OF_VOID_PTR EQUAL 8)
|
||||||
set( mkl_search_path
|
set( mkl_search_path
|
||||||
/opt/intel/mkl/*/lib/em64t
|
/opt/intel/mkl/*/lib/em64t
|
||||||
|
/opt/intel/mkl/lib/intel64
|
||||||
|
/opt/intel/lib/intel64
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(mkl_intel mkl_intel_lp64 ${mkl_search_path})
|
find_library(mkl_intel mkl_intel_lp64 ${mkl_search_path})
|
||||||
else()
|
else()
|
||||||
set( mkl_search_path
|
set( mkl_search_path
|
||||||
/opt/intel/mkl/*/lib/32
|
/opt/intel/mkl/*/lib/32
|
||||||
|
/opt/intel/mkl/lib/ia32
|
||||||
|
/opt/intel/lib/ia32
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(mkl_intel mkl_intel ${mkl_search_path})
|
find_library(mkl_intel mkl_intel ${mkl_search_path})
|
||||||
|
@ -45,21 +49,22 @@ if (UNIX)
|
||||||
# Search for the needed libraries from the MKL
|
# Search for the needed libraries from the MKL
|
||||||
find_library(mkl_core mkl_core ${mkl_search_path})
|
find_library(mkl_core mkl_core ${mkl_search_path})
|
||||||
find_library(mkl_thread mkl_intel_thread ${mkl_search_path})
|
find_library(mkl_thread mkl_intel_thread ${mkl_search_path})
|
||||||
find_library(mkl_io iomp5 ${mkl_search_path})
|
find_library(mkl_iomp iomp5 ${mkl_search_path})
|
||||||
|
|
||||||
#MKL also needs pthreads so search for that as well
|
#MKL also needs pthreads so search for that as well
|
||||||
find_library(mkl_pthread pthread ${mkl_search_path})
|
find_library(mkl_pthread pthread ${mkl_search_path})
|
||||||
|
|
||||||
mark_as_advanced( mkl_intel mkl_core mkl_thread mkl_io mkl_pthread)
|
mark_as_advanced( mkl_intel mkl_core mkl_thread mkl_iomp mkl_pthread)
|
||||||
|
|
||||||
|
|
||||||
# if we found the MKL
|
# if we found the MKL
|
||||||
#if (mkl_mkl AND mkl_core AND mkl_guide AND mkl_pthread)
|
#if (mkl_mkl AND mkl_core AND mkl_guide AND mkl_pthread)
|
||||||
if (mkl_intel AND mkl_core AND mkl_thread AND mkl_io AND mkl_pthread)
|
if (mkl_intel AND mkl_core AND mkl_thread AND mkl_iomp AND mkl_pthread)
|
||||||
set(blas_libraries ${mkl_intel} ${mkl_core} ${mkl_thread} ${mkl_io} ${mkl_pthread})
|
set(blas_libraries ${mkl_intel} ${mkl_core} ${mkl_thread} ${mkl_iomp} ${mkl_pthread})
|
||||||
set(lapack_libraries ${mkl_intel} ${mkl_core} ${mkl_thread} ${mkl_io} ${mkl_pthread})
|
set(lapack_libraries ${mkl_intel} ${mkl_core} ${mkl_thread} ${mkl_iomp} ${mkl_pthread})
|
||||||
set(blas_found 1)
|
set(blas_found 1)
|
||||||
set(lapack_found 1)
|
set(lapack_found 1)
|
||||||
|
set(found_intel_mkl 1)
|
||||||
message(STATUS "Found Intel MKL BLAS/LAPACK library")
|
message(STATUS "Found Intel MKL BLAS/LAPACK library")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -117,8 +122,10 @@ if (UNIX)
|
||||||
|
|
||||||
# Make sure we really found a CBLAS library. That is, it needs to expose
|
# Make sure we really found a CBLAS library. That is, it needs to expose
|
||||||
# the proper cblas link symbols. So here we test if one of them is present
|
# the proper cblas link symbols. So here we test if one of them is present
|
||||||
# and assume everything is good if it is.
|
# and assume everything is good if it is. Note that we don't do this check if
|
||||||
if (blas_found)
|
# we found the Intel MKL since for some reason CHECK_FUNCTION_EXISTS doesn't work
|
||||||
|
# with it. But it's fine since the MKL should always have cblas.
|
||||||
|
if (blas_found AND NOT found_intel_mkl)
|
||||||
INCLUDE (CheckFunctionExists)
|
INCLUDE (CheckFunctionExists)
|
||||||
set(CMAKE_REQUIRED_LIBRARIES ${blas_libraries})
|
set(CMAKE_REQUIRED_LIBRARIES ${blas_libraries})
|
||||||
CHECK_FUNCTION_EXISTS(cblas_ddot HAVE_CBLAS)
|
CHECK_FUNCTION_EXISTS(cblas_ddot HAVE_CBLAS)
|
||||||
|
|
Loading…
Reference in New Issue