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
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 EXTERNAL_LEVEL_ZERO_LIBRARY )
12
- get_filename_component (LEVEL_ZERO_LIB_NAME "${EXTERNAL_LEVEL_ZERO_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 ${EXTERNAL_LEVEL_ZERO_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 EXTERNAL_LEVEL_ZERO_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 ${EXTERNAL_LEVEL_ZERO_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,23 +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
- if (NOT DEFINED LEVEL_ZERO_LOADER_REPO )
37
- set (LEVEL_ZERO_LOADER_REPO "https://github.com/oneapi-src/level-zero.git" )
41
+ if (UR_LEVEL_ZERO_LOADER_REPO STREQUAL "" )
42
+ set (UR_LEVEL_ZERO_LOADER_REPO "https://github.com/oneapi-src/level-zero.git" )
38
43
endif ()
39
- if (NOT DEFINED LEVEL_ZERO_LOADER_TAG )
40
- set (LEVEL_ZERO_LOADER_TAG v1.16.1 )
44
+ if (UR_LEVEL_ZERO_LOADER_TAG STREQUAL "" )
45
+ set (UR_LEVEL_ZERO_LOADER_TAG v1.16.1 )
41
46
endif ()
42
47
43
48
# Disable due to a bug https://github.com/oneapi-src/level-zero/issues/104
44
49
set (CMAKE_INCLUDE_CURRENT_DIR OFF )
45
50
# Prevent L0 loader from exporting extra symbols
46
51
set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS OFF )
47
52
48
- 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 } " )
49
54
include (FetchContent )
50
55
FetchContent_Declare (level-zero-loader
51
- GIT_REPOSITORY ${LEVEL_ZERO_LOADER_REPO }
52
- GIT_TAG ${LEVEL_ZERO_LOADER_TAG }
56
+ GIT_REPOSITORY ${UR_LEVEL_ZERO_LOADER_REPO }
57
+ GIT_TAG ${UR_LEVEL_ZERO_LOADER_TAG }
53
58
)
54
59
if (MSVC )
55
60
set (USE_Z7 ON )
0 commit comments