2012-02-03 19:26:49 +08:00
|
|
|
set(the_description "The Core Functionality")
|
2017-03-23 21:09:47 +08:00
|
|
|
|
|
|
|
ocv_add_dispatched_file(mathfuncs_core SSE2 AVX AVX2)
|
2017-07-02 23:49:38 +08:00
|
|
|
ocv_add_dispatched_file(stat SSE4_2 AVX2)
|
2017-03-23 21:09:47 +08:00
|
|
|
|
2018-07-30 23:53:05 +08:00
|
|
|
# dispatching for accuracy tests
|
|
|
|
ocv_add_dispatched_file_force_all(test_intrin128 TEST SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX FP16 AVX2)
|
|
|
|
ocv_add_dispatched_file_force_all(test_intrin256 TEST AVX2)
|
|
|
|
|
2015-06-05 21:24:38 +08:00
|
|
|
ocv_add_module(core
|
2015-02-19 21:17:19 +08:00
|
|
|
OPTIONAL opencv_cudev
|
2017-09-25 21:52:07 +08:00
|
|
|
WRAP java python js)
|
2012-02-03 19:54:16 +08:00
|
|
|
|
2015-02-21 00:47:45 +08:00
|
|
|
set(extra_libs "")
|
|
|
|
|
|
|
|
if(WINRT AND CMAKE_SYSTEM_NAME MATCHES WindowsStore AND CMAKE_SYSTEM_VERSION MATCHES "8.0")
|
|
|
|
list(APPEND extra_libs ole32.lib)
|
2013-07-19 17:43:05 +08:00
|
|
|
endif()
|
|
|
|
|
2018-04-06 19:21:15 +08:00
|
|
|
if(HAVE_TBB)
|
|
|
|
list(APPEND extra_libs tbb)
|
|
|
|
endif()
|
|
|
|
|
2015-12-09 10:45:10 +08:00
|
|
|
if(DEFINED WINRT AND NOT DEFINED ENABLE_WINRT_MODE_NATIVE)
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /ZW")
|
|
|
|
endif()
|
|
|
|
|
2012-02-03 19:26:49 +08:00
|
|
|
if(HAVE_CUDA)
|
2014-02-24 18:35:34 +08:00
|
|
|
ocv_warnings_disable(CMAKE_CXX_FLAGS -Wundef -Wenum-compare -Wunused-function -Wshadow)
|
2012-02-03 19:26:49 +08:00
|
|
|
endif()
|
|
|
|
|
2017-05-25 23:59:01 +08:00
|
|
|
if(CV_TRACE AND HAVE_ITT AND BUILD_ITT)
|
|
|
|
add_definitions(-DOPENCV_WITH_ITT=1)
|
|
|
|
endif()
|
|
|
|
|
2013-04-03 20:04:04 +08:00
|
|
|
file(GLOB lib_cuda_hdrs "include/opencv2/${name}/cuda/*.hpp" "include/opencv2/${name}/cuda/*.h")
|
|
|
|
file(GLOB lib_cuda_hdrs_detail "include/opencv2/${name}/cuda/detail/*.hpp" "include/opencv2/${name}/cuda/detail/*.h")
|
2018-01-27 21:09:28 +08:00
|
|
|
file(GLOB_RECURSE module_opencl_hdrs "include/opencv2/${name}/opencl/*")
|
2013-04-05 00:54:35 +08:00
|
|
|
|
2016-08-26 18:33:47 +08:00
|
|
|
source_group("Include\\Cuda Headers" FILES ${lib_cuda_hdrs})
|
|
|
|
source_group("Include\\Cuda Headers\\Detail" FILES ${lib_cuda_hdrs_detail})
|
|
|
|
|
|
|
|
source_group("Src" FILES "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version_string.inc")
|
2013-04-05 00:54:35 +08:00
|
|
|
|
2014-08-01 22:11:20 +08:00
|
|
|
ocv_glob_module_sources(SOURCES "${OPENCV_MODULE_opencv_core_BINARY_DIR}/version_string.inc"
|
2018-01-27 21:09:28 +08:00
|
|
|
HEADERS ${module_opencl_hdrs} ${lib_cuda_hdrs} ${lib_cuda_hdrs_detail})
|
2013-03-31 18:54:23 +08:00
|
|
|
|
2017-06-13 00:10:13 +08:00
|
|
|
ocv_module_include_directories(${the_module} ${ZLIB_INCLUDE_DIRS} ${OPENCL_INCLUDE_DIRS})
|
|
|
|
if(ANDROID AND HAVE_CPUFEATURES)
|
2017-08-21 11:31:21 +08:00
|
|
|
ocv_append_source_file_compile_definitions(${CMAKE_CURRENT_SOURCE_DIR}/src/system.cpp "HAVE_CPUFEATURES=1")
|
2017-06-13 00:10:13 +08:00
|
|
|
ocv_module_include_directories(${CPUFEATURES_INCLUDE_DIRS})
|
|
|
|
endif()
|
2017-05-25 23:59:01 +08:00
|
|
|
if(ITT_INCLUDE_DIRS)
|
|
|
|
ocv_module_include_directories(${ITT_INCLUDE_DIRS})
|
|
|
|
endif()
|
2017-07-27 23:01:34 +08:00
|
|
|
if(HAVE_POSIX_MEMALIGN)
|
2017-08-21 11:31:21 +08:00
|
|
|
ocv_append_source_file_compile_definitions(${CMAKE_CURRENT_SOURCE_DIR}/src/alloc.cpp "HAVE_POSIX_MEMALIGN=1")
|
2017-07-27 23:01:34 +08:00
|
|
|
endif()
|
|
|
|
if(HAVE_MALLOC_H)
|
2017-08-21 11:31:21 +08:00
|
|
|
ocv_append_source_file_compile_definitions(${CMAKE_CURRENT_SOURCE_DIR}/src/alloc.cpp "HAVE_MALLOC_H=1")
|
2017-07-27 23:01:34 +08:00
|
|
|
endif()
|
|
|
|
if(HAVE_MEMALIGN)
|
2017-08-21 11:31:21 +08:00
|
|
|
ocv_append_source_file_compile_definitions(${CMAKE_CURRENT_SOURCE_DIR}/src/alloc.cpp "HAVE_MEMALIGN=1")
|
2017-07-27 23:01:34 +08:00
|
|
|
endif()
|
|
|
|
|
2015-02-21 00:47:45 +08:00
|
|
|
ocv_create_module(${extra_libs})
|
2012-02-03 19:26:49 +08:00
|
|
|
|
2017-08-17 05:23:06 +08:00
|
|
|
ocv_target_link_libraries(${the_module} LINK_PRIVATE
|
2017-05-25 23:59:01 +08:00
|
|
|
"${ZLIB_LIBRARIES}" "${OPENCL_LIBRARIES}" "${VA_LIBRARIES}"
|
2018-03-28 21:34:37 +08:00
|
|
|
"${LAPACK_LIBRARIES}" "${CPUFEATURES_LIBRARIES}" "${HALIDE_LIBRARIES}"
|
2017-05-25 23:59:01 +08:00
|
|
|
"${ITT_LIBRARIES}"
|
2017-08-17 05:23:06 +08:00
|
|
|
"${OPENCV_HAL_LINKER_LIBS}"
|
2017-05-25 23:59:01 +08:00
|
|
|
)
|
2017-02-15 22:12:28 +08:00
|
|
|
|
2017-09-01 00:13:07 +08:00
|
|
|
if(HAVE_CUDA)
|
|
|
|
ocv_target_compile_definitions(${the_module} PUBLIC OPENCV_TRAITS_ENABLE_DEPRECATED)
|
|
|
|
endif()
|
|
|
|
|
2012-02-03 19:26:49 +08:00
|
|
|
ocv_add_accuracy_tests()
|
|
|
|
ocv_add_perf_tests()
|
2018-02-27 02:10:21 +08:00
|
|
|
|
|
|
|
ocv_install_3rdparty_licenses(SoftFloat "${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/SoftFloat/COPYING.txt")
|