5
5
6
6
7
7
set (TARGET_NAME ur_adapter_level_zero )
8
+ set (UR_LEVEL_ZERO_LOADER_LIBRARY "" CACHE FILEPATH "Path of the Level Zero Loader library" )
9
+ set (UR_LEVEL_ZERO_INCLUDE_DIR "" CACHE FILEPATH "Directory containing the Level Zero Headers" )
10
+ set (UR_LEVEL_ZERO_LOADER_REPO "" CACHE STRING "Github repo to get the Level Zero loader sources from" )
11
+ set (UR_LEVEL_ZERO_LOADER_TAG "" CACHE STRING " GIT tag of the Level Loader taken from github repo" )
8
12
9
- # Copy L0 loader/headers locally to the build to avoid leaking their path.
13
+ # Copy Level Zero loader/headers locally to the build to avoid leaking their path.
10
14
set (LEVEL_ZERO_COPY_DIR ${CMAKE_CURRENT_BINARY_DIR} /level_zero_loader )
11
- if (DEFINED L0_LIBRARY )
12
- get_filename_component (LEVEL_ZERO_LIB_NAME "${L0_LIBRARY } " NAME )
15
+ if (NOT UR_LEVEL_ZERO_LOADER_LIBRARY STREQUAL "" )
16
+ get_filename_component (LEVEL_ZERO_LIB_NAME "${UR_LEVEL_ZERO_LOADER_LIBRARY } " NAME )
13
17
set (LEVEL_ZERO_LIBRARY ${LEVEL_ZERO_COPY_DIR} /${LEVEL_ZERO_LIB_NAME} )
14
- message (STATUS "Copying Level Zero loader and headers to local build tree" )
15
- file (COPY ${L0_LIBRARY } DESTINATION ${LEVEL_ZERO_COPY_DIR} FOLLOW_SYMLINK_CHAIN )
18
+ message (STATUS "Level Zero Adapter: Copying Level Zero loader to local build tree" )
19
+ file (COPY ${UR_LEVEL_ZERO_LOADER_LIBRARY } DESTINATION ${LEVEL_ZERO_COPY_DIR} FOLLOW_SYMLINK_CHAIN )
16
20
endif ()
17
- if (DEFINED L0_INCLUDE_DIR )
21
+ if (NOT UR_LEVEL_ZERO_INCLUDE_DIR STREQUAL "" )
18
22
set (LEVEL_ZERO_INCLUDE_DIR ${LEVEL_ZERO_COPY_DIR} /level_zero )
19
- file (COPY ${L0_INCLUDE_DIR} /level_zero DESTINATION ${LEVEL_ZERO_COPY_DIR} )
23
+ message (STATUS "Level Zero Adapter: Copying Level Zero headers to local build tree" )
24
+ file (COPY ${UR_LEVEL_ZERO_INCLUDE_DIR} /level_zero DESTINATION ${LEVEL_ZERO_COPY_DIR} )
20
25
endif ()
21
26
22
27
if (NOT DEFINED LEVEL_ZERO_LIBRARY OR NOT DEFINED LEVEL_ZERO_INCLUDE_DIR )
23
- message (STATUS "Download Level Zero loader and headers from github.com" )
28
+ message (STATUS "Level Zero Adapter: Download Level Zero loader and headers from github.com" )
24
29
25
30
# Workaround warnings/errors for Level Zero build
26
31
set (CMAKE_CXX_FLAGS_BAK "${CMAKE_CXX_FLAGS} " )
@@ -33,19 +38,23 @@ if (NOT DEFINED LEVEL_ZERO_LIBRARY OR NOT DEFINED LEVEL_ZERO_INCLUDE_DIR)
33
38
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-warning-option" )
34
39
endif ()
35
40
36
- set (LEVEL_ZERO_LOADER_REPO "https://github.com/oneapi-src/level-zero.git" )
37
- set (LEVEL_ZERO_LOADER_TAG v1.16.1 )
41
+ if (UR_LEVEL_ZERO_LOADER_REPO STREQUAL "" )
42
+ set (UR_LEVEL_ZERO_LOADER_REPO "https://github.com/oneapi-src/level-zero.git" )
43
+ endif ()
44
+ if (UR_LEVEL_ZERO_LOADER_TAG STREQUAL "" )
45
+ set (UR_LEVEL_ZERO_LOADER_TAG v1.16.1 )
46
+ endif ()
38
47
39
48
# Disable due to a bug https://github.com/oneapi-src/level-zero/issues/104
40
49
set (CMAKE_INCLUDE_CURRENT_DIR OFF )
41
50
# Prevent L0 loader from exporting extra symbols
42
51
set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS OFF )
43
52
44
- message (STATUS "Will fetch Level Zero Loader from ${LEVEL_ZERO_LOADER_REPO } " )
53
+ message (STATUS "Level Zero Adapter: Will fetch Level Zero Loader from ${UR_LEVEL_ZERO_LOADER_REPO } " )
45
54
include (FetchContent )
46
55
FetchContent_Declare (level-zero-loader
47
- GIT_REPOSITORY ${LEVEL_ZERO_LOADER_REPO }
48
- GIT_TAG ${LEVEL_ZERO_LOADER_TAG }
56
+ GIT_REPOSITORY ${UR_LEVEL_ZERO_LOADER_REPO }
57
+ GIT_TAG ${UR_LEVEL_ZERO_LOADER_TAG }
49
58
)
50
59
if (MSVC )
51
60
set (USE_Z7 ON )
0 commit comments