| cmake_minimum_required(VERSION 4.4) | |
| set(CMAKE_EXPERIMENTAL_SYCL "c0d1fb10-2ece-420e-9d29-7d7f2b300f25") | |
| project(ProperLinkFlags SYCL CXX) | |
| include(../../SyclOnly/utils/Test.cmake) | |
| # Remove gate when IntelLLVM -fsycl-link bug is fixed | |
| if(CMAKE_SYCL_COMPILER_ID STREQUAL "IntelLLVM") | |
| sycl_not_supported("IntelLLVM -fsycl-link cannot produce a single device-link output") | |
| return() | |
| endif() | |
| string(APPEND CMAKE_SYCL_FLAGS " -DSYCL_FLAGS") | |
| set(CMAKE_CXX_FLAGS "-DCXX_FLAGS") | |
| set(CMAKE_CXX_STANDARD 17) | |
| set(CMAKE_SYCL_CXX_STANDARD 17) | |
| add_executable(ProperLinkFlags file1.sycl main.cxx) | |
| # APPEND intentionally uses CXX flags; REPLACE is the CUDA-like isolated mode. | |
| set_property(TARGET ProperLinkFlags PROPERTY SYCL_EXTENSION_MODE REPLACE) | |
| if(CMAKE_SYCL_COMPILE_OPTIONS_SEPARABLE_COMPILATION_ON) | |
| set_property(TARGET ProperLinkFlags PROPERTY SYCL_SEPARABLE_COMPILATION ON) | |
| endif() | |
| sycl_add_runtime_test(ProperLinkFlags ProperLinkFlags) |