mirror of https://github.com/opencv/opencv.git
Open Source Computer Vision Library
https://opencv.org/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.8 KiB
93 lines
2.8 KiB
set(OPENCL_FOUND ON CACHE BOOL "OpenCL library is found") |
|
if(APPLE) |
|
set(OPENCL_LIBRARY "-framework OpenCL" CACHE STRING "OpenCL library") |
|
set(OPENCL_INCLUDE_DIR "" CACHE PATH "OpenCL include directory") |
|
else() |
|
set(OPENCL_LIBRARY "" CACHE STRING "OpenCL library") |
|
set(OPENCL_INCLUDE_DIR "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/1.2" CACHE PATH "OpenCL include directory") |
|
ocv_install_3rdparty_licenses(opencl-headers "${OpenCV_SOURCE_DIR}/3rdparty/include/opencl/LICENSE.txt") |
|
endif() |
|
mark_as_advanced(OPENCL_INCLUDE_DIR OPENCL_LIBRARY) |
|
|
|
if(OPENCL_FOUND) |
|
|
|
if(OPENCL_LIBRARY) |
|
set(HAVE_OPENCL_STATIC ON) |
|
set(OPENCL_LIBRARIES "${OPENCL_LIBRARY}") |
|
else() |
|
set(HAVE_OPENCL_STATIC OFF) |
|
endif() |
|
|
|
if(NOT HAVE_OPENCL_STATIC) |
|
try_compile(__VALID_OPENCL |
|
"${OpenCV_BINARY_DIR}" |
|
"${OpenCV_SOURCE_DIR}/cmake/checks/opencl.cpp" |
|
CMAKE_FLAGS "-DINCLUDE_DIRECTORIES:STRING=${OPENCL_INCLUDE_DIR}" |
|
OUTPUT_VARIABLE TRY_OUT |
|
) |
|
if(NOT TRY_OUT MATCHES "OpenCL is valid") |
|
message(WARNING "Can't use OpenCL") |
|
return() |
|
endif() |
|
endif() |
|
|
|
set(HAVE_OPENCL 1) |
|
|
|
if(WITH_OPENCL_SVM) |
|
set(HAVE_OPENCL_SVM 1) |
|
endif() |
|
|
|
set(OPENCL_INCLUDE_DIRS ${OPENCL_INCLUDE_DIR}) |
|
|
|
if(WITH_OPENCLAMDFFT) |
|
find_path(CLAMDFFT_ROOT_DIR |
|
NAMES include/clAmdFft.h |
|
PATHS ENV CLAMDFFT_PATH ENV ProgramFiles |
|
PATH_SUFFIXES clAmdFft AMD/clAmdFft |
|
DOC "AMD FFT root directory" |
|
NO_DEFAULT_PATH) |
|
|
|
find_path(CLAMDFFT_INCLUDE_DIR |
|
NAMES clAmdFft.h |
|
HINTS ${CLAMDFFT_ROOT_DIR} |
|
PATH_SUFFIXES include |
|
DOC "clAmdFft include directory") |
|
|
|
if(CLAMDFFT_INCLUDE_DIR) |
|
set(HAVE_CLAMDFFT 1) |
|
list(APPEND OPENCL_INCLUDE_DIRS "${CLAMDFFT_INCLUDE_DIR}") |
|
endif() |
|
endif() |
|
|
|
if(WITH_OPENCLAMDBLAS) |
|
find_path(CLAMDBLAS_ROOT_DIR |
|
NAMES include/clAmdBlas.h |
|
PATHS ENV CLAMDBLAS_PATH ENV ProgramFiles |
|
PATH_SUFFIXES clAmdBlas AMD/clAmdBlas |
|
DOC "AMD FFT root directory" |
|
NO_DEFAULT_PATH) |
|
|
|
find_path(CLAMDBLAS_INCLUDE_DIR |
|
NAMES clAmdBlas.h |
|
HINTS ${CLAMDBLAS_ROOT_DIR} |
|
PATH_SUFFIXES include |
|
DOC "clAmdFft include directory") |
|
|
|
if(CLAMDBLAS_INCLUDE_DIR) |
|
set(HAVE_CLAMDBLAS 1) |
|
list(APPEND OPENCL_INCLUDE_DIRS "${CLAMDBLAS_INCLUDE_DIR}") |
|
endif() |
|
endif() |
|
|
|
# check WITH_OPENCL_D3D11_NV is located in OpenCVDetectDirectX.cmake file |
|
|
|
if(WITH_VA_INTEL AND HAVE_VA) |
|
if(HAVE_OPENCL AND EXISTS "${OPENCL_INCLUDE_DIR}/CL/cl_va_api_media_sharing_intel.h") |
|
set(HAVE_VA_INTEL ON) |
|
elseif(HAVE_OPENCL AND EXISTS "${OPENCL_INCLUDE_DIR}/CL/va_ext.h") |
|
set(HAVE_VA_INTEL ON) |
|
set(HAVE_VA_INTEL_OLD_HEADER ON) |
|
endif() |
|
endif() |
|
|
|
endif()
|
|
|