13
13
14
14
################################################################################
15
15
16
- if (NOT LIBOMPTARGET_DEP_LIBELF_FOUND )
17
- libomptarget_say ("Not building AMDGPU plugin: LIBELF not found" )
16
+ # as of rocm-3.7, hsa is installed with cmake packages and kmt is found via hsa
17
+ find_package (hsa-runtime64 QUIET 1.2.0 HINTS ${CMAKE_INSTALL_PREFIX} PATHS /opt/rocm )
18
+ if (NOT ${hsa-runtime64_FOUND} )
19
+ libomptarget_say ("Not building HSA plugin: hsa-runtime64 not found" )
18
20
return ()
19
21
endif ()
20
22
21
- # rocr cmake uses DHSAKMT_INC_PATH, DHSAKMT_LIB_PATH to find roct
22
- # following that, look for DHSA_INC_PATH, DHSA_LIB_PATH, which allows
23
- # builds to use source and library files from various locations
24
-
25
- if (ROCM_DIR )
26
- set (HSA_INC_PATH ${ROCM_DIR} /hsa/include ${ROCM_DIR} /hsa/include/hsa )
27
- set (HSA_LIB_PATH ${ROCM_DIR} /hsa/lib )
28
- set (HSAKMT_INC_PATH "" )
29
- set (HSAKMT_LIB_PATH ${ROCM_DIR} /lib )
30
- elseif (NOT (HSA_INC_PATH AND HSA_LIB_PATH AND HSAKMT_INC_PATH AND HSAKMT_LIB_PATH ))
31
- libomptarget_say ("Not building AMDGPU plugin: ROCM library paths unspecified" )
23
+ if (NOT LIBOMPTARGET_DEP_LIBELF_FOUND )
24
+ libomptarget_say ("Not building AMDGPU plugin: LIBELF not found" )
32
25
return ()
33
26
endif ()
34
27
@@ -38,11 +31,6 @@ if(NOT CMAKE_SYSTEM_PROCESSOR MATCHES "(x86_64)|(ppc64le)|(aarch64)$" AND CMAKE_
38
31
endif ()
39
32
libomptarget_say ("Building amdgpu offloading plugin" )
40
33
41
- libomptarget_say ("HSA plugin: HSA_INC_PATH: ${HSA_INC_PATH} " )
42
- libomptarget_say ("HSA plugin: HSA_LIB_PATH: ${HSA_LIB_PATH} " )
43
- libomptarget_say ("HSA plugin: HSAKMT_INC_PATH: ${HSAKMT_INC_PATH} " )
44
- libomptarget_say ("HSA plugin: HSAKMT_LIB_PATH: ${HSAKMT_LIB_PATH} " )
45
-
46
34
################################################################################
47
35
# Define the suffix for the runtime messaging dumps.
48
36
add_definitions (-DTARGET_NAME=AMDGPU )
@@ -55,7 +43,6 @@ if(CMAKE_BUILD_TYPE MATCHES Debug)
55
43
endif ()
56
44
57
45
include_directories (
58
- ${HSA_INC_PATH}
59
46
${CMAKE_CURRENT_SOURCE_DIR} /impl
60
47
)
61
48
@@ -74,12 +61,12 @@ add_library(omptarget.rtl.amdgpu SHARED
74
61
# When we build for debug, OPENMP_LIBDIR_SUFFIX get set to -debug
75
62
install (TARGETS omptarget.rtl.amdgpu LIBRARY DESTINATION "lib${OPENMP_LIBDIR_SUFFIX} " )
76
63
77
- add_dependencies ( omptarget.rtl.amdgpu hsa-runtime64 hsakmt )
64
+ set_property ( TARGET omptarget.rtl.amdgpu PROPERTY INSTALL_RPATH "$ORIGIN" )
78
65
target_link_libraries (
79
66
omptarget.rtl.amdgpu
80
- -lpthread -ldl -Wl,-rpath,${OPENMP_INSTALL_LIBDIR}
81
- -L${HSA_LIB_PATH} -L${HSAKMT_LIB_PATH} -lhsa- runtime64 -lhsakmt -Wl,-rpath,${HSA_LIB_PATH},-rpath,${HSAKMT_LIB_PATH}
82
- -lelf
67
+ PRIVATE
68
+ hsa- runtime64::hsa-runtime64
69
+ pthread dl elf
83
70
"-Wl,--version-script=${CMAKE_CURRENT_SOURCE_DIR} /../exports"
84
71
"-Wl,-z,defs"
85
72
)
0 commit comments