65 lines
1.5 KiB
CMake
65 lines
1.5 KiB
CMake
# SPDX-FileCopyrightText: 2021-2022 Intel Corporation
|
|
#
|
|
# 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.
|
|
|
|
# If `LEVEL_ZERO_ROOT_DIR` was defined in the environment, use it.
|
|
if(DEFINED LEVEL_ZERO_ROOT_DIR)
|
|
# Pass.
|
|
elseif(DEFINED ENV{LEVEL_ZERO_ROOT_DIR})
|
|
set(LEVEL_ZERO_ROOT_DIR $ENV{LEVEL_ZERO_ROOT_DIR})
|
|
else()
|
|
set(LEVEL_ZERO_ROOT_DIR "")
|
|
endif()
|
|
|
|
set(_level_zero_SEARCH_DIRS
|
|
${LEVEL_ZERO_ROOT_DIR}
|
|
/usr/lib
|
|
/usr/local/lib
|
|
)
|
|
|
|
find_library(LEVEL_ZERO_LIBRARY
|
|
NAMES
|
|
ze_loader
|
|
HINTS
|
|
${_level_zero_SEARCH_DIRS}
|
|
PATH_SUFFIXES
|
|
lib64 lib
|
|
)
|
|
|
|
find_path(LEVEL_ZERO_INCLUDE_DIR
|
|
NAMES
|
|
level_zero/ze_api.h
|
|
HINTS
|
|
${_level_zero_SEARCH_DIRS}
|
|
PATH_SUFFIXES
|
|
include
|
|
)
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
|
|
find_package_handle_standard_args(LevelZero DEFAULT_MSG LEVEL_ZERO_LIBRARY LEVEL_ZERO_INCLUDE_DIR)
|
|
|
|
if(LevelZero_FOUND)
|
|
set(LEVEL_ZERO_FOUND TRUE)
|
|
else()
|
|
unset(LEVEL_ZERO_LIBRARY)
|
|
unset(LEVEL_ZERO_INCLUDE_DIR)
|
|
set(LEVEL_ZERO_FOUND FALSE)
|
|
endif()
|
|
|
|
mark_as_advanced(
|
|
LEVEL_ZERO_LIBRARY
|
|
LEVEL_ZERO_INCLUDE_DIR
|
|
)
|
|
|
|
unset(_level_zero_SEARCH_DIRS)
|