diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-29 03:04:32 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-29 03:04:32 -0500 |
| commit | 1c2bb144efdfa7abb1e6ff9c0dc1f10c01eb43d1 (patch) | |
| tree | 977e8a4ceec4c6469193a34c8bd0f3cbb26f3878 /llvm-runtimes/openmp | |
| parent | d078a6bb97ca56a274a131a62e0cfe7d85c4452d (diff) | |
| download | baldeagleos-repo-1c2bb144efdfa7abb1e6ff9c0dc1f10c01eb43d1.tar.gz baldeagleos-repo-1c2bb144efdfa7abb1e6ff9c0dc1f10c01eb43d1.tar.xz baldeagleos-repo-1c2bb144efdfa7abb1e6ff9c0dc1f10c01eb43d1.zip | |
Adding metadata
Diffstat (limited to 'llvm-runtimes/openmp')
| -rw-r--r-- | llvm-runtimes/openmp/Manifest | 1 | ||||
| -rw-r--r-- | llvm-runtimes/openmp/openmp-23.0.0_pre20260628.ebuild | 177 |
2 files changed, 178 insertions, 0 deletions
diff --git a/llvm-runtimes/openmp/Manifest b/llvm-runtimes/openmp/Manifest index 259ce7d7850c..94dc93200034 100644 --- a/llvm-runtimes/openmp/Manifest +++ b/llvm-runtimes/openmp/Manifest @@ -12,4 +12,5 @@ DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e9815261 DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c DIST llvm-project-22.1.8.src.tar.xz 167061596 BLAKE2B 092204f62e0f0364a041c737eb2c25fd073cb5689663d6ccd5a9e4e1743d6d80822360d59b64bff7b4d7872a68a79e899bf2f75f384e55c7d313a79243576f03 SHA512 2615b20ba08534f83ab8ecc7b5ba43b5f1dfcf9cdb2534a32fcdbf0ccdd9a008b46276e45ef26ed9377f65b5e4ae89ea798f3863fd034484b5715140f3a7b35c DIST llvm-project-22.1.8.src.tar.xz.sig 119 BLAKE2B 2ce93472036e68782252991e4a8bdbeeec8706a56022220083a38a42ef18714a7894c41aaa04dc0d03f18601d8bfc1a5a030ed0ef0f0d64a662eae9843a4b362 SHA512 99a457b5b1fb409a5fe72b59ebd4ddae5cade3e5f2493e33b44d4f4b4625f7a1743f80106efb1134668842b15ea3400ce2c29263bec8ff986e05040910125e15 +DIST llvm-project-49de424f45389cb757c3cc8c50daf38d024e2314.tar.gz 275619907 BLAKE2B de59729b44763de1fba07280d09059f3cb716aa1a8de51b8d8fd6e385378facdf5357845ed9f372f4e613fb8d098b75933c0eff290a42a4803a24ba2afe01a86 SHA512 8ea319751d4bbae866deb77710487f492c3f73f5fd853dc1a3373239e17916f2cbead3042b64d72731db6dd83c43b9827f2f671034f48491e3ce86e8863ce195 DIST llvm-project-6d4cd34d861baec5a761d15b81395fbe88f4391b.tar.gz 273781215 BLAKE2B 9ca9896ac0cfcb9449bd0975e16aca725e14ce5a4c3afd859799ef056a0e1341d63fa21b9bfd3ec1bee2a8482c5cecdd59482d373db72f083d399748a2396e15 SHA512 407e7d2ae1df19bf6095a953a1506583de91e203c4d0461b85a87f86d2069f2b23114b65c5c7f0065d9fbbf8d657bec6ef489ba9310b89f0bddab22c86cccb04 diff --git a/llvm-runtimes/openmp/openmp-23.0.0_pre20260628.ebuild b/llvm-runtimes/openmp/openmp-23.0.0_pre20260628.ebuild new file mode 100644 index 000000000000..bb4e8003711b --- /dev/null +++ b/llvm-runtimes/openmp/openmp-23.0.0_pre20260628.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit cmake-multilib crossdev flag-o-matic llvm.org python-single-r1 +inherit toolchain-funcs + +DESCRIPTION="OpenMP runtime libraries for LLVM/clang compiler" +HOMEPAGE="https://openmp.llvm.org" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0/${LLVM_SOABI}" +IUSE=" + +clang +debug gdb-plugin hwloc offload ompt test + cuda level-zero rocm +" +REQUIRED_USE=" + gdb-plugin? ( ${PYTHON_REQUIRED_USE} ) +" +RESTRICT="!test? ( test )" + +DEPEND=" + hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] ) + offload? ( + dev-libs/libffi:= + ~llvm-core/llvm-${PV} + level-zero? ( dev-libs/level-zero:= ) + rocm? ( dev-libs/rocr-runtime:= ) + ) +" +# 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 +RDEPEND=" + ${DEPEND} + gdb-plugin? ( ${PYTHON_DEPS} ) + offload? ( + !llvm-runtimes/offload + cuda? ( ~llvm-runtimes/openmp-nvptx64-nvidia-cuda-${PV} ) + level-zero? ( ~llvm-runtimes/openmp-spirv64-intel-${PV} ) + rocm? ( ~llvm-runtimes/openmp-amdgcn-amd-amdhsa-${PV} ) + ) +" +BDEPEND=" + dev-lang/perl + clang? ( llvm-core/clang ) + gdb-plugin? ( ${PYTHON_DEPS} ) + offload? ( + virtual/pkgconfig + ) + test? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep ' + dev-python/lit[${PYTHON_USEDEP}] + ') + llvm-core/clang:${LLVM_MAJOR} + llvm-core/llvm:${LLVM_MAJOR} + ) +" + +LLVM_COMPONENTS=( + runtimes openmp offload cmake libc llvm/{cmake,include,utils} + third-party/unittest +) +llvm.org_set_globals + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/offload/OffloadPrint.hpp + /usr/include/offload/OffloadAPI.h +) + +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 +} + +pkg_setup() { + if use gdb-plugin || use test; then + python-single-r1_pkg_setup + fi +} + +multilib_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 + + # LTO causes issues in other packages building, #870127 + filter-lto + + # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844 + use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG" + + local libdir="$(get_libdir)" + local mycmakeargs=( + -DLLVM_ENABLE_RUNTIMES=openmp + -DLLVM_LIBDIR_SUFFIX="${libdir#lib}" + -DLLVM_BINARY_DIR="${BROOT}/usr/lib/llvm/${LLVM_MAJOR}" + + -DLIBOMP_USE_HWLOC=$(usex hwloc) + -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin) + -DLIBOMP_OMPT_SUPPORT=$(usex ompt) + + # do not install libgomp.so & libiomp5.so aliases + -DLIBOMP_INSTALL_ALIASES=OFF + # disable unnecessary hack copying stuff back to srcdir + -DLIBOMP_COPY_EXPORTS=OFF + # this breaks building static target libs + -DBUILD_SHARED_LIBS=OFF + ) + + if multilib_is_native_abi && use offload; then + 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 rocm; then + plugins+=";amdgpu" + fi + if use cuda; then + plugins+=";cuda" + fi + if use level-zero; then + plugins+=";level_zero" + fi + fi + + mycmakeargs+=( + -DLLVM_ENABLE_RUNTIMES="openmp;offload" + -DOFFLOAD_INCLUDE_TESTS=$(usex test) + -DLIBOMPTARGET_PLUGINS_TO_BUILD="${plugins}" + -DLIBOMPTARGET_OMPT_SUPPORT="$(usex ompt)" + ) + + [[ ! ${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 + -DLIBOMPTARGET_OFFLOAD_ARCH=LIBOMPTARGET_OFFLOAD_ARCH-NOTFOUND + ) + fi + + use test && mycmakeargs+=( + -DLLVM_LIT_ARGS="$(get_lit_flags)" + -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang-${LLVM_MAJOR}")" + -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++-${LLVM_MAJOR}")" + # disable Fortran tests for now + # (TODO: enable where we have flang keyworded) + -DOPENMP_TEST_Fortran_COMPILER= + ) + cmake_src_configure +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + local targets=( check-openmp ) + if multilib_is_native_abi && use offload; then + targets+=( check-offload check-offload-unit ) + fi + + cmake_build "${targets[@]}" +} |
