File tree Expand file tree Collapse file tree 3 files changed +30
-0
lines changed Expand file tree Collapse file tree 3 files changed +30
-0
lines changed Original file line number Diff line number Diff line change @@ -8,6 +8,9 @@ set(CMAKE_CXX_EXTENSIONS OFF)
8
8
option (SYCL_ENABLE_WERROR "Treat all warnings as errors in SYCL project" OFF )
9
9
option (SYCL_ADD_DEV_VERSION_POSTFIX "Adds -V postfix to version string" ON )
10
10
11
+ list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR} /cmake/modules" )
12
+ include (AddSYCLExecutable )
13
+
11
14
set (SYCL_MAJOR_VERSION 2 )
12
15
set (SYCL_MINOR_VERSION 1 )
13
16
set (SYCL_PATCH_VERSION 0 )
@@ -372,3 +375,5 @@ add_custom_target(deploy-sycl-toolchain
372
375
373
376
# SYCL Runtime documentation
374
377
add_subdirectory (doc )
378
+
379
+ add_subdirectory (examples )
Original file line number Diff line number Diff line change
1
+ macro (add_sycl_executable ARG_TARGET_NAME )
2
+ cmake_parse_arguments (ARG
3
+ ""
4
+ "OPTIONS"
5
+ "SOURCES"
6
+ ${ARGN} )
7
+
8
+ set (CXX_COMPILER clang++ )
9
+ if (MSVC )
10
+ set (CXX_COMPILER clang-cl.exe )
11
+ endif ()
12
+ set (DEVICE_COMPILER_EXECUTABLE ${LLVM_RUNTIME_OUTPUT_INTDIR} /${CXX_COMPILER} )
13
+
14
+ add_custom_target (${ARG_TARGET_NAME} _exec ALL
15
+ COMMAND ${DEVICE_COMPILER_EXECUTABLE} -fsycl ${ARG_OPTIONS} ${ARG_SOURCES}
16
+ -o ${CMAKE_CURRENT_BINARY_DIR} /${ARG_TARGET_NAME}
17
+ BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR} /${ARG_TARGET_NAME}
18
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} )
19
+ add_dependencies (${ARG_TARGET_NAME} _exec sycl clang )
20
+
21
+ add_executable (${ARG_TARGET_NAME} IMPORTED GLOBAL )
22
+ set_target_properties (${ARG_TARGET_NAME} PROPERTIES
23
+ IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR} )
24
+ endmacro ()
Original file line number Diff line number Diff line change
1
+ add_sycl_executable (simple-dpcpp-app SOURCES simple-dpcpp-app.cpp )
You can’t perform that action at this time.
0 commit comments