Publishing R3
[platform/upstream/dldt.git] / inference-engine / thirdparty / mkldnn.cmake
1 # Copyright (C) 2018 Intel Corporation
2 # SPDX-License-Identifier: Apache-2.0
3 #
4
5 set (CMAKE_CXX_STANDARD 11)
6 set (CMAKE_CXX_STANDARD_REQUIRED ON)
7
8 set(TARGET mkldnn)
9 set(MKLDNN_ROOT ${CMAKE_CURRENT_SOURCE_DIR}/mkl-dnn)
10
11 file(GLOB_RECURSE HDR
12         ${MKLDNN_ROOT}/include/*.h
13         ${MKLDNN_ROOT}/include/*.hpp
14 )
15 file(GLOB_RECURSE SRC
16         ${MKLDNN_ROOT}/src/*.c
17         ${MKLDNN_ROOT}/src/*.cpp
18         ${MKLDNN_ROOT}/src/*.h
19         ${MKLDNN_ROOT}/src/*.hpp
20 )
21 include_directories(
22         ${MKLDNN_ROOT}/include
23         ${MKLDNN_ROOT}/src
24         ${MKLDNN_ROOT}/src/common
25         ${MKLDNN_ROOT}/src/cpu/xbyak
26 )
27
28 if(WIN32)
29     add_definitions(-D_WIN)
30     add_definitions(-DNOMINMAX)
31     # Correct 'jnl' macro/jit issue
32     if(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
33         set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Qlong-double")
34     endif()
35 endif()
36
37 enable_omp()
38
39 add_library(${TARGET} STATIC ${HDR} ${SRC})
40
41 if(GEMM STREQUAL "OPENBLAS")
42     ## enable cblas_gemm from OpenBLAS package
43     add_definitions(-DUSE_CBLAS -D_SX)
44     include_directories(${BLAS_INCLUDE_DIRS})
45     target_link_libraries(${TARGET} ${BLAS_LIBRARIES})
46 else()
47     ## enable cblas_gemm from mlkml package
48     set(MKLROOT ${MKL})
49     include(MKL.cmake)
50 endif()
51
52
53 target_link_libraries(${TARGET} ${${TARGET}_LINKER_LIBS})