commit:     43d56a5a6a0093753f28dcf2c697f0a72f8e497e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Oct  1 06:21:48 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Oct  1 06:21:48 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43d56a5a

llvm-runtimes/offload: Add 22.0.0_pre20251001 snapshot

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 llvm-runtimes/offload/Manifest                     |   1 +
 .../offload/offload-22.0.0_pre20251001.ebuild      | 138 +++++++++++++++++++++
 2 files changed, 139 insertions(+)

diff --git a/llvm-runtimes/offload/Manifest b/llvm-runtimes/offload/Manifest
index d59f88da12a2..7c0195059577 100644
--- a/llvm-runtimes/offload/Manifest
+++ b/llvm-runtimes/offload/Manifest
@@ -7,4 +7,5 @@ DIST llvm-project-21.1.1.src.tar.xz.sig 438 BLAKE2B 
8fdf614e67e31382c65d70a551ef
 DIST llvm-project-21.1.2.src.tar.xz 158926856 BLAKE2B 
1b5684586297ad637c6da0976854b24d746679e9d125a19e321dc28fa7f83949cc431f4b630e4976496660389e7abac09962c21e45b88dff7d0900ee1bda51d7
 SHA512 
f810ba8706872257715c05f80c304ceb396cf38b3a8e0bfb50e474e8d0a3417740b9afea170a7c06a33927037753a190471917e83d6740cb18bc50fd50cf4f3d
 DIST llvm-project-21.1.2.src.tar.xz.sig 566 BLAKE2B 
6209caf851c681e6f63ed1bd9589ac139c104d6ee21f463aacda472e30a847c32f3bd74a04208af05bb6203d8fa31bdc0028c0e72736a3037940e75eda615415
 SHA512 
dd8aa57451752a9207c276117a4b8a86f41263ea3ccc4fa198cd40d6fec79acd0ba126c4b84a1acbb52bbb2bce029fbc336deac8131be94747dd04e4a0f69331
 DIST llvm-project-70bd610e43853d575e22be1cda46614fe9f0072f.tar.gz 247904536 
BLAKE2B 
f0ae7bd39d921ce28adb6e2aadd8b2b94ba7a48ba344ea6ea236b2507430fb1a0e23cd6186d79d445de31d46580e2ac9ec400fc686cd9a7513e0ae2d0f479c1d
 SHA512 
1201acbcec20d00979e7f06075756926161123cfb11da146a3bfa5c81d607b61d94c645d0abba839614cbe5d44cacb0b1c754e1ae49fa871cb86d9f6d7c70e26
+DIST llvm-project-89ed5255b9ee88119e409a6d986eb1ad0e8f08e3.tar.gz 248431210 
BLAKE2B 
b98dfe5ae46190a5a2460c965f0ec51d2f65a9d1d14f82afa19a10f00a2c29520c52309ee66d71efed6361aa675abcc9bd1b5e61e1c3b1aa9bac4984050c2bc2
 SHA512 
f860f529f4eb67f4a5875d9931accae2f48b88486dd6715a2ca2add7d5aa1541a30e323612394162e65597054d61a879a9ba94e4dbf417c3fb5f8ff069c2d924
 DIST llvm-project-f059d2bac034acca39ad60a1b13aaec6afa0a3d6.tar.gz 248627883 
BLAKE2B 
e1603ba38fcf70e7f3794a30a42057d0052a422bd0aaf423c65d1fd8f9ec7d3981cd651f309dc3ab5c28183291241732373b9bdb75fc2a11fc8d9f238388b8c3
 SHA512 
63a1627a8b3cc8f240cefe2066d7e306cab5091317f97dd808b9ad887d4e6eb2d21af3f79bccfdb9387f5f7a5ed0b772013b0261a647c8d50ffaa55914362dfb

diff --git a/llvm-runtimes/offload/offload-22.0.0_pre20251001.ebuild 
b/llvm-runtimes/offload/offload-22.0.0_pre20251001.ebuild
new file mode 100644
index 000000000000..6d87304be648
--- /dev/null
+++ b/llvm-runtimes/offload/offload-22.0.0_pre20251001.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit cmake crossdev flag-o-matic llvm.org python-any-r1
+inherit toolchain-funcs
+
+DESCRIPTION="OpenMP offloading support"
+HOMEPAGE="https://openmp.llvm.org";
+
+LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
+SLOT="0/${LLVM_SOABI}"
+IUSE="+clang +debug ompt test llvm_targets_AMDGPU llvm_targets_NVPTX"
+REQUIRED_USE="
+       llvm_targets_AMDGPU? ( clang )
+       llvm_targets_NVPTX? ( clang )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       dev-libs/libffi:=
+       ~llvm-core/llvm-${PV}
+       ~llvm-runtimes/openmp-${PV}[ompt?]
+       llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= )
+"
+DEPEND="
+       ${RDEPEND}
+"
+# tests:
+# - dev-python/lit provides the test runner
+# - llvm-core/llvm provide test utils (e.g. FileCheck)
+# - llvm-core/clang provides the compiler to run tests
+BDEPEND="
+       dev-lang/perl
+       virtual/pkgconfig
+       clang? ( llvm-core/clang )
+       llvm_targets_AMDGPU? ( llvm-core/clang[llvm_targets_AMDGPU] )
+       llvm_targets_NVPTX? ( llvm-core/clang[llvm_targets_NVPTX] )
+       test? (
+               $(python_gen_any_dep '
+                       dev-python/lit[${PYTHON_USEDEP}]
+               ')
+               llvm-core/clang
+       )
+"
+
+LLVM_COMPONENTS=( runtimes offload cmake libc llvm/{cmake,utils/llvm-lit} )
+LLVM_TEST_COMPONENTS=( openmp/cmake )
+llvm.org_set_globals
+
+pkg_pretend() {
+       if [[ ${LLVM_ALLOW_GPU_TESTING} ]]; then
+               ewarn "LLVM_ALLOW_GPU_TESTING set.  This package will run tests 
against your"
+               ewarn "GPU if it is supported.  Note that these tests may be 
flaky, fail or"
+               ewarn "hang, or even cause your GPU to crash (requiring a 
reboot)."
+       fi
+}
+
+python_check_deps() {
+       python_has_version "dev-python/lit[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+       if use test; then
+               python-any-r1_pkg_setup
+       fi
+}
+
+src_configure() {
+       if use clang && ! is_crosspkg; then
+               # Only do this conditionally to allow overriding with
+               # e.g. CC=clang-13 in case of breakage
+               if ! tc-is-clang ; then
+                       local -x CC=${CHOST}-clang
+                       local -x CXX=${CHOST}-clang++
+               fi
+
+               strip-unsupported-flags
+       fi
+
+       # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
+       use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
+
+       local libdir="$(get_libdir)"
+       local ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi)
+       local ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi)
+       local plugins="host"
+
+       if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then
+               if use llvm_targets_AMDGPU; then
+                       plugins+=";amdgpu"
+               fi
+               if use llvm_targets_NVPTX; then
+                       plugins+=";cuda"
+               fi
+       fi
+
+       local mycmakeargs=(
+               -DLLVM_ENABLE_RUNTIMES=offload
+               -DOPENMP_STANDALONE_BUILD=ON
+               -DOFFLOAD_LIBDIR_SUFFIX="${libdir#lib}"
+               -DLLVM_ROOT="${ESYSROOT}/usr/lib/llvm/${LLVM_MAJOR}"
+
+               -DOFFLOAD_INCLUDE_TESTS=$(usex test)
+               -DLIBOMPTARGET_PLUGINS_TO_BUILD="${plugins}"
+               -DLIBOMPTARGET_OMPT_SUPPORT="$(usex ompt)"
+
+               # this breaks building static target libs
+               -DBUILD_SHARED_LIBS=OFF
+       )
+
+       [[ ! ${LLVM_ALLOW_GPU_TESTING} ]] && mycmakeargs+=(
+               # prevent trying to access the GPU
+               -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND
+               -DLIBOMPTARGET_NVPTX_ARCH=LIBOMPTARGET_NVPTX_ARCH-NOTFOUND
+       )
+       use test && mycmakeargs+=(
+               # this project does not use standard LLVM cmake macros
+               -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
+               -DOPENMP_LIT_ARGS="$(get_lit_flags)"
+
+               -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")"
+               -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")"
+               # requires flang
+               -DOPENMP_TEST_Fortran_COMPILER=
+       )
+
+       cmake_src_configure
+}
+
+src_test() {
+       # respect TMPDIR!
+       local -x LIT_PRESERVES_TMP=1
+
+       cmake_build check-offload check-offload-unit
+}

Reply via email to