[cmake] Fix dependencies.

* Use CMAKE_DL_LIBS instead of hard-coded `dl`.
* Use Threads::Threads instead of `pthread`.
* Drop `rt` dep.
* Find libdrm via pkgconfig (consistent to how other ROCm projects do it as documented here: https://github.com/ROCm/TheRock/blob/main/docs/development/dependencies.md#libdrm)
此提交包含在:
Stella Laurenzo
2025-09-24 14:57:26 -07:00
提交者 Arif, Maisam
父節點 3c8fd1bf54
當前提交 4e6731a817
共有 3 個檔案被更改,包括 18 行新增2 行删除
+6
查看文件
@@ -116,6 +116,12 @@ set(CPACK_PACKAGE_CONTACT "AMD-SMILib Support <amd-smi.support@amd.com>" CACHE S
generic_package()
## Dependencies
find_package(Threads REQUIRED)
pkg_check_modules(DRM REQUIRED IMPORTED_TARGET libdrm)
pkg_check_modules(DRM_AMDGPU REQUIRED IMPORTED_TARGET libdrm_amdgpu)
## Compiler flags
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -fno-rtti")
if(${CMAKE_HOST_SYSTEM_PROCESSOR} STREQUAL "x86_64")
+6 -1
查看文件
@@ -45,7 +45,12 @@ configure_file("src/${ROCM_SMI_TARGET}Config.in"
"${CMAKE_CURRENT_SOURCE_DIR}/include/rocm_smi/${ROCM_SMI_TARGET}Config.h")
add_library(${ROCM_SMI_TARGET} ${CMN_SRC_LIST} ${CMN_INC_LIST})
target_link_libraries(${ROCM_SMI_TARGET} PRIVATE pthread rt dl)
target_link_libraries(${ROCM_SMI_TARGET} PRIVATE
PkgConfig::DRM
PkgConfig::DRM_AMDGPU
Threads::Threads
${CMAKE_DL_LIBS}
)
target_include_directories(${ROCM_SMI_TARGET} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/common/shared_mutex)
+6 -1
查看文件
@@ -78,7 +78,12 @@ set(${AMD_SMI}_VERSION_BUILD "0")
message("SOVERSION: ${SO_VERSION_STRING}")
add_library(${AMD_SMI} ${SRC_LIST} ${INC_LIST})
target_link_libraries(${AMD_SMI} pthread rt dl ${DRM_LIBRARIES} ${AMDGPU_DRM_LIBRARIES})
target_link_libraries(${AMD_SMI} PRIVATE
PkgConfig::DRM
PkgConfig::DRM_AMDGPU
Threads::Threads
${CMAKE_DL_LIBS}
)
target_include_directories(${AMD_SMI} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR}/rocm_smi/include
${PROJECT_SOURCE_DIR}/common/shared_mutex ${ACA_INC_DIR})