19
19
# SOFTWARE.
20
20
21
21
# Note: cmake 3.7 is needed to use OpenCL::OpenCL.
22
+ # Older versions may work by explicitly specifying OpenCL_INCLUDE_DIRS and OpenCL_LIBRARIES.
22
23
cmake_minimum_required (VERSION 3.7 FATAL_ERROR )
23
24
set_property (GLOBAL PROPERTY USE_FOLDERS ON )
24
25
@@ -63,8 +64,18 @@ if (CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
63
64
set_target_properties (extension_loader_copy PROPERTIES FOLDER "OpenCLExtensionLoader/Generation" )
64
65
endif ()
65
66
66
- if (NOT TARGET OpenCL::OpenCL )
67
- find_package (OpenCL )
67
+ if (OpenCL_INCLUDE_DIRS AND OpenCL_LIBRARIES )
68
+ message (STATUS "Using inherited OpenCL_INCLUDE_DIRS and OpenCL_LIBRARIES" )
69
+ set (OPENCL_EXTENSION_LOADER_INCLUDE_DIRS ${OpenCL_INCLUDE_DIRS} )
70
+ set (OPENCL_EXTENSION_LOADER_LIBRARIES ${OpenCL_LIBRARIES} )
71
+ else ()
72
+ if (NOT TARGET OpenCL::OpenCL )
73
+ find_package (OpenCL )
74
+ endif ()
75
+ if (NOT TARGET OpenCL::OpenCL )
76
+ message (STATUS "OpenCL was not found!" )
77
+ endif ()
78
+ set (OPENCL_EXTENSION_LOADER_LIBRARIES OpenCL::OpenCL )
68
79
endif ()
69
80
70
81
set ( OpenCLExtensionLoader_SOURCE_FILES
@@ -81,6 +92,7 @@ endif()
81
92
add_library (OpenCL::OpenCLExt ALIAS OpenCLExt )
82
93
set_target_properties (OpenCLExt PROPERTIES FOLDER "OpenCLExtensionLoader" )
83
94
set_target_properties (OpenCLExt PROPERTIES VERSION "0.9" SOVERSION "0" )
95
+ target_include_directories (OpenCLExt SYSTEM PUBLIC ${OPENCL_EXTENSION_LOADER_INCLUDE_DIRS} )
84
96
target_compile_definitions (OpenCLExt PRIVATE CL_TARGET_OPENCL_VERSION=300 )
85
97
if (OPENCL_EXTENSION_LOADER_SINGLE_PLATFORM_ONLY )
86
98
target_compile_definitions (OpenCLExt PRIVATE CLEXT_SINGLE_PLATFORM_ONLY )
@@ -103,7 +115,7 @@ endif()
103
115
if (OPENCL_EXTENSION_LOADER_INCLUDE_VA_API )
104
116
target_compile_definitions (OpenCLExt PRIVATE CLEXT_INCLUDE_VA_API )
105
117
endif ()
106
- target_link_libraries (OpenCLExt PRIVATE OpenCL::OpenCL )
118
+ target_link_libraries (OpenCLExt PRIVATE ${OPENCL_EXTENSION_LOADER_LIBRARIES} )
107
119
108
120
if (MSVC )
109
121
#/EHs enable C++ EH (no SEH exceptions)
0 commit comments