Fichiers
rocm-systems/cmake_modules/Findrvs.cmake
T

Les révisions dans .git-blame-ignore-revs sont ignorées. Vous pouvez quand même voir ces blâmes.

57 lignes
1.7 KiB
CMake
Brut Vue normale Historique

2023-06-07 19:46:35 -05:00
# This module provides a rvs::rvs package
# You can specify the ROCM directory by setting ROCM_DIR
set(NAME rvs)
if(NOT DEFINED ROCM_DIR)
set(ROCM_DIR "/opt/rocm")
endif()
2024-09-03 15:00:29 -05:00
list(APPEND CMAKE_PREFIX_PATH ${ROCM_DIR})
2023-06-07 19:46:35 -05:00
find_library(
${NAME}_LIBRARY
2024-09-03 15:00:29 -05:00
NAMES ${NAME} ${NAME}64 ${NAME}lib # RVS is special and is named librvslib.so
2025-05-06 22:22:50 +00:00
REQUIRED REGISTRY_VIEW BOTH
2023-06-07 19:46:35 -05:00
PATH_SUFFIXES lib)
if(NOT DEFINED (${NAME}_INCLUDE_DIR))
find_path(
${NAME}_INCLUDE_DIR
NAMES ${NAME}.h
HINTS "${ROCM_DIR}/include"
PATH_SUFFIXES ${NAME} ${NAME}/inc)
endif()
include(FindPackageHandleStandardArgs)
2025-05-06 22:22:50 +00:00
find_package_handle_standard_args(
${NAME}
2023-06-07 19:46:35 -05:00
FOUND_VAR ${NAME}_FOUND
2025-05-06 22:22:50 +00:00
REQUIRED_VARS ${NAME}_LIBRARY ${NAME}_INCLUDE_DIR)
2023-06-07 19:46:35 -05:00
if(${NAME}_FOUND AND NOT TARGET ${NAME}::${NAME})
add_library(${NAME}::${NAME} UNKNOWN IMPORTED)
2025-05-06 22:22:50 +00:00
set_target_properties(
${NAME}::${NAME}
PROPERTIES IMPORTED_LOCATION "${${NAME}_LIBRARY}"
INTERFACE_COMPILE_OPTIONS "${PC_${NAME}_CFLAGS_OTHER}"
INTERFACE_INCLUDE_DIRECTORIES "${${NAME}_INCLUDE_DIR}")
find_library(rocm-core NAMES rocm-core REQUIRED)
2024-09-03 15:00:29 -05:00
find_package(yaml-cpp REQUIRED)
find_package(rocblas REQUIRED)
find_package(hipblaslt REQUIRED)
find_package(hsakmt REQUIRED)
find_package(hip REQUIRED)
find_package(hsa-runtime64 REQUIRED)
find_package(amd_smi REQUIRED)
2025-05-06 22:22:50 +00:00
target_link_libraries(
${NAME}::${NAME}
INTERFACE ${rocm-core}
yaml-cpp
roc::rocblas
roc::hipblaslt
hsakmt::hsakmt
hip::amdhip64
hsa-runtime64::hsa-runtime64
amd_smi)
2023-06-07 19:46:35 -05:00
endif()