Fixes for OpenCL via brew package (#17291)
This commit is contained in:
parent
9776f4d11f
commit
7ac5bab343
20
thirdparty/CMakeLists.txt
vendored
20
thirdparty/CMakeLists.txt
vendored
@ -47,6 +47,15 @@ if(ENABLE_INTEL_GPU)
|
||||
else()
|
||||
set_target_properties(OpenCL::Headers PROPERTIES IMPORTED_GLOBAL ON)
|
||||
endif()
|
||||
|
||||
# 'brew install opencl-clhpp-gheaders'
|
||||
find_package(OpenCLHeadersCpp QUIET)
|
||||
if(NOT OpenCLHeadersCpp_FOUND)
|
||||
message(WARNING "OpenCLHeadersCpp not found, but OpenCLICDLoader is installed. Please, install OpenCL C++ headers")
|
||||
else()
|
||||
set_target_properties(OpenCL::HeadersCpp PROPERTIES IMPORTED_GLOBAL ON)
|
||||
get_target_property(opencl_cpp_include_dirs OpenCL::HeadersCpp INTERFACE_INCLUDE_DIRECTORIES)
|
||||
endif()
|
||||
else()
|
||||
# try to find system OpenCL:
|
||||
# - 'sudo -E apt-get install opencl-headers ocl-icd-opencl-dev'
|
||||
@ -62,20 +71,21 @@ if(ENABLE_INTEL_GPU)
|
||||
# try to find CL/opencl.hpp
|
||||
find_file(OpenCL_HPP
|
||||
NAMES CL/opencl.hpp OpenCL/opencl.hpp
|
||||
HINTS ${OpenCL_INCLUDE_DIRS}
|
||||
HINTS ${OpenCL_INCLUDE_DIRS} ${opencl_cpp_include_dirs}
|
||||
DOC "Path to CL/opencl.hpp")
|
||||
|
||||
# add definition to select proper header and suppress warnings
|
||||
if(OpenCL_HPP)
|
||||
set_target_properties(OpenCL::OpenCL PROPERTIES
|
||||
INTERFACE_COMPILE_DEFINITIONS OV_GPU_USE_OPENCL_HPP)
|
||||
set(opencl_interface_definitions OV_GPU_USE_OPENCL_HPP)
|
||||
|
||||
# check whether CL/opencl.hpp contains C++ wrapper for property CL_DEVICE_UUID_KHR
|
||||
file(STRINGS "${OpenCL_HPP}" CL_DEVICE_UUID_KHR_CPP REGEX ".*CL_DEVICE_UUID_KHR.*")
|
||||
if(CL_DEVICE_UUID_KHR_CPP)
|
||||
set_target_properties(OpenCL::OpenCL PROPERTIES
|
||||
INTERFACE_COMPILE_DEFINITIONS OV_GPU_OPENCL_HPP_HAS_UUID)
|
||||
list(APPEND opencl_interface_definitions OV_GPU_OPENCL_HPP_HAS_UUID)
|
||||
endif()
|
||||
|
||||
set_target_properties(OpenCL::OpenCL PROPERTIES
|
||||
INTERFACE_COMPILE_DEFINITIONS "${opencl_interface_definitions}")
|
||||
endif()
|
||||
|
||||
# set variables for onednn_gpu
|
||||
|
Loading…
Reference in New Issue
Block a user