Updated libdrm path configuration and libva version requirements for ROCm and TheRock (#195)

Este commit está contenido en:
Aryan Salmanpour
2025-10-21 08:57:22 -07:00
cometido por GitHub
padre 7cc791ea43
commit 261c0fc171
Se han modificado 4 ficheros con 46 adiciones y 17 borrados
+5
Ver fichero
@@ -3,6 +3,11 @@
Documentation for rocJPEG is available at
[https://rocm.docs.amd.com/projects/rocJPEG/en/latest/](https://rocm.docs.amd.com/projects/rocJPEG/en/latest/)
## (Unreleased) rocJPEG 1.3.0
## Changed
* Updated libdrm path configuration and libva version requirements for ROCm and TheRock platforms
## rocjpeg 1.2.0 for ROCm 7.1.0
## Changed
+34 -5
Ver fichero
@@ -42,7 +42,7 @@ endif()
# rocjpeg Version
# NOTE: package version and rocjpeg_version.h is generated with this version
set(VERSION "1.2.0")
set(VERSION "1.3.0")
# Set Project Version and Language
project(rocjpeg VERSION ${VERSION} LANGUAGES CXX)
@@ -137,6 +137,39 @@ find_package(HIP QUIET)
find_package(Libva QUIET)
find_package(Libdrm_amdgpu QUIET)
# Check if lib/rocm_sysdeps/lib exists in the libdrm_amdgpu library path which indicates ROCm installation via TheRock
set(USING_THE_ROCK OFF)
if(LIBDRM_AMDGPU_LIBRARY)
string(FIND "${LIBDRM_AMDGPU_LIBRARY}" "lib/rocm_sysdeps/lib" ROCM_SYSDEPS_FOUND)
if(NOT ROCM_SYSDEPS_FOUND EQUAL -1)
set(USING_THE_ROCK ON)
endif()
endif()
# Find Ubuntu 22.04
file(READ "/etc/os-release" OS_RELEASE)
string(REGEX MATCH "22.04" UBUNTU_22_FOUND ${OS_RELEASE})
# Check Libva version compatibility based on installation method and OS:
# - Ubuntu 22.04 with standard ROCm installation: requires libva >= 1.16
# - Other OS versions with standard ROCm: libva >= 1.8 is sufficient
# - TheRock installation (any OS): libva >= 1.8 is sufficient
if(UBUNTU_22_FOUND AND NOT USING_THE_ROCK)
if((${Libva_VERSION_MAJOR} GREATER_EQUAL 1) AND (${Libva_VERSION_MINOR} GREATER_EQUAL 16))
message("-- ${White}\tLibva Version Supported${ColourReset}")
else()
set(Libva_FOUND FALSE)
message("-- ${Yellow}\tLibva Version Not Supported${ColourReset}")
endif()
else()
if((${Libva_VERSION_MAJOR} GREATER_EQUAL 1) AND (${Libva_VERSION_MINOR} GREATER_EQUAL 8))
message("-- ${White}\tLibva Version Supported${ColourReset}")
else()
set(Libva_FOUND FALSE)
message("-- ${Yellow}\tLibva Version Not Supported${ColourReset}")
endif()
endif()
if(ROCJPEG_ENABLE_ROCPROFILER_REGISTER)
find_package(rocprofiler-register QUIET
HINTS $ENV{rocprofiler_register_ROOT} $ENV{ROCPROFILER_REGISTER_ROOT} ${CMAKE_INSTALL_PREFIX}
@@ -340,10 +373,6 @@ if(HIP_FOUND AND Libva_FOUND AND Libdrm_amdgpu_FOUND)
set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION}.$ENV{ROCM_LIBPATCH_VERSION}")
endif()
# Find Ubuntu 22.04 - Add libstdc++-12-dev package deps for Dev Package
file(READ "/etc/os-release" OS_RELEASE)
string(REGEX MATCH "22.04" UBUNTU_22_FOUND ${OS_RELEASE})
# Set the dependent packages
set(rocJPEG_DEBIAN_PACKAGE_LIST "hip-runtime-amd, libva-drm2 (>= 2.16.0) | libva-amdgpu-drm2, mesa-amdgpu-va-drivers")
set(rocJPEG_RPM_PACKAGE_LIST "hip-runtime-amd, (libva >= 2.16.0 or libva-drm2 >= 2.16.0 or libva-amdgpu), mesa-amdgpu-va-drivers")
+2 -2
Ver fichero
@@ -21,8 +21,8 @@
#
################################################################################
find_library(LIBDRM_AMDGPU_LIBRARY NAMES drm_amdgpu HINTS /opt/amdgpu/lib/x86_64-linux-gnu /opt/amdgpu/lib64 /usr/lib/x86_64-linux-gnu /usr/lib64)
find_path(LIBDRM_AMDGPU_INCLUDE_DIR NAMES libdrm/amdgpu.h libdrm/amdgpu_drm.h PATHS /opt/amdgpu/include /usr/include /usr/ /usr/local/include NO_DEFAULT_PATH)
find_library(LIBDRM_AMDGPU_LIBRARY NAMES drm_amdgpu HINTS ${ROCM_PATH}/lib/rocm_sysdeps/lib /opt/amdgpu/lib/x86_64-linux-gnu /opt/amdgpu/lib64 /usr/lib/x86_64-linux-gnu /usr/lib64)
find_path(LIBDRM_AMDGPU_INCLUDE_DIR NAMES libdrm/amdgpu.h libdrm/amdgpu_drm.h PATHS ${ROCM_PATH}/lib/rocm_sysdeps/include /opt/amdgpu/include /usr/include /usr/ /usr/local/include NO_DEFAULT_PATH)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Libdrm_amdgpu DEFAULT_MSG LIBDRM_AMDGPU_INCLUDE_DIR LIBDRM_AMDGPU_LIBRARY)
+5 -10
Ver fichero
@@ -33,19 +33,14 @@ if(Libva_FOUND)
# Find VA Version
file(READ "${LIBVA_INCLUDE_DIR}/va/va_version.h" VA_VERSION_FILE)
string(REGEX MATCH "VA_MAJOR_VERSION ([0-9]*)" _ ${VA_VERSION_FILE})
set(va_ver_major ${CMAKE_MATCH_1})
set(Libva_VERSION_MAJOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VA_MINOR_VERSION ([0-9]*)" _ ${VA_VERSION_FILE})
set(va_ver_minor ${CMAKE_MATCH_1})
set(Libva_VERSION_MINOR ${CMAKE_MATCH_1})
string(REGEX MATCH "VA_MICRO_VERSION ([0-9]*)" _ ${VA_VERSION_FILE})
set(va_ver_micro ${CMAKE_MATCH_1})
message("-- ${White}Found Libva Version: ${va_ver_major}.${va_ver_minor}.${va_ver_micro}${ColourReset}")
set(Libva_VERSION_MICRO ${CMAKE_MATCH_1})
set(Libva_VERSION "${Libva_VERSION_MAJOR}.${Libva_VERSION_MINOR}.${Libva_VERSION_MICRO}")
message("-- ${White}Found Libva Version: ${Libva_VERSION}${ColourReset}")
if((${va_ver_major} GREATER_EQUAL 1) AND (${va_ver_minor} GREATER_EQUAL 16))
message("-- ${White}\tLibva Version Supported${ColourReset}")
else()
set(Libva_FOUND FALSE)
message("-- ${Yellow}\tLibva Version Not Supported${ColourReset}")
endif()
endif()
if(Libva_FOUND)