55
66
77set (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" )
812
913# Copy Level Zero loader/headers locally to the build to avoid leaking their path.
1014set (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 )
1317 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)
1620endif ()
17- if (DEFINED EXTERNAL_LEVEL_ZERO_INCLUDE_DIR )
21+ if (NOT UR_LEVEL_ZERO_INCLUDE_DIR STREQUAL "" )
1822 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} )
2025endif ()
2126
2227if (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" )
2429
2530 # Workaround warnings/errors for Level Zero build
2631 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)
3338 set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-warning-option" )
3439 endif ()
3540
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" )
3843 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)
4146 endif ()
4247
4348 # Disable due to a bug https://github.com/oneapi-src/level-zero/issues/104
4449 set (CMAKE_INCLUDE_CURRENT_DIR OFF )
4550 # Prevent L0 loader from exporting extra symbols
4651 set (CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS OFF )
4752
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 } " )
4954 include (FetchContent)
5055 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 }
5358 )
5459 if (MSVC )
5560 set (USE_Z7 ON )
0 commit comments