diff --git a/projects/rocjpeg/CMakeLists.txt b/projects/rocjpeg/CMakeLists.txt index dfc2323793..89c46f13b6 100644 --- a/projects/rocjpeg/CMakeLists.txt +++ b/projects/rocjpeg/CMakeLists.txt @@ -31,6 +31,20 @@ elseif(ROCM_PATH) else() set(ROCM_PATH /opt/rocm CACHE PATH "Default ROCm installation path") endif() + +# Check if lib/rocm_sysdeps/lib exists in the ROCm path which indicates ROCm installation via TheRock +set(USING_THE_ROCK OFF) +if(EXISTS "${ROCM_PATH}/lib/rocm_sysdeps/lib") + set(USING_THE_ROCK ON) +endif() + +if(USING_THE_ROCK) + if(NOT DEFINED ENV{HIP_DEVICE_LIB_PATH}) + set(ENV{HIP_DEVICE_LIB_PATH} ${ROCM_PATH}/lib/llvm/amdgcn/bitcode) + set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "HIP_DEVICE_LIB_PATH=${ROCM_PATH}/lib/llvm/amdgcn/bitcode") + endif() +endif() + # Set AMD Clang as default compiler set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED On) @@ -138,15 +152,6 @@ 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}) @@ -196,9 +201,9 @@ if(HIP_FOUND AND Libva_FOUND AND Libdrm_amdgpu_FOUND) endif() # local include files - include_directories(api src) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}/api ${CMAKE_CURRENT_SOURCE_DIR}/src) # source files - file(GLOB_RECURSE SOURCES "./src/*.cpp") + file(GLOB_RECURSE SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp") # rocjpeg.so add_library(${PROJECT_NAME} SHARED ${SOURCES})