2023-06-14 22:49:59 +10:00
|
|
|
# SPDX-FileCopyrightText: 2021-2022 Intel Corporation
|
|
|
|
|
#
|
2022-06-29 12:58:04 +02:00
|
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
|
|
|
|
|
|
# - Find Level Zero library
|
|
|
|
|
# Find Level Zero headers and libraries needed by oneAPI implementation
|
|
|
|
|
# This module defines
|
|
|
|
|
# LEVEL_ZERO_LIBRARY, libraries to link against in order to use L0.
|
|
|
|
|
# LEVEL_ZERO_INCLUDE_DIR, directories where L0 headers can be found.
|
|
|
|
|
# LEVEL_ZERO_ROOT_DIR, The base directory to search for L0 files.
|
|
|
|
|
# This can also be an environment variable.
|
|
|
|
|
# LEVEL_ZERO_FOUND, If false, then don't try to use L0.
|
|
|
|
|
|
2023-08-17 11:53:56 +10:00
|
|
|
# If `LEVEL_ZERO_ROOT_DIR` was defined in the environment, use it.
|
2023-08-17 13:15:56 +10:00
|
|
|
if(DEFINED LEVEL_ZERO_ROOT_DIR)
|
2023-08-17 11:53:56 +10:00
|
|
|
# Pass.
|
2023-08-17 13:15:56 +10:00
|
|
|
elseif(DEFINED ENV{LEVEL_ZERO_ROOT_DIR})
|
|
|
|
|
set(LEVEL_ZERO_ROOT_DIR $ENV{LEVEL_ZERO_ROOT_DIR})
|
|
|
|
|
else()
|
|
|
|
|
set(LEVEL_ZERO_ROOT_DIR "")
|
|
|
|
|
endif()
|
2022-06-29 12:58:04 +02:00
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
set(_level_zero_search_dirs
|
2022-06-29 12:58:04 +02:00
|
|
|
${LEVEL_ZERO_ROOT_DIR}
|
|
|
|
|
/usr/lib
|
|
|
|
|
/usr/local/lib
|
|
|
|
|
)
|
|
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
find_library(_LEVEL_ZERO_LIBRARY
|
2022-06-29 12:58:04 +02:00
|
|
|
NAMES
|
|
|
|
|
ze_loader
|
|
|
|
|
HINTS
|
|
|
|
|
${_level_zero_search_dirs}
|
|
|
|
|
PATH_SUFFIXES
|
|
|
|
|
lib64 lib
|
|
|
|
|
)
|
|
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
find_path(_LEVEL_ZERO_INCLUDE_DIR
|
2022-06-29 12:58:04 +02:00
|
|
|
NAMES
|
|
|
|
|
level_zero/ze_api.h
|
|
|
|
|
HINTS
|
|
|
|
|
${_level_zero_search_dirs}
|
|
|
|
|
PATH_SUFFIXES
|
|
|
|
|
include
|
|
|
|
|
)
|
|
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
include(FindPackageHandleStandardArgs)
|
2022-06-29 12:58:04 +02:00
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
find_package_handle_standard_args(LevelZero DEFAULT_MSG _LEVEL_ZERO_LIBRARY _LEVEL_ZERO_INCLUDE_DIR)
|
2022-06-29 12:58:04 +02:00
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
if(LevelZero_FOUND)
|
|
|
|
|
set(LEVEL_ZERO_LIBRARY ${_LEVEL_ZERO_LIBRARY})
|
|
|
|
|
set(LEVEL_ZERO_INCLUDE_DIR ${_LEVEL_ZERO_INCLUDE_DIR})
|
|
|
|
|
set(LEVEL_ZERO_FOUND TRUE)
|
|
|
|
|
else()
|
|
|
|
|
set(LEVEL_ZERO_FOUND FALSE)
|
|
|
|
|
endif()
|
2022-06-29 12:58:04 +02:00
|
|
|
|
2023-08-17 13:15:56 +10:00
|
|
|
mark_as_advanced(
|
2022-06-29 12:58:04 +02:00
|
|
|
LEVEL_ZERO_LIBRARY
|
|
|
|
|
LEVEL_ZERO_INCLUDE_DIR
|
|
|
|
|
)
|