| # Distributed under the OSI-approved BSD 3-Clause License. See accompanying |
| # file LICENSE.rst or https://cmake.org/licensing for details. |
| |
| # Standalone device linking for the IntelLLVM and DPClang DPC++ drivers. |
| set(CMAKE_SYCL_COMPILER_HAS_DEVICE_LINK_PHASE TRUE) |
| set(CMAKE_SYCL_COMPILE_OPTIONS_SEPARABLE_COMPILATION_ON "-fgpu-rdc") |
| set(CMAKE_SYCL_COMPILE_OPTIONS_SEPARABLE_COMPILATION_OFF "-fno-gpu-rdc") |
| set(CMAKE_SYCL_DEVICE_LINK_OPTIONS "-fsycl;-fsycl-link") |
| if(NOT CMAKE_SYCL_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC") |
| set(CMAKE_SYCL_DEVICE_LINK_OPTIONS_WHOLE_ARCHIVE "-Wl,--whole-archive") |
| set(CMAKE_SYCL_DEVICE_LINK_OPTIONS_NO_WHOLE_ARCHIVE "-Wl,--no-whole-archive") |
| elseif(CMAKE_SYCL_COMPILER_ID STREQUAL "IntelLLVM") |
| set(CMAKE_SYCL_DEVICE_LINK_OPTIONS_WHOLE_ARCHIVE |
| "-Qoption,link,--whole-archive") |
| set(CMAKE_SYCL_DEVICE_LINK_OPTIONS_NO_WHOLE_ARCHIVE |
| "-Qoption,link,--no-whole-archive") |
| endif() |