vcpkg/ports/opencl/vcpkg-cmake-wrapper.cmake
Ilya Lavrenov bf1d50ff7a
[opencl] fixed linkage when libOpenCL is static (#31637)
* [opencl]: replaced hardcoded BUILD_SHARED_LIBS (user context) with VCPKG_LIBRARY_LINKAGE (library build context)

* Updated version registries
2023-05-30 18:43:30 -07:00

20 lines
735 B
CMake

_find_package(${ARGS})
if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static" AND (NOT CMAKE_SYSTEM_NAME MATCHES "Darwin"))
find_package(Threads REQUIRED)
set(OpenCL_Extra_Libs ${CMAKE_DL_LIBS} ${CMAKE_THREAD_LIBS_INIT})
if(CMAKE_SYSTEM_NAME MATCHES "Windows")
list(APPEND OpenCL_Extra_Libs cfgmgr32)
if($ENV{WindowsSDKVersion} MATCHES "^10")
list(APPEND OpenCL_Extra_Libs OneCoreUAP)
endif()
endif(CMAKE_SYSTEM_NAME MATCHES "Windows")
if(TARGET OpenCL::OpenCL)
set_property(TARGET OpenCL::OpenCL APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${OpenCL_Extra_Libs})
endif()
if(OpenCL_LIBRARIES)
list(APPEND OpenCL_LIBRARIES ${OpenCL_Extra_Libs})
endif()
unset(OpenCL_Extra_Libs)
endif()