123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- 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()
|