1 |
commit: 12f7d85386a6700e529a14cd7d98ec44f875603a |
2 |
Author: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Dec 1 20:35:07 2022 +0000 |
4 |
Commit: Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Dec 1 21:39:30 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=12f7d853 |
7 |
|
8 |
sys-devel/DPC++: new package, add 2022.09 |
9 |
|
10 |
See-also: https://github.com/gentoo/sci/pull/1040 |
11 |
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org> |
12 |
|
13 |
sys-devel/DPC++/DPC++-2022.09.ebuild | 176 +++++++++++++++++ |
14 |
.../DPC++/files/DPC++-2022.09-system-libs.patch | 217 +++++++++++++++++++++ |
15 |
sys-devel/DPC++/metadata.xml | 16 ++ |
16 |
3 files changed, 409 insertions(+) |
17 |
|
18 |
diff --git a/sys-devel/DPC++/DPC++-2022.09.ebuild b/sys-devel/DPC++/DPC++-2022.09.ebuild |
19 |
new file mode 100644 |
20 |
index 000000000..fc7ebb76d |
21 |
--- /dev/null |
22 |
+++ b/sys-devel/DPC++/DPC++-2022.09.ebuild |
23 |
@@ -0,0 +1,176 @@ |
24 |
+# Copyright 2022 Gentoo Authors |
25 |
+# Distributed under the terms of the GNU General Public License v2 |
26 |
+ |
27 |
+EAPI=8 |
28 |
+ |
29 |
+PYTHON_COMPAT=( python3_{8..11} ) |
30 |
+inherit cmake python-any-r1 |
31 |
+DOCS_BUILDER="doxygen" |
32 |
+DOCS_DIR="build/docs" |
33 |
+DOCS_CONFIG_NAME="doxygen.cfg" |
34 |
+DOCS_DEPEND=" |
35 |
+ media-gfx/graphviz |
36 |
+ virtual/latex-base |
37 |
+ $(python_gen_any_dep ' |
38 |
+ dev-python/sphinx[${PYTHON_USEDEP}] |
39 |
+ dev-python/recommonmark[${PYTHON_USEDEP}] |
40 |
+ dev-python/myst_parser[${PYTHON_USEDEP}] |
41 |
+ ') |
42 |
+" |
43 |
+inherit docs |
44 |
+ |
45 |
+# We cannot unbundle this because it has to be compiled with the clang/llvm |
46 |
+# that we are building here. Otherwise we run into problems running the compiler. |
47 |
+CPU_EMUL_PV="2022-08-22" |
48 |
+VC_INTR_PV="0.8.1" # Newer versions cause compile failure |
49 |
+ |
50 |
+DESCRIPTION="oneAPI Data Parallel C++ compiler" |
51 |
+HOMEPAGE="https://github.com/intel/llvm" |
52 |
+SRC_URI=" |
53 |
+ https://github.com/intel/llvm/archive/refs/tags/${PV//./-}.tar.gz -> ${P}.tar.gz |
54 |
+ https://github.com/intel/vc-intrinsics/archive/refs/tags/v${VC_INTR_PV}.tar.gz -> ${P}-vc-intrinsics-${VC_INTR_PV}.tar.gz |
55 |
+ esimd_emulator? ( https://github.com/intel/cm-cpu-emulation/archive/refs/tags/v${CPU_EMUL_PV}.tar.gz -> ${P}-cm-cpu-emulation-${CPU_EMUL_PV}.tar.gz ) |
56 |
+" |
57 |
+S="${WORKDIR}/llvm-${PV//./-}" |
58 |
+CMAKE_USE_DIR="${S}/llvm" |
59 |
+BUILD_DIR="${S}/build" |
60 |
+ |
61 |
+LICENSE="Apache-2.0 MIT" |
62 |
+SLOT="0" |
63 |
+KEYWORDS="~amd64" |
64 |
+ |
65 |
+ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM AVR BPF Hexagon Lanai Mips MSP430 |
66 |
+ NVPTX PowerPC RISCV Sparc SystemZ WebAssembly X86 XCore ) |
67 |
+ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) |
68 |
+LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/(-)?} |
69 |
+ |
70 |
+IUSE="cuda hip test esimd_emulator ${ALL_LLVM_TARGETS[*]}" |
71 |
+REQUIRED_USE=" |
72 |
+ ?? ( cuda hip ) |
73 |
+ cuda? ( llvm_targets_NVPTX ) |
74 |
+ hip? ( llvm_targets_AMDGPU ) |
75 |
+" |
76 |
+RESTRICT="!test? ( test )" |
77 |
+ |
78 |
+BDEPEND="virtual/pkgconfig" |
79 |
+ |
80 |
+DEPEND=" |
81 |
+ dev-libs/boost:= |
82 |
+ dev-libs/level-zero:= |
83 |
+ dev-libs/opencl-icd-loader |
84 |
+ dev-util/opencl-headers |
85 |
+ dev-util/spirv-headers |
86 |
+ dev-util/spirv-tools |
87 |
+ media-libs/libva |
88 |
+ sys-devel/libtool |
89 |
+ esimd_emulator? ( dev-libs/libffi:= ) |
90 |
+ cuda? ( dev-util/nvidia-cuda-toolkit:= ) |
91 |
+ hip? ( dev-util/hip:= ) |
92 |
+" |
93 |
+RDEPEND="${DEPEND}" |
94 |
+ |
95 |
+PATCHES=( |
96 |
+ "${FILESDIR}/${P}-system-libs.patch" |
97 |
+) |
98 |
+ |
99 |
+src_configure() { |
100 |
+ # Extracted from buildbot/configure.py |
101 |
+ local mycmakeargs=( |
102 |
+ -DLLVM_ENABLE_ASSERTIONS=ON |
103 |
+ -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" |
104 |
+ -DLLVM_EXTERNAL_PROJECTS="sycl;llvm-spirv;opencl;libdevice;xpti;xptifw" |
105 |
+ -DLLVM_EXTERNAL_SYCL_SOURCE_DIR="${S}/sycl" |
106 |
+ -DLLVM_EXTERNAL_LLVM_SPIRV_SOURCE_DIR="${S}/llvm-spirv" |
107 |
+ -DLLVM_EXTERNAL_XPTI_SOURCE_DIR="${S}/xpti" |
108 |
+ -DXPTI_SOURCE_DIR="${S}/xpti" |
109 |
+ -DLLVM_EXTERNAL_XPTIFW_SOURCE_DIR="${S}/xptifw" |
110 |
+ -DLLVM_EXTERNAL_LIBDEVICE_SOURCE_DIR="${S}/libdevice" |
111 |
+ -DLLVM_ENABLE_PROJECTS="clang;sycl;llvm-spirv;opencl;libdevice;xpti;xptifw" |
112 |
+ -DLLVM_BUILD_TOOLS=ON |
113 |
+ -DSYCL_ENABLE_WERROR=OFF |
114 |
+ -DSYCL_INCLUDE_TESTS="$(usex test)" |
115 |
+ -DCLANG_INCLUDE_TESTS="$(usex test)" |
116 |
+ -DLLVM_INCLUDE_TESTS="$(usex test)" |
117 |
+ -DLLVM_SPIRV_INCLUDE_TESTS="$(usex test)" |
118 |
+ -DLLVM_ENABLE_DOXYGEN="$(usex doc)" |
119 |
+ -DLLVM_ENABLE_SPHINX="$(usex doc)" |
120 |
+ -DLLVM_BUILD_DOCS="$(usex doc)" |
121 |
+ -DSYCL_ENABLE_XPTI_TRACING=ON |
122 |
+ -DLLVM_ENABLE_LLD=OFF |
123 |
+ -DXPTI_ENABLE_WERROR=OFF |
124 |
+ -DSYCL_ENABLE_PLUGINS="level_zero;opencl;$(usev esimd_emulator);$(usev hip);$(usev cuda)" |
125 |
+ -DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR="${ESYSROOT}/usr" |
126 |
+ -DBOOST_MP11_SOURCE_DIR="${ESYSROOT}/usr " |
127 |
+ -DLEVEL_ZERO_LIBRARY="${ESYSROOT}/usr/lib64/libze_loader.so" |
128 |
+ -DLEVEL_ZERO_INCLUDE_DIR="${ESYSROOT}/usr/include" |
129 |
+ -DLLVMGenXIntrinsics_SOURCE_DIR="${WORKDIR}/vc-intrinsics-${VC_INTR_PV}" |
130 |
+ -DSYCL_CLANG_EXTRA_FLAGS="${CXXFLAGS}" |
131 |
+ # The sycl part of the build system insists on installing during compiling |
132 |
+ # Install it to some temporary directory |
133 |
+ -DCMAKE_INSTALL_PREFIX="${BUILD_DIR}/install" |
134 |
+ -DCMAKE_INSTALL_MANDIR="${BUILD_DIR}/install/share/man" |
135 |
+ -DCMAKE_INSTALL_INFODIR="${BUILD_DIR}/install/share/info" |
136 |
+ -DCMAKE_INSTALL_DOCDIR="${BUILD_DIR}/install/share/doc/${PF}" |
137 |
+ ) |
138 |
+ |
139 |
+ if use hip; then |
140 |
+ mycmakeargs+=( |
141 |
+ -DSYCL_BUILD_PI_HIP_PLATFORM=AMD |
142 |
+ -DLIBCLC_GENERATE_REMANGLED_VARIANTS=ON |
143 |
+ -DLIBCLC_TARGETS_TO_BUILD=";amdgcn--;amdgcn--amdhsa" |
144 |
+ ) |
145 |
+ fi |
146 |
+ |
147 |
+ if use cuda; then |
148 |
+ mycmakeargs+=( |
149 |
+ -DLIBCLC_GENERATE_REMANGLED_VARIANTS=ON |
150 |
+ -DLIBCLC_TARGETS_TO_BUILD=";nvptx64--;nvptx64--nvidiacl" |
151 |
+ ) |
152 |
+ fi |
153 |
+ |
154 |
+ if use esimd_emulator; then |
155 |
+ mycmakeargs+=( |
156 |
+ -DLibFFI_INCLUDE_DIR="${ESYSROOT}/usr/lib64/libffi/include" |
157 |
+ -DUSE_LOCAL_CM_EMU_SOURCE="${WORKDIR}/cm-cpu-emulation-${CPU_EMUL_PV}" |
158 |
+ ) |
159 |
+ fi |
160 |
+ |
161 |
+ if use doc; then |
162 |
+ mycmakeargs+=( -DSPHINX_WARNINGS_AS_ERRORS=OFF ) |
163 |
+ fi |
164 |
+ |
165 |
+ cmake_src_configure |
166 |
+} |
167 |
+ |
168 |
+src_compile() { |
169 |
+ # Build sycl (this also installs some stuff already) |
170 |
+ cmake_build deploy-sycl-toolchain |
171 |
+ |
172 |
+ use doc && cmake_build doxygen-sycl |
173 |
+ |
174 |
+ # Install all other files into the same temporary directory |
175 |
+ cmake_build install |
176 |
+} |
177 |
+ |
178 |
+src_test() { |
179 |
+ cmake_build check |
180 |
+} |
181 |
+ |
182 |
+src_install() { |
183 |
+ einstalldocs |
184 |
+ |
185 |
+ local LLVM_INTEL_DIR="/usr/lib/llvm/intel" |
186 |
+ dodir "${LLVM_INTEL_DIR}" |
187 |
+ |
188 |
+ # Copy our temporary directory to the image directory |
189 |
+ mv "${BUILD_DIR}/install"/* "${ED}/${LLVM_INTEL_DIR}" || die |
190 |
+ |
191 |
+ # Copied from llvm ebuild, put env file last so we don't overwrite main llvm/clang |
192 |
+ newenvd - "60llvm-intel" <<-_EOF_ |
193 |
+ PATH="${EPREFIX}${LLVM_INTEL_DIR}/bin" |
194 |
+ # we need to duplicate it in ROOTPATH for Portage to respect... |
195 |
+ ROOTPATH="${EPREFIX}${LLVM_INTEL_DIR}/bin" |
196 |
+ MANPATH="${EPREFIX}${LLVM_INTEL_DIR}/share/man" |
197 |
+ LDPATH="${EPREFIX}${LLVM_INTEL_DIR}/lib:${EPREFIX}${LLVM_INTEL_DIR}/lib64" |
198 |
+ _EOF_ |
199 |
+} |
200 |
|
201 |
diff --git a/sys-devel/DPC++/files/DPC++-2022.09-system-libs.patch b/sys-devel/DPC++/files/DPC++-2022.09-system-libs.patch |
202 |
new file mode 100644 |
203 |
index 000000000..7d2cdc823 |
204 |
--- /dev/null |
205 |
+++ b/sys-devel/DPC++/files/DPC++-2022.09-system-libs.patch |
206 |
@@ -0,0 +1,217 @@ |
207 |
+diff --git a/opencl/CMakeLists.txt b/opencl/CMakeLists.txt |
208 |
+index 954317fe2..ba3bf19d3 100644 |
209 |
+--- a/opencl/CMakeLists.txt |
210 |
++++ b/opencl/CMakeLists.txt |
211 |
+@@ -23,29 +23,8 @@ set(OCL_LOADER_REPO |
212 |
+ set(OCL_HEADERS_TAG dcd5bede6859d26833cd85f0d6bbcee7382dc9b3) |
213 |
+ set(OCL_LOADER_TAG 792682ad3d877ab38573b997808bab3b43902b70) |
214 |
+ |
215 |
+-# OpenCL Headers |
216 |
+-if(NOT OpenCL_HEADERS) |
217 |
+- message(STATUS "Will fetch OpenCL headers from ${OCL_HEADERS_REPO}") |
218 |
+- |
219 |
+- FetchContent_Declare(ocl-headers |
220 |
+- GIT_REPOSITORY ${OCL_HEADERS_REPO} |
221 |
+- GIT_TAG ${OCL_HEADERS_TAG} |
222 |
+- ) |
223 |
+-else() |
224 |
+- message(STATUS "OpenCL headers are added manually ${OpenCL_HEADERS}") |
225 |
+- |
226 |
+- FetchContent_Declare(ocl-headers |
227 |
+- URL ${OpenCL_HEADERS} |
228 |
+- ) |
229 |
+-endif() |
230 |
+- |
231 |
+-FetchContent_MakeAvailable(ocl-headers) |
232 |
+-FetchContent_GetProperties(ocl-headers) |
233 |
+ set(OpenCL_INCLUDE_DIR |
234 |
+- ${ocl-headers_SOURCE_DIR} CACHE PATH "Path to OpenCL Headers") |
235 |
+- |
236 |
+-target_compile_definitions(Headers INTERFACE -DCL_TARGET_OPENCL_VERSION=220) |
237 |
+-add_library(OpenCL-Headers ALIAS Headers) |
238 |
++ /usr/include CACHE PATH "Path to OpenCL Headers") |
239 |
+ |
240 |
+ # OpenCL Library (ICD Loader) |
241 |
+ |
242 |
+@@ -57,25 +36,4 @@ set(OPENCL_ICD_LOADER_HEADERS_DIR |
243 |
+ # library. |
244 |
+ set(BUILD_SHARED_LIBS ON) |
245 |
+ |
246 |
+-if(NOT OpenCL_LIBRARY_SRC) |
247 |
+- message(STATUS "Will fetch OpenCL ICD Loader from ${OCL_LOADER_REPO}") |
248 |
+- |
249 |
+- FetchContent_Declare(ocl-icd |
250 |
+- GIT_REPOSITORY ${OCL_LOADER_REPO} |
251 |
+- GIT_TAG ${OCL_LOADER_TAG} |
252 |
+- ) |
253 |
+-else() |
254 |
+- # TODO: add possibility to use prebuilt OpenCL library rather than building |
255 |
+- # together with llvm. |
256 |
+- message(STATUS |
257 |
+- "OpenCL ICD Loader sources added manually ${OpenCL_LIBRARY_SRC}") |
258 |
+- |
259 |
+- FetchContent_Declare(ocl-icd |
260 |
+- URL ${OpenCL_LIBRARY_SRC} |
261 |
+- ) |
262 |
+-endif() |
263 |
+- |
264 |
+-FetchContent_MakeAvailable(ocl-icd) |
265 |
+-add_library(OpenCL-ICD ALIAS OpenCL) |
266 |
+- |
267 |
+ add_subdirectory(opencl-aot) |
268 |
+diff --git a/opencl/opencl-aot/CMakeLists.txt b/opencl/opencl-aot/CMakeLists.txt |
269 |
+index ff905fd88..b673f79a4 100644 |
270 |
+--- a/opencl/opencl-aot/CMakeLists.txt |
271 |
++++ b/opencl/opencl-aot/CMakeLists.txt |
272 |
+@@ -19,5 +19,5 @@ endif() |
273 |
+ |
274 |
+ target_link_libraries(${OPENCL_AOT_PROJECT_NAME} |
275 |
+ PRIVATE |
276 |
+- OpenCL-Headers |
277 |
+- OpenCL-ICD) |
278 |
++ OpenCL |
279 |
++) |
280 |
+diff --git a/sycl/cmake/modules/AddSYCL.cmake b/sycl/cmake/modules/AddSYCL.cmake |
281 |
+index aa0cfcadd..9cfa5aadd 100644 |
282 |
+--- a/sycl/cmake/modules/AddSYCL.cmake |
283 |
++++ b/sycl/cmake/modules/AddSYCL.cmake |
284 |
+@@ -47,7 +47,7 @@ function(add_sycl_plugin PLUGIN_NAME) |
285 |
+ ${sycl_inc_dir} |
286 |
+ LIBRARIES |
287 |
+ ${ARG_LIBRARIES} |
288 |
+- OpenCL-Headers |
289 |
++ OpenCL |
290 |
+ ) |
291 |
+ |
292 |
+ install(TARGETS pi_${PLUGIN_NAME} |
293 |
+diff --git a/sycl/cmake/modules/AddSYCLUnitTest.cmake b/sycl/cmake/modules/AddSYCLUnitTest.cmake |
294 |
+index 9f5e6dc30..fe0e18b2f 100644 |
295 |
+--- a/sycl/cmake/modules/AddSYCLUnitTest.cmake |
296 |
++++ b/sycl/cmake/modules/AddSYCLUnitTest.cmake |
297 |
+@@ -53,7 +53,7 @@ macro(add_sycl_unittest test_dirname link_variant) |
298 |
+ target_link_libraries(${test_dirname} |
299 |
+ PRIVATE |
300 |
+ LLVMTestingSupport |
301 |
+- OpenCL-Headers |
302 |
++ OpenCL |
303 |
+ ${SYCL_LINK_LIBS} |
304 |
+ ) |
305 |
+ target_include_directories(${test_dirname} |
306 |
+diff --git a/sycl/plugins/esimd_emulator/CMakeLists.txt b/sycl/plugins/esimd_emulator/CMakeLists.txt |
307 |
+index 0b32c3925..e8b8616bc 100755 |
308 |
+--- a/sycl/plugins/esimd_emulator/CMakeLists.txt |
309 |
++++ b/sycl/plugins/esimd_emulator/CMakeLists.txt |
310 |
+@@ -58,6 +58,7 @@ if ((DEFINED USE_DEFAULT_CM_EMU_SOURCE) OR (DEFINED USE_LOCAL_CM_EMU_SOURCE)) |
311 |
+ INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/cm-emu_install |
312 |
+ CMAKE_ARGS -DLIBVA_INSTALL_PATH=/usr |
313 |
+ -D__SYCL_EXPLICIT_SIMD_PLUGIN__=true |
314 |
++ -DLibFFI_INCLUDE_DIR=${LibFFI_INCLUDE_DIR} |
315 |
+ -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR> |
316 |
+ BUILD_BYPRODUCTS ${LIBCM} ${LIBIGFXCMRT_EMU} |
317 |
+ ) |
318 |
+diff --git a/sycl/plugins/level_zero/CMakeLists.txt b/sycl/plugins/level_zero/CMakeLists.txt |
319 |
+index 9391ff1e5..aa823e8fa 100755 |
320 |
+--- a/sycl/plugins/level_zero/CMakeLists.txt |
321 |
++++ b/sycl/plugins/level_zero/CMakeLists.txt |
322 |
+@@ -82,7 +82,7 @@ else() |
323 |
+ COMMAND |
324 |
+ ${CMAKE_COMMAND} -E copy ${LEVEL_ZERO_LIBRARY_SRC} ${LLVM_LIBRARY_OUTPUT_INTDIR} |
325 |
+ COMMAND |
326 |
+- ${CMAKE_COMMAND} -E copy_directory ${LEVEL_ZERO_INCLUDE_DIR} ${LLVM_BINARY_DIR}/include/sycl |
327 |
++ ${CMAKE_COMMAND} -E copy_directory ${LEVEL_ZERO_INCLUDE_DIR}/level_zero ${LLVM_BINARY_DIR}/include/sycl/level_zero |
328 |
+ DEPENDS |
329 |
+ ${LEVEL_ZERO_LIBRARY} |
330 |
+ ${LEVEL_ZERO_INCLUDE_DIR} |
331 |
+diff --git a/sycl/plugins/opencl/CMakeLists.txt b/sycl/plugins/opencl/CMakeLists.txt |
332 |
+index 9943827e4..29fae166e 100644 |
333 |
+--- a/sycl/plugins/opencl/CMakeLists.txt |
334 |
++++ b/sycl/plugins/opencl/CMakeLists.txt |
335 |
+@@ -15,7 +15,7 @@ add_sycl_plugin(opencl |
336 |
+ "${sycl_inc_dir}/sycl/detail/pi.h" |
337 |
+ "pi_opencl.cpp" |
338 |
+ LIBRARIES |
339 |
+- OpenCL-ICD |
340 |
++ OpenCL |
341 |
+ ) |
342 |
+ |
343 |
+ set_target_properties(pi_opencl PROPERTIES LINKER_LANGUAGE CXX) |
344 |
+diff --git a/sycl/source/CMakeLists.txt b/sycl/source/CMakeLists.txt |
345 |
+index 23b161480..4a5c48625 100644 |
346 |
+--- a/sycl/source/CMakeLists.txt |
347 |
++++ b/sycl/source/CMakeLists.txt |
348 |
+@@ -82,7 +82,7 @@ function(add_sycl_rt_library LIB_NAME LIB_OBJ_NAME) |
349 |
+ ) |
350 |
+ #TODO: Remove dependency on opencl headers. |
351 |
+ target_link_libraries(${LIB_OBJ_NAME} |
352 |
+- PRIVATE OpenCL-Headers |
353 |
++ PRIVATE OpenCL |
354 |
+ ) |
355 |
+ |
356 |
+ find_package(Threads REQUIRED) |
357 |
+diff --git a/sycl/tools/CMakeLists.txt b/sycl/tools/CMakeLists.txt |
358 |
+index eb62c48e1..6a7ff9aef 100644 |
359 |
+--- a/sycl/tools/CMakeLists.txt |
360 |
++++ b/sycl/tools/CMakeLists.txt |
361 |
+@@ -38,9 +38,8 @@ endif() |
362 |
+ |
363 |
+ target_link_libraries(get_device_count_by_type |
364 |
+ PRIVATE |
365 |
+- OpenCL-Headers |
366 |
++ OpenCL |
367 |
+ LevelZeroLoader::Headers |
368 |
+- OpenCL-ICD |
369 |
+ ${LEVEL_ZERO_LIBRARY} |
370 |
+ # The CUDA and HIP for NVIDA plugins need cudadrv |
371 |
+ $<$<OR:$<BOOL:${SYCL_BUILD_PI_CUDA}>,$<AND:$<BOOL:${SYCL_BUILD_PI_HIP}>,$<STREQUAL:${SYCL_BUILD_PI_HIP_PLATFORM},NVIDIA>>>:cudadrv> |
372 |
+diff --git a/sycl/tools/sycl-ls/CMakeLists.txt b/sycl/tools/sycl-ls/CMakeLists.txt |
373 |
+index f5909cf49..f9c52e3a3 100644 |
374 |
+--- a/sycl/tools/sycl-ls/CMakeLists.txt |
375 |
++++ b/sycl/tools/sycl-ls/CMakeLists.txt |
376 |
+@@ -11,7 +11,7 @@ endif() |
377 |
+ target_link_libraries(sycl-ls |
378 |
+ PRIVATE |
379 |
+ ${sycl_lib} |
380 |
+- OpenCL-Headers |
381 |
++ OpenCL |
382 |
+ ) |
383 |
+ install(TARGETS sycl-ls |
384 |
+ RUNTIME DESTINATION "bin" COMPONENT sycl-ls) |
385 |
+diff --git a/sycl/tools/sycl-prof/CMakeLists.txt b/sycl/tools/sycl-prof/CMakeLists.txt |
386 |
+index 09586c1b8..ff708db67 100644 |
387 |
+--- a/sycl/tools/sycl-prof/CMakeLists.txt |
388 |
++++ b/sycl/tools/sycl-prof/CMakeLists.txt |
389 |
+@@ -16,7 +16,7 @@ add_library(sycl_profiler_collector SHARED collector.cpp) |
390 |
+ target_compile_definitions(sycl_profiler_collector PRIVATE XPTI_CALLBACK_API_EXPORTS) |
391 |
+ target_link_libraries(sycl_profiler_collector PRIVATE xptifw) |
392 |
+ if (TARGET OpenCL-Headers) |
393 |
+- target_link_libraries(sycl_profiler_collector PRIVATE OpenCL-Headers) |
394 |
++ target_link_libraries(sycl_profiler_collector PRIVATE OpenCL) |
395 |
+ endif() |
396 |
+ target_include_directories(sycl_profiler_collector PRIVATE |
397 |
+ "${sycl_inc_dir}" |
398 |
+diff --git a/sycl/tools/sycl-sanitize/CMakeLists.txt b/sycl/tools/sycl-sanitize/CMakeLists.txt |
399 |
+index 16e7a1a49..e27b2cb21 100644 |
400 |
+--- a/sycl/tools/sycl-sanitize/CMakeLists.txt |
401 |
++++ b/sycl/tools/sycl-sanitize/CMakeLists.txt |
402 |
+@@ -14,7 +14,7 @@ add_library(sycl_sanitizer_collector SHARED collector.cpp) |
403 |
+ target_compile_definitions(sycl_sanitizer_collector PRIVATE XPTI_CALLBACK_API_EXPORTS) |
404 |
+ target_link_libraries(sycl_sanitizer_collector PRIVATE xptifw) |
405 |
+ if (TARGET OpenCL-Headers) |
406 |
+- target_link_libraries(sycl_sanitizer_collector PRIVATE OpenCL-Headers) |
407 |
++ target_link_libraries(sycl_sanitizer_collector PRIVATE OpenCL) |
408 |
+ endif() |
409 |
+ |
410 |
+ target_include_directories(sycl_sanitizer_collector PRIVATE |
411 |
+diff --git a/sycl/tools/sycl-trace/CMakeLists.txt b/sycl/tools/sycl-trace/CMakeLists.txt |
412 |
+index 385a348f6..721e29125 100644 |
413 |
+--- a/sycl/tools/sycl-trace/CMakeLists.txt |
414 |
++++ b/sycl/tools/sycl-trace/CMakeLists.txt |
415 |
+@@ -46,7 +46,7 @@ add_custom_target(ze-pretty-printers |
416 |
+ target_compile_definitions(sycl_pi_trace_collector PRIVATE XPTI_CALLBACK_API_EXPORTS) |
417 |
+ target_link_libraries(sycl_pi_trace_collector PRIVATE xptifw) |
418 |
+ if (TARGET OpenCL-Headers) |
419 |
+- target_link_libraries(sycl_pi_trace_collector PRIVATE OpenCL-Headers) |
420 |
++ target_link_libraries(sycl_pi_trace_collector PRIVATE OpenCL) |
421 |
+ endif() |
422 |
+ |
423 |
+ target_include_directories(sycl_pi_trace_collector PRIVATE |
424 |
|
425 |
diff --git a/sys-devel/DPC++/metadata.xml b/sys-devel/DPC++/metadata.xml |
426 |
new file mode 100644 |
427 |
index 000000000..771c45a25 |
428 |
--- /dev/null |
429 |
+++ b/sys-devel/DPC++/metadata.xml |
430 |
@@ -0,0 +1,16 @@ |
431 |
+<?xml version="1.0" encoding="UTF-8"?> |
432 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
433 |
+<pkgmetadata> |
434 |
+ <maintainer type="project"> |
435 |
+ <email>sci@g.o</email> |
436 |
+ <name>Gentoo Science Project</name> |
437 |
+ </maintainer> |
438 |
+ <upstream> |
439 |
+ <remote-id type="github">intel/llvm</remote-id> |
440 |
+ </upstream> |
441 |
+ <use> |
442 |
+ <flag name="cuda">use the cuda backend</flag> |
443 |
+ <flag name="esimd_emulator">enable ESIMD CPU emulation</flag> |
444 |
+ <flag name="hip">use the HIP backend</flag> |
445 |
+ </use> |
446 |
+</pkgmetadata> |