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)
