1 # ----------------------------------------------------------------------------
2 # Detect other 3rd-party performance and math libraries
3 # ----------------------------------------------------------------------------
7 include("${OpenCV_SOURCE_DIR}/cmake/OpenCVDetectTBB.cmake")
11 ocv_clear_vars(IPP_FOUND)
13 include("${OpenCV_SOURCE_DIR}/cmake/OpenCVFindIPP.cmake")
15 add_definitions(-DHAVE_IPP)
16 ocv_include_directories(${IPP_INCLUDE_DIRS})
17 link_directories(${IPP_LIBRARY_DIRS})
18 set(OPENCV_LINKER_LIBS ${OPENCV_LINKER_LIBS} ${IPP_LIBRARIES})
24 include("${OpenCV_SOURCE_DIR}/cmake/OpenCVDetectCUDA.cmake")
29 find_path(EIGEN_INCLUDE_PATH "Eigen/Core"
30 PATHS /usr/local /opt /usr ENV ProgramFiles ENV ProgramW6432
31 PATH_SUFFIXES include/eigen3 include/eigen2 Eigen/include/eigen3 Eigen/include/eigen2
32 DOC "The path to Eigen3/Eigen2 headers"
33 CMAKE_FIND_ROOT_PATH_BOTH)
35 if(EIGEN_INCLUDE_PATH)
36 ocv_include_directories(${EIGEN_INCLUDE_PATH})
37 ocv_parse_header("${EIGEN_INCLUDE_PATH}/Eigen/src/Core/util/Macros.h" EIGEN_VERSION_LINES EIGEN_WORLD_VERSION EIGEN_MAJOR_VERSION EIGEN_MINOR_VERSION)
43 if(WITH_CSTRIPES AND NOT HAVE_TBB)
44 include("${OpenCV_SOURCE_DIR}/cmake/OpenCVDetectCStripes.cmake")
50 if(WITH_OPENMP AND NOT HAVE_TBB AND NOT HAVE_CSTRIPES)
53 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
54 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
56 set(HAVE_OPENMP "${OPENMP_FOUND}")
60 if(APPLE AND NOT HAVE_TBB AND NOT HAVE_CSTRIPES AND NOT HAVE_OPENMP)
67 if(MSVC AND NOT HAVE_TBB AND NOT HAVE_CSTRIPES AND NOT HAVE_OPENMP)
68 set(_fname "${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeTmp/concurrencytest.cpp")
69 file(WRITE "${_fname}" "#if _MSC_VER < 1600\n#error\n#endif\nint main() { return 0; }\n")
70 try_compile(HAVE_CONCURRENCY "${CMAKE_BINARY_DIR}" "${_fname}")
71 file(REMOVE "${_fname}")
73 set(HAVE_CONCURRENCY 0)