Skip to content

Commit 62007a9

Browse files
TheRock compatibility - Devicelib Support (#215)
1 parent 8a59339 commit 62007a9

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

CMakeLists.txt

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,20 @@ elseif(ROCM_PATH)
3131
else()
3232
set(ROCM_PATH /opt/rocm CACHE PATH "Default ROCm installation path")
3333
endif()
34+
35+
# Check if lib/rocm_sysdeps/lib exists in the ROCm path which indicates ROCm installation via TheRock
36+
set(USING_THE_ROCK OFF)
37+
if(EXISTS "${ROCM_PATH}/lib/rocm_sysdeps/lib")
38+
set(USING_THE_ROCK ON)
39+
endif()
40+
41+
if(USING_THE_ROCK)
42+
if(NOT DEFINED ENV{HIP_DEVICE_LIB_PATH})
43+
set(ENV{HIP_DEVICE_LIB_PATH} ${ROCM_PATH}/lib/llvm/amdgcn/bitcode)
44+
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "HIP_DEVICE_LIB_PATH=${ROCM_PATH}/lib/llvm/amdgcn/bitcode")
45+
endif()
46+
endif()
47+
3448
# Set AMD Clang as default compiler
3549
set(CMAKE_CXX_STANDARD 17)
3650
set(CMAKE_CXX_STANDARD_REQUIRED On)
@@ -138,15 +152,6 @@ find_package(HIP QUIET)
138152
find_package(Libva QUIET)
139153
find_package(Libdrm_amdgpu QUIET)
140154

141-
# Check if lib/rocm_sysdeps/lib exists in the libdrm_amdgpu library path which indicates ROCm installation via TheRock
142-
set(USING_THE_ROCK OFF)
143-
if(LIBDRM_AMDGPU_LIBRARY)
144-
string(FIND "${LIBDRM_AMDGPU_LIBRARY}" "lib/rocm_sysdeps/lib" ROCM_SYSDEPS_FOUND)
145-
if(NOT ROCM_SYSDEPS_FOUND EQUAL -1)
146-
set(USING_THE_ROCK ON)
147-
endif()
148-
endif()
149-
150155
# Find Ubuntu 22.04
151156
file(READ "/etc/os-release" OS_RELEASE)
152157
string(REGEX MATCH "22.04" UBUNTU_22_FOUND ${OS_RELEASE})
@@ -196,9 +201,9 @@ if(HIP_FOUND AND Libva_FOUND AND Libdrm_amdgpu_FOUND)
196201
endif()
197202

198203
# local include files
199-
include_directories(api src)
204+
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/api ${CMAKE_CURRENT_SOURCE_DIR}/src)
200205
# source files
201-
file(GLOB_RECURSE SOURCES "./src/*.cpp")
206+
file(GLOB_RECURSE SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp")
202207
# rocjpeg.so
203208
add_library(${PROJECT_NAME} SHARED ${SOURCES})
204209

0 commit comments

Comments
 (0)