cmake_minimum_required(VERSION 3.14) project(sycltest) set(CMAKE_CXX_STANDARD 14) set(CMAKE_CXX_EXTENSIONS OFF) include(CheckCXXCompilerFlag) check_cxx_compiler_flag(-fsycl HAS_SYCL) if (NOT HAS_SYCL) message(FATAL_ERROR "Compiler has no sycl support") endif () set(CMAKE_EXPORT_COMPILE_COMMANDS ON) find_package(OpenMP REQUIRED) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS} -fsycl -march=native") get_filename_component(bin_dir "${CMAKE_CXX_COMPILER}" PATH) get_filename_component(install_dir "${bin_dir}" PATH) message(STATUS "Setting include/lib path according to compiler path: ${CMAKE_CXX_COMPILER}") message(STATUS "SYCL compiler install dir: ${install_dir}") set(CMAKE_BUILD_RPATH "${install_dir}/lib") add_executable(sycltest main.cpp) target_link_libraries(sycltest stdc++ sycl OpenCL) add_executable(subgroup subgroup.cpp) target_link_libraries(subgroup stdc++ sycl OpenCL)