Gentoo Archives: gentoo-commits

From: Craig Andrews <candrews@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/rocm-opencl-runtime/, dev-libs/rocm-opencl-runtime/files/
Date: Sun, 29 Dec 2019 22:22:30
Message-Id: 1577658115.6b973845a45a631ee62677847ee4b6ea0b3d7337.candrews@gentoo
1 commit: 6b973845a45a631ee62677847ee4b6ea0b3d7337
2 Author: Craig Andrews <candrews <AT> gentoo <DOT> org>
3 AuthorDate: Sun Dec 29 22:20:14 2019 +0000
4 Commit: Craig Andrews <candrews <AT> gentoo <DOT> org>
5 CommitDate: Sun Dec 29 22:21:55 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6b973845
7
8 dev-libs/rocm-opencl-runtime: 3.0.0 version bump
9
10 Package-Manager: Portage-2.3.84, Repoman-2.3.20
11 Signed-off-by: Craig Andrews <candrews <AT> gentoo.org>
12
13 dev-libs/rocm-opencl-runtime/Manifest | 1 +
14 ...ncl-runtime-3.0.0-change-install-location.patch | 147 +++++++++++++++++++++
15 .../rocm-opencl-runtime-3.0.0.ebuild | 58 ++++++++
16 3 files changed, 206 insertions(+)
17
18 diff --git a/dev-libs/rocm-opencl-runtime/Manifest b/dev-libs/rocm-opencl-runtime/Manifest
19 index 20a196694f6..3e9db010b8e 100644
20 --- a/dev-libs/rocm-opencl-runtime/Manifest
21 +++ b/dev-libs/rocm-opencl-runtime/Manifest
22 @@ -4,3 +4,4 @@ DIST rocm-opencl-runtime-2.10.0.tar.gz 965836 BLAKE2B 2eeb3449939389d684b016a5ea
23 DIST rocm-opencl-runtime-2.6.0.tar.gz 986155 BLAKE2B 43469ec3a368e2ee9716a38d08df48c28165a233bd80de54f286011df25782a197e252e8e41ffa8f59eecf93d6beae5434497e8d4b648676252d32a0859ba59a SHA512 bbbbd29bf23f93440135786600cca28a806714bb207b7ad0947d26471fa38470820e7801acc84380000d43d55ff2ec1d95cee9e64b500628b6a3b026744c67df
24 DIST rocm-opencl-runtime-2.8.0.tar.gz 976851 BLAKE2B 4191c2f027f615a8ba7a38d30364549df509e6bd432e5bfe3d30d40fb6bade15b58fe824b5aa9704e5d93421f28e1067d283738fa85e7ec59a444f5be25c963c SHA512 6c070d3e2f455d96f028f614f0562c0b8983b457c6295c398d6d4574133d4a7384573caa1f32e39550887861aa09aa19c9e34fc8bbae6ddc41ae395969d33540
25 DIST rocm-opencl-runtime-2.9.0.tar.gz 980980 BLAKE2B b72c9659ca8ac6b12d0c5c8c204a2a481c9e057e1b6aa80e24b57e141538c345025bfe74143ee2450bb013ff1b45a314538965fdc071a6e925967368baabfb94 SHA512 9d9742da94d4dd7326e6f64042418726f8fcaa05b3a02b6a7760b2f17067747a2a5f37183a4245697211ceb21e4fa0870dfeca9970b4fd3794985311d6ff7d0f
26 +DIST rocm-opencl-runtime-3.0.0.tar.gz 974702 BLAKE2B 2cc1eaf1aa8d8cc80de698b587bf38cfebd51b31959b9d0150e4f01ea1b41240b0311cad156c48cf531207f1a120d2151f38679a8bc4cef1e73c9c8e56dcaf45 SHA512 2a47deda34544832421fd8110dd437eaeab3a1fca498a9ac14e825402d48e81fb9fe065d078bc8bf112e0534a750fdf81a29bf5979b42f9925b1561f7bcbf6e7
27
28 diff --git a/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-3.0.0-change-install-location.patch b/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-3.0.0-change-install-location.patch
29 new file mode 100644
30 index 00000000000..eb1901f6a1e
31 --- /dev/null
32 +++ b/dev-libs/rocm-opencl-runtime/files/rocm-opencl-runtime-3.0.0-change-install-location.patch
33 @@ -0,0 +1,147 @@
34 +--- a/CMakeLists.txt 2019-12-28 09:34:17.470030419 +0100
35 ++++ b/CMakeLists.txt 2019-12-28 09:32:14.939030886 +0100
36 +@@ -21,12 +21,26 @@
37 +
38 + project(rocm-opencl)
39 +
40 ++include (GNUInstallDirs)
41 ++
42 + set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake" "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
43 + set(OPENCL_ICD_LOADER_HEADERS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/api/opencl/khronos/headers/opencl2.2" CACHE PATH "")
44 +
45 + find_package(ROCT REQUIRED)
46 + find_package(ROCR REQUIRED)
47 +
48 ++find_package(LLVM REQUIRED CONFIG PATHS ${LLVM_DIR} "/opt/rocm/llvm" NO_DEFAULT_PATH)
49 ++set(USE_COMGR_LIBRARY "yes")
50 ++find_package(amd_comgr REQUIRED CONFIG)
51 ++add_definitions(-DUSE_COMGR_LIBRARY)
52 ++FOREACH(DIR ${LLVM_INCLUDE_DIRS})
53 ++ include_directories("${DIR}")
54 ++ include_directories("${DIR}/clang")
55 ++ include_directories("${DIR}/lld")
56 ++ # TODO: move AMDGPU.h header to include folder
57 ++ include_directories("${DIR}/llvm/Target/AMDGPU")
58 ++ENDFOREACH()
59 ++
60 + # FIXME: Remove following if block after enabling COMGR by default
61 + if (${USE_COMGR_LIBRARY} STREQUAL "no")
62 + set(LLVM_INCLUDE_TESTS OFF CACHE BOOL "")
63 +@@ -39,29 +53,19 @@
64 + # override default option value in library and driver
65 + set(GENERIC_IS_ZERO ON CACHE BOOL ON FORCE)
66 +
67 +- add_subdirectory(compiler/llvm EXCLUDE_FROM_ALL)
68 +-
69 +- find_package(LLVM REQUIRED CONFIG PATHS ${CMAKE_BINARY_DIR}/compiler/llvm NO_DEFAULT_PATH)
70 ++ find_package(LLVM REQUIRED CONFIG PATHS ${LLVM_DIR} "/opt/rocm/llvm" NO_DEFAULT_PATH)
71 +
72 + list(APPEND CMAKE_MODULE_PATH "${LLVM_CMAKE_DIR}")
73 + include(AddLLVM)
74 +
75 + add_definitions(${LLVM_DEFINITIONS})
76 +- # TODO: add find_package for Clang and lld, and also use LLVM/Clang variables got from their config
77 +- include_directories(${CMAKE_SOURCE_DIR}/compiler/llvm/tools/clang/include)
78 +- include_directories(${CMAKE_BINARY_DIR}/compiler/llvm/tools/clang/include)
79 +- include_directories(${CMAKE_SOURCE_DIR}/compiler/llvm/tools/lld/include)
80 +-
81 +- # TODO: move AMDGPU.h header to include folder
82 +- include_directories(${CMAKE_SOURCE_DIR}/compiler/llvm/lib/Target/AMDGPU)
83 +- include_directories(${CMAKE_BINARY_DIR}/compiler/llvm/lib/Target/AMDGPU)
84 +
85 + set(BUILD_HC_LIB OFF CACHE BOOL "")
86 + set(ROCM_DEVICELIB_INCLUDE_TESTS OFF CACHE BOOL "")
87 + set(AMDGCN_TARGETS_LIB_LIST "AMDGCN_LIB_TARGETS")
88 + set(AMDGCN_TARGETS_LIB_DEPS "AMDGCN_DEP_TARGETS")
89 + set(AMDGPU_TARGET_TRIPLE "amdgcn-amd-amdhsa")
90 +- add_subdirectory(library/amdgcn EXCLUDE_FROM_ALL)
91 ++
92 + add_subdirectory(compiler/driver EXCLUDE_FROM_ALL)
93 +
94 + install(PROGRAMS $<TARGET_FILE:clang> $<TARGET_FILE:lld>
95 +@@ -77,22 +81,22 @@
96 + endforeach()
97 + endif() # if (${USE_COMGR_LIBRARY} STREQUAL "no")
98 +
99 +-if(${USE_COMGR_LIBRARY} MATCHES "yes")
100 +- set(COMGR_DYN_DLL "yes")
101 +- add_definitions(-DCOMGR_DYN_DLL)
102 +- add_definitions(-DUSE_COMGR_LIBRARY)
103 +- if( ${BUILD_HIP} MATCHES "yes")
104 +- add_subdirectory(api/hip)
105 +- endif()
106 +-endif()
107 ++#if(${USE_COMGR_LIBRARY} MATCHES "yes")
108 ++# set(COMGR_DYN_DLL "yes")
109 ++# add_definitions(-DCOMGR_DYN_DLL)
110 ++# add_definitions(-DUSE_COMGR_LIBRARY)
111 ++# if( ${BUILD_HIP} MATCHES "yes")
112 ++# add_subdirectory(api/hip)
113 ++# endif()
114 ++#endif()
115 +
116 + add_subdirectory(api/opencl/amdocl)
117 + add_subdirectory(compiler/lib/loaders/elf/utils/libelf)
118 + add_subdirectory(runtime)
119 +-add_subdirectory(tools/clinfo)
120 ++#add_subdirectory(tools/clinfo)
121 +
122 + set(BUILD_SHARED_LIBS "Build shared libs" ON)
123 +-add_subdirectory(api/opencl/khronos/icd)
124 ++#add_subdirectory(api/opencl/khronos/icd)
125 +
126 + ###--- Packaging ------------------------------------------------------------###
127 +
128 +@@ -101,31 +105,31 @@
129 + rocm_setup_version( VERSION "2.0.0" )
130 +
131 + # MAIN package
132 +-install(PROGRAMS $<TARGET_FILE:clinfo>
133 +- DESTINATION bin/x86_64
134 +- COMPONENT MAIN)
135 ++#install(PROGRAMS $<TARGET_FILE:clinfo>
136 ++# DESTINATION bin/x86_64
137 ++# COMPONENT MAIN)
138 + install(PROGRAMS $<TARGET_FILE:amdocl64>
139 +- DESTINATION lib/x86_64
140 +- COMPONENT MAIN)
141 +-install(PROGRAMS $<TARGET_FILE:OpenCL>
142 +- DESTINATION lib/x86_64
143 +- COMPONENT MAIN)
144 +-install(PROGRAMS $<TARGET_SONAME_FILE:OpenCL>
145 +- DESTINATION lib/x86_64
146 ++ DESTINATION lib64
147 + COMPONENT MAIN)
148 ++#install(PROGRAMS $<TARGET_FILE:OpenCL>
149 ++# DESTINATION lib/x86_64
150 ++# COMPONENT MAIN)
151 ++#install(PROGRAMS $<TARGET_SONAME_FILE:OpenCL>
152 ++# DESTINATION lib/x86_64
153 ++# COMPONENT MAIN)
154 +
155 + # DEV package
156 +-install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/api/opencl/khronos/headers/opencl2.2/CL"
157 +- DESTINATION include
158 +- COMPONENT DEV
159 +- USE_SOURCE_PERMISSIONS
160 +- PATTERN cl_d3d10.h EXCLUDE
161 +- PATTERN cl_d3d11.h EXCLUDE
162 +- PATTERN cl_dx9_media_sharing.h EXCLUDE
163 +- PATTERN cl_egl.h EXCLUDE)
164 +-install(PROGRAMS $<TARGET_LINKER_FILE:OpenCL>
165 +- DESTINATION lib/x86_64
166 +- COMPONENT DEV)
167 ++#install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/api/opencl/khronos/headers/opencl2.2/CL"
168 ++# DESTINATION include
169 ++# COMPONENT DEV
170 ++# USE_SOURCE_PERMISSIONS
171 ++# PATTERN cl_d3d10.h EXCLUDE
172 ++# PATTERN cl_d3d11.h EXCLUDE
173 ++# PATTERN cl_dx9_media_sharing.h EXCLUDE
174 ++# PATTERN cl_egl.h EXCLUDE)
175 ++#install(PROGRAMS $<TARGET_LINKER_FILE:OpenCL>
176 ++# DESTINATION lib/x86_64
177 ++# COMPONENT DEV)
178 +
179 + # Generic CPACK variables
180 + set(CPACK_GENERATOR "DEB;RPM" CACHE STRING "Default packaging generators")
181
182 diff --git a/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-3.0.0.ebuild b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-3.0.0.ebuild
183 new file mode 100644
184 index 00000000000..b57b49b6965
185 --- /dev/null
186 +++ b/dev-libs/rocm-opencl-runtime/rocm-opencl-runtime-3.0.0.ebuild
187 @@ -0,0 +1,58 @@
188 +# Copyright 1999-2019 Gentoo Authors
189 +# Distributed under the terms of the GNU General Public License v2
190 +
191 +EAPI=7
192 +
193 +inherit cmake-utils
194 +
195 +OPENCL_ICD_COMMIT="6c03f8b58fafd9dd693eaac826749a5cfad515f8"
196 +SRC_URI="https://github.com/KhronosGroup/OpenCL-ICD-Loader/archive/${OPENCL_ICD_COMMIT}.tar.gz -> OpenCL-ICD-Loader-${OPENCL_ICD_COMMIT}.tar.gz"
197 +if [[ ${PV} == *9999 ]] ; then
198 + EGIT_REPO_URI="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/"
199 + inherit git-r3
200 +else
201 + SRC_URI+=" https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime/archive/roc-${PV}.tar.gz -> ${P}.tar.gz"
202 + KEYWORDS="~amd64"
203 + S="${WORKDIR}/ROCm-OpenCL-Runtime-roc-${PV}"
204 +fi
205 +
206 +DESCRIPTION="Radeon Open Compute OpenCL Compatible Runtime"
207 +HOMEPAGE="https://github.com/RadeonOpenCompute/ROCm-OpenCL-Runtime"
208 +
209 +LICENSE="Apache-2.0 MIT"
210 +SLOT="0/$(ver_cut 1-2)"
211 +
212 +RDEPEND=">=dev-libs/rocr-runtime-${PV}
213 + >=dev-libs/rocm-comgr-${PV}
214 + >=dev-libs/rocm-device-libs-${PV}
215 + dev-libs/ocl-icd[khronos-headers]
216 + media-libs/mesa"
217 +DEPEND="${RDEPEND}
218 + dev-lang/ocaml
219 + dev-ml/findlib"
220 +BDEPEND=">=dev-util/rocm-cmake-${PV}"
221 +
222 +PATCHES=(
223 + "${FILESDIR}/${PN}-3.0.0-change-install-location.patch"
224 + "${FILESDIR}/${PN}-2.8.0-change-AMDCompilerh.patch"
225 + "${FILESDIR}/${PN}-2.8.0-change-opencl.patch"
226 + "${FILESDIR}/${PN}-2.8.0-update-README.patch"
227 + "${FILESDIR}/${PN}-2.8.0-amdocl64icd.patch"
228 +)
229 +
230 +src_prepare() {
231 + mkdir -p "${S}"/api/opencl/khronos/ || die
232 + mv "${WORKDIR}/OpenCL-ICD-Loader-${OPENCL_ICD_COMMIT}" "${S}"/api/opencl/khronos/icd || die
233 + [ -d tools/clinfo ] && rm -rf tools/clinfo || die
234 + cmake-utils_src_prepare
235 +}
236 +
237 +src_configure() {
238 + local mycmakeargs=(
239 + -DUSE_COMGR_LIBRARY=yes
240 + -DLLVM_DIR="${EPREFIX}/usr/lib/llvm/roc/"
241 + -DClang_DIR="${EPREFIX}/usr/lib/llvm/roc/lib/cmake/clang/"
242 + -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/"
243 + )
244 + cmake-utils_src_configure
245 +}