summaryrefslogtreecommitdiff
path: root/sys-libs/libomp
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-03-19 11:37:34 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-03-19 11:37:34 +0000
commitb7b97785ebbb2f11d24d14dab8b81ed274f4ce6a (patch)
tree9fd110f9fc996e8a4213eeda994a8c112491b86d /sys-libs/libomp
parent066d27181e9a797ad9f8fc43b49fc9a10ff2f707 (diff)
gentoo resync : 19.03.2019
Diffstat (limited to 'sys-libs/libomp')
-rw-r--r--sys-libs/libomp/Manifest11
-rw-r--r--sys-libs/libomp/files/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch94
-rw-r--r--sys-libs/libomp/libomp-4.0.1.ebuild97
-rw-r--r--sys-libs/libomp/libomp-5.0.2.ebuild90
-rw-r--r--sys-libs/libomp/libomp-8.0.0_rc3.ebuild115
-rw-r--r--sys-libs/libomp/libomp-8.0.0_rc5.ebuild (renamed from sys-libs/libomp/libomp-8.0.0_rc2.ebuild)0
6 files changed, 2 insertions, 405 deletions
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index 65c7b7243aa2..4844f7995304 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -1,17 +1,10 @@
-AUX 4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch 3456 BLAKE2B f8a1de1e63d80f8617c64a52caaae0730e11ba3559dd0cefcd12105be366c88f68c1076f78d2af0c5962eff30de0e9be8115be2c6fc29e7ed98de5176c82c777 SHA512 677d6d7e316d6df028ebed606cde1a4225ed6e06bacbe81cd527acf57c705858ab5aed2f71946c2404336033bfa985dafee2d56423204a59954a80424ca856e0
-DIST openmp-4.0.1.src.tar.xz 2275240 BLAKE2B e63cf670c4cd2678afc4d7b96be85c3d157bf91a69510f980d9a0a07f61b449b22ff28d63753f32e63afedb4a7077c662a633f689a660b5047a83bcf1fb7f009 SHA512 0b737dde832c5907a0cac41fe1d594b61e85dd405eee42b39f09233db62b44543204ccc775e52e2981f9c9f0683b234526e288a3a7a04f712280fb3a575abcaf
-DIST openmp-5.0.2.src.tar.xz 2081560 BLAKE2B fbe41c6aaf4c8e961253609a598bec531ab4685cd8c307ab2528b9d7553eaa38122ee02a2c4d481454f9233c062b3a24bb174a182702a183907a3d15a10a9655 SHA512 511895ca6049c17de81ad86c39dcb940a7c1a793005e16d33e58d72ad47f62b8cb61003c234a7544a88e79f25d2c86e9df834f90d37ccbd4b47f71c369e90437
DIST openmp-6.0.1.src.tar.xz 2048320 BLAKE2B 08b3a7051c985903f78331f55a1c6e928399b87c862c43c991e9bf78b66b6e412fc96f202b82c051176dbbe02422f8ceb7414f44ea8f3522f418e515c0f70c62 SHA512 abb956583e5d11d0c6f6d97183c081d658616a74933be884a591eaa3d8c4bb04f08f02016d2c86d7384c7ff1aa44fb949b0d967fc0ff50e3132aaba412e9add8
DIST openmp-7.0.1.src.tar.xz 909316 BLAKE2B b8adbf67738b8d2d2d42b45b24aabd2f5e65a7b9cdda0d4a62511808c2101d9bb925b4904a9ecb98f77a1b7f38f13408fea6f724748183f9d5f5419c3fdeac54 SHA512 2062db8b87bce2c130bab528a6d654cb05b3de7641737552fc263724ceaa5e322afc2787796a0bddcda8d1bdf913a49f5a0180abcc57f8842b7e8ea8df4d6f51
-DIST openmp-8.0.0rc2.src.tar.xz 934468 BLAKE2B e3496bc58a86282ac75417b98675f490c7a4c94038d5e79ef48b14ad4adcfcadc883caade3f9b8f6d189250cfb770a63984baca982e1295058f200494aaaf0f7 SHA512 56c73affd5533c40123464218d225a25f47fdf93fe3e1288f6c4ff6743ee745929ecc881334ded2aae193786366397a9add60aa6b3675631548980f80d9ac6c9
-DIST openmp-8.0.0rc3.src.tar.xz 934392 BLAKE2B 13829d48aacd56eb16cbe765445d53aba6561dbcf4a58ff18ad97354791dc212f3653946dfc62a59303c3b0b5e4fe4a774b3d7fc993d8368ca8ace2bd6a22dfb SHA512 a9f129417bf380497cabb9fd9d935fbb737a69e1e3cbc5c93f1037df5ef7e78e5da2a9d8fbdba8625727e9739050840daaaa61fe24ee58a2fc91fe53b69d7b93
-EBUILD libomp-4.0.1.ebuild 2527 BLAKE2B be262aa449e8d3c2392793b8af597c7d9a02e624f0d57ad8b24ef822bd57f6d243200ccee1022c18dcc52fc2d198d6aa2cfe83a1224f614ce0b2305f3f6bff69 SHA512 ca34a666e1aa6e767cd979866bcdcaf55da75dc8faa80d062e718ceda56576c3ebec88972787ae5dc4532bfdeb2d7f34f233b8c4983bfb1bc89bbd443ac54ac7
-EBUILD libomp-5.0.2.ebuild 2392 BLAKE2B 18b10357f48653d53a6a2ff6a8af75721a0fe774646365d730eae0afef6cb277218e79e26a6316ca2d5ff7a604941b46e3f1dd51c1924d69d3eb899356000749 SHA512 254569aaa7d2cd3952b9d9ace4303608a7fd73d174cccc4b69b8be80563b37792cc93273543fb4ca4732fa8f89772c4ce432e0769f42961bdb28f9d51d301481
+DIST openmp-8.0.0rc5.src.tar.xz 934496 BLAKE2B 058c69a972c6296d941f9a0d9e3d69eb8020fccb8985dedc0f6f5020b55cd2f239a2e0f66157870b46adb20be08fa6350d1aea2261523a70b6a9a3704bcbabed SHA512 818daa70fc638879ae00dda783bef69e9b39f3ca6d57bc233b4a5a0478e96ddf311d99ff3d254a81a26a6b75eca56accb6f7d30e4911bcd1cd259fab1dad80b4
EBUILD libomp-6.0.1-r1.ebuild 3261 BLAKE2B dc43e11cbd716285018a3857b33378715338350269cbfee3292c44ebb0d10584ea1f505962c34fc9c5a58771d6abb52f444467e79834e9a04d594c914af46a2f SHA512 eb901f8810fa552cad6d6510f54f30824a1d7f7931ccc1cf6bb02a2ed22a9e9af3d924bfbc09921510d2972ac4ca36fb1df4d6b7d52342a346fb8b5cfa0ac436
EBUILD libomp-7.0.1-r1.ebuild 3266 BLAKE2B 681ff89caa0f7997fa4feb86abf40c426d57f3b912e07547f97629af7b0780eb82e5e1a05cb1ce833b4532c40ed4f9dad85109853a82ee26ae85e91e8988ec99 SHA512 f551fb44e415ead648924a82bd95827c2a9210a4750001d52d6359b1ea1c8ffe387b5cecb1ace507c4919ca61de5e537ee5014c8f478eff858797613cbb8823f
EBUILD libomp-7.0.9999.ebuild 3234 BLAKE2B f5fb4323e9f8e137c22d792ac2659a3a9aced9ec7b0c6a598d33b7d7f0e96a2820e933a5856f5f95b5dc8da8d8e10b4d9143da732249527ae3af27246a320149 SHA512 9ff37762fe7c5708220ded27c9cab89c92c7451e7019dfc8aa85e5f977ee26b5b67902eee5b79e9da820506aee2f710d518cd73c99a1e7e42ff487f30fc86c76
-EBUILD libomp-8.0.0_rc2.ebuild 3269 BLAKE2B 6288173c9893e25d12717a407c745d867bcf8e25b5d3d257155308b4be2a8b0b7e32a698603f6b4947ddc36699591bc32b5dcc2af099ff3a8956bf4f4bdf34aa SHA512 f8404d84a7ebdeac5094c2f72807bb3cc9c59ed3ce6875199a85546a7931716d6ab9e6ae2dbf04b0ac8b92da36577fd16ce2863b78ecdc29e631023f57572f2c
-EBUILD libomp-8.0.0_rc3.ebuild 3269 BLAKE2B 6288173c9893e25d12717a407c745d867bcf8e25b5d3d257155308b4be2a8b0b7e32a698603f6b4947ddc36699591bc32b5dcc2af099ff3a8956bf4f4bdf34aa SHA512 f8404d84a7ebdeac5094c2f72807bb3cc9c59ed3ce6875199a85546a7931716d6ab9e6ae2dbf04b0ac8b92da36577fd16ce2863b78ecdc29e631023f57572f2c
+EBUILD libomp-8.0.0_rc5.ebuild 3269 BLAKE2B 6288173c9893e25d12717a407c745d867bcf8e25b5d3d257155308b4be2a8b0b7e32a698603f6b4947ddc36699591bc32b5dcc2af099ff3a8956bf4f4bdf34aa SHA512 f8404d84a7ebdeac5094c2f72807bb3cc9c59ed3ce6875199a85546a7931716d6ab9e6ae2dbf04b0ac8b92da36577fd16ce2863b78ecdc29e631023f57572f2c
EBUILD libomp-8.0.9999.ebuild 3231 BLAKE2B a859927c6a87bcba74998bbaf785965b2cbd269fa27a7cca32bb6abb0114151a02643321ce4bea7480020e115c94344c1e2552eb2d3ec50756b2b2e8c225ae08 SHA512 ce6d9b9552894b4e639f2f065dc22741d13faf0f4426fca1d7fe74a13702a677adf8795f4e3da059b8bb703bd1d8114f6b60245a20928d83f4332102c144f8c9
EBUILD libomp-9999.ebuild 3209 BLAKE2B 6543c8c95b56a73aef5196ec81cc9662caa1d0ba0cafa72f4f99905522427c829d3c7d2c9b329e927543a48c01dab160444409324f9d4d689548e10346b2c52e SHA512 96f0583a74d08e58dac970c5b4f836208be2e92b42685b967bd7c4ebb65368f9406585d69d295db1a1b1952fdd3acdcb0a7a595fe25795e9cfee01055c72e705
MISC metadata.xml 825 BLAKE2B 07802144018f2f74b0927b53a346f99cbc7e36dbf501bb8dfc786f8d549c10eb688afafb1759f13d4d56d10f1bcae67dfa86cc2047cc39a9655a09a22e9a4260 SHA512 de43d5be94a5ea1cdfd3ae747d55b50d5d6ee577743f55d006d585d2d5acd5b3100845486ac415685f07361cd9985bae9347fff9c65417d198c49a61b4f6ba5e
diff --git a/sys-libs/libomp/files/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch b/sys-libs/libomp/files/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch
deleted file mode 100644
index 688175583269..000000000000
--- a/sys-libs/libomp/files/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From 7bd70635240f69fcd4da4d98a4aca8aaa779dd11 Mon Sep 17 00:00:00 2001
-From: Michal Gorny <mgorny@gentoo.org>
-Date: Fri, 24 Feb 2017 22:15:24 +0000
-Subject: [PATCH] [test] Try to link -latomic to provide atomics when available
-
-When using -rtlib=libgcc, the fallback implementation of __atomic_*
-builtins is provided via libatomic (included in GCC). However, neither
-GCC itself nor clang link libatomic implicitly, and it seems that GCC
-upstream expects projects to link it explicitly as necessary.
-
-Since compiler-rt provides __atomic_* builtins directly in the main
-library, check if they are provided by the default libraries first.
-If they are not, check if -latomic is available to provide them
-and add explicit -latomic for tests in this case.
-
-This fixes unresolved __atomic_load() references when running openmp
-tests on i386 with libgcc backend.
-
-Differential Revision: https://reviews.llvm.org/D30083
-
-git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@296183 91177308-0d34-0410-b5e6-96231b3b80d8
----
- runtime/test/CMakeLists.txt | 13 +++++++++++++
- runtime/test/lit.cfg | 2 ++
- runtime/test/lit.site.cfg.in | 2 +-
- 3 files changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/runtime/test/CMakeLists.txt b/runtime/test/CMakeLists.txt
-index 8162855..88c02c8 100644
---- a/runtime/test/CMakeLists.txt
-+++ b/runtime/test/CMakeLists.txt
-@@ -1,6 +1,7 @@
- # CMakeLists.txt file for unit testing OpenMP Library
- include(FindPythonInterp)
- include(CheckTypeSize)
-+include(CheckFunctionExists)
- include(CheckLibraryExists)
-
- if(NOT PYTHONINTERP_FOUND)
-@@ -11,6 +12,17 @@ endif()
-
- # Some tests use math functions
- check_library_exists(m sqrt "" LIBOMP_HAVE_LIBM)
-+# When using libgcc, -latomic may be needed for atomics
-+# (but when using compiler-rt, the atomics will be built-in)
-+# Note: we can not check for __atomic_load because clang treats it
-+# as special built-in and that breaks CMake checks
-+check_function_exists(__atomic_load_1 LIBOMP_HAVE_BUILTIN_ATOMIC)
-+if(NOT LIBOMP_HAVE_BUILTIN_ATOMIC)
-+ check_library_exists(atomic __atomic_load_1 "" LIBOMP_HAVE_LIBATOMIC)
-+else()
-+ # not needed
-+ set(LIBOMP_HAVE_LIBATOMIC 0)
-+endif()
-
- macro(pythonize_bool var)
- if (${var})
-@@ -25,6 +37,7 @@ pythonize_bool(LIBOMP_OMPT_SUPPORT)
- pythonize_bool(LIBOMP_OMPT_BLAME)
- pythonize_bool(LIBOMP_OMPT_TRACE)
- pythonize_bool(LIBOMP_HAVE_LIBM)
-+pythonize_bool(LIBOMP_HAVE_LIBATOMIC)
-
- set(LIBOMP_TEST_CFLAGS "" CACHE STRING
- "Extra compiler flags to send to the test compiler")
-diff --git a/runtime/test/lit.cfg b/runtime/test/lit.cfg
-index 7f18da4..bef61d4 100644
---- a/runtime/test/lit.cfg
-+++ b/runtime/test/lit.cfg
-@@ -52,6 +52,8 @@ config.test_cflags = config.test_openmp_flag + \
- libs = ""
- if config.has_libm:
- libs += " -lm"
-+if config.has_libatomic:
-+ libs += " -latomic"
-
- # Allow XFAIL to work
- config.target_triple = [ ]
-diff --git a/runtime/test/lit.site.cfg.in b/runtime/test/lit.site.cfg.in
-index 448132e..b0d57ce 100644
---- a/runtime/test/lit.site.cfg.in
-+++ b/runtime/test/lit.site.cfg.in
-@@ -12,7 +12,7 @@ config.hwloc_library_dir = "@LIBOMP_HWLOC_LIBRARY_DIR@"
- config.using_hwloc = @LIBOMP_USE_HWLOC@
- config.has_ompt = @LIBOMP_OMPT_SUPPORT@ and @LIBOMP_OMPT_BLAME@ and @LIBOMP_OMPT_TRACE@
- config.has_libm = @LIBOMP_HAVE_LIBM@
-+config.has_libatomic = @LIBOMP_HAVE_LIBATOMIC@
-
- # Let the main config do the real work.
- lit_config.load_config(config, "@LIBOMP_BASE_DIR@/test/lit.cfg")
--
---
-2.12.0
-
diff --git a/sys-libs/libomp/libomp-4.0.1.ebuild b/sys-libs/libomp/libomp-4.0.1.ebuild
deleted file mode 100644
index 7b78f15ca8dd..000000000000
--- a/sys-libs/libomp/libomp-4.0.1.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-multilib linux-info python-any-r1
-
-DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
-HOMEPAGE="https://openmp.llvm.org"
-SRC_URI="https://releases.llvm.org/${PV/_//}/openmp-${PV/_/}.src.tar.xz"
-
-# Additional licenses:
-# - MIT-licensed Intel code,
-# - LLVM Software Grant from Intel.
-
-LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 x86"
-IUSE="hwloc kernel_linux ompt test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] )"
-# tests:
-# - dev-python/lit provides the test runner
-# - sys-devel/llvm provide test utils (e.g. FileCheck)
-# - sys-devel/clang provides the compiler to run tests
-DEPEND="${RDEPEND}
- dev-lang/perl
- test? (
- $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- sys-devel/llvm
- >=sys-devel/clang-3.9.0
- )"
-
-S=${WORKDIR}/openmp-${PV/_/}.src
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-python_check_deps() {
- has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-kernel_pds_check() {
- if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then
- local CONFIG_CHECK="~!SCHED_PDS"
- local ERROR_SCHED_PDS="\
-PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11
-< 4.14-pf9) do not implement sched_yield() call which may result in horrible
-performance problems with libomp. If you are using one of the specified
-kernel versions, you may want to disable the PDS scheduler."
-
- check_extra_config
- fi
-}
-
-pkg_pretend() {
- kernel_pds_check
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # fix atomic tests with gcc
- eapply "${FILESDIR}"/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch
-
- cmake-utils_src_prepare
-}
-
-multilib_src_configure() {
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DLIBOMP_LIBDIR_SUFFIX="${libdir#lib}"
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -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
- -DLIBOMP_TEST_COMPILER="$(type -P "${CHOST}-clang")"
- )
- cmake-utils_src_configure
-}
-
-multilib_src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake-utils_src_make check-libomp
-}
diff --git a/sys-libs/libomp/libomp-5.0.2.ebuild b/sys-libs/libomp/libomp-5.0.2.ebuild
deleted file mode 100644
index 38e97e4bf437..000000000000
--- a/sys-libs/libomp/libomp-5.0.2.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-multilib linux-info python-any-r1
-
-DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
-HOMEPAGE="https://openmp.llvm.org"
-SRC_URI="https://releases.llvm.org/${PV/_//}/openmp-${PV/_/}.src.tar.xz"
-
-# Additional licenses:
-# - MIT-licensed Intel code,
-# - LLVM Software Grant from Intel.
-
-LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant"
-SLOT="0"
-KEYWORDS="amd64 ~arm64 ~ppc64 x86 ~amd64-linux ~x64-macos"
-IUSE="hwloc kernel_linux ompt test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] )"
-# tests:
-# - dev-python/lit provides the test runner
-# - sys-devel/llvm provide test utils (e.g. FileCheck)
-# - sys-devel/clang provides the compiler to run tests
-DEPEND="${RDEPEND}
- dev-lang/perl
- test? (
- $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- sys-devel/llvm
- >=sys-devel/clang-3.9.0
- )"
-
-S=${WORKDIR}/openmp-${PV/_/}.src
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-python_check_deps() {
- has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-kernel_pds_check() {
- if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then
- local CONFIG_CHECK="~!SCHED_PDS"
- local ERROR_SCHED_PDS="\
-PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11
-< 4.14-pf9) do not implement sched_yield() call which may result in horrible
-performance problems with libomp. If you are using one of the specified
-kernel versions, you may want to disable the PDS scheduler."
-
- check_extra_config
- fi
-}
-
-pkg_pretend() {
- kernel_pds_check
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DLIBOMP_LIBDIR_SUFFIX="${libdir#lib}"
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -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
- -DLIBOMP_TEST_COMPILER="$(type -P "${CHOST}-clang")"
- )
- cmake-utils_src_configure
-}
-
-multilib_src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake-utils_src_make check-libomp
-}
diff --git a/sys-libs/libomp/libomp-8.0.0_rc3.ebuild b/sys-libs/libomp/libomp-8.0.0_rc3.ebuild
deleted file mode 100644
index 11a034d619b5..000000000000
--- a/sys-libs/libomp/libomp-8.0.0_rc3.ebuild
+++ /dev/null
@@ -1,115 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-multilib linux-info multiprocessing python-any-r1
-
-DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
-HOMEPAGE="https://openmp.llvm.org"
-SRC_URI="https://prereleases.llvm.org/${PV/_//}/openmp-${PV/_/}.src.tar.xz"
-
-# Additional licenses:
-# - MIT-licensed Intel code,
-# - LLVM Software Grant from Intel.
-
-LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~x64-macos"
-IUSE="cuda hwloc kernel_linux offload ompt test"
-# CUDA works only with the x86_64 ABI
-REQUIRED_USE="offload? ( cuda? ( abi_x86_64 ) )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- hwloc? ( sys-apps/hwloc:0=[${MULTILIB_USEDEP}] )
- offload? (
- virtual/libelf:=[${MULTILIB_USEDEP}]
- virtual/libffi:=[${MULTILIB_USEDEP}]
- cuda? ( dev-util/nvidia-cuda-toolkit:= )
- )"
-# tests:
-# - dev-python/lit provides the test runner
-# - sys-devel/llvm provide test utils (e.g. FileCheck)
-# - sys-devel/clang provides the compiler to run tests
-DEPEND="${RDEPEND}
- dev-lang/perl
- offload? ( virtual/pkgconfig[${MULTILIB_USEDEP}] )
- test? (
- $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- >=sys-devel/clang-6
- )"
-
-S=${WORKDIR}/openmp-${PV/_/}.src
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-python_check_deps() {
- has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-kernel_pds_check() {
- if use kernel_linux && kernel_is -lt 4 15 && kernel_is -ge 4 13; then
- local CONFIG_CHECK="~!SCHED_PDS"
- local ERROR_SCHED_PDS="\
-PDS scheduler versions >= 0.98c < 0.98i (e.g. used in kernels >= 4.13-pf11
-< 4.14-pf9) do not implement sched_yield() call which may result in horrible
-performance problems with libomp. If you are using one of the specified
-kernel versions, you may want to disable the PDS scheduler."
-
- check_extra_config
- fi
-}
-
-pkg_pretend() {
- kernel_pds_check
-}
-
-pkg_setup() {
- use test && python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
-
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
-
- -DOPENMP_ENABLE_LIBOMPTARGET=$(usex offload)
-
- # do not install libgomp.so & libiomp5.so aliases
- -DLIBOMP_INSTALL_ALIASES=OFF
- # disable unnecessary hack copying stuff back to srcdir
- -DLIBOMP_COPY_EXPORTS=OFF
- )
- use offload && mycmakeargs+=(
- # this is non-fatal and libomp checks for CUDA conditionally
- # to ABI, so we can just ignore passing the wrong value
- # on non-amd64 ABIs
- -DCMAKE_DISABLE_FIND_PACKAGE_CUDA=$(usex !cuda)
- )
- use test && mycmakeargs+=(
- # this project does not use standard LLVM cmake macros
- -DOPENMP_LLVM_LIT_EXECUTABLE="${EPREFIX}/usr/bin/lit"
- -DOPENMP_LIT_ARGS="-vv;-j;${LIT_JOBS:-$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")}"
-
- -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")"
- -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")"
- )
- cmake-utils_src_configure
-}
-
-multilib_src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
-
- cmake-utils_src_make check-libomp
-}
diff --git a/sys-libs/libomp/libomp-8.0.0_rc2.ebuild b/sys-libs/libomp/libomp-8.0.0_rc5.ebuild
index 11a034d619b5..11a034d619b5 100644
--- a/sys-libs/libomp/libomp-8.0.0_rc2.ebuild
+++ b/sys-libs/libomp/libomp-8.0.0_rc5.ebuild