diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2019-03-19 11:37:34 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2019-03-19 11:37:34 +0000 |
commit | b7b97785ebbb2f11d24d14dab8b81ed274f4ce6a (patch) | |
tree | 9fd110f9fc996e8a4213eeda994a8c112491b86d /sys-libs/libomp | |
parent | 066d27181e9a797ad9f8fc43b49fc9a10ff2f707 (diff) |
gentoo resync : 19.03.2019
Diffstat (limited to 'sys-libs/libomp')
-rw-r--r-- | sys-libs/libomp/Manifest | 11 | ||||
-rw-r--r-- | sys-libs/libomp/files/4.0.1/0001-test-Try-to-link-latomic-to-provide-atomics-when-ava.patch | 94 | ||||
-rw-r--r-- | sys-libs/libomp/libomp-4.0.1.ebuild | 97 | ||||
-rw-r--r-- | sys-libs/libomp/libomp-5.0.2.ebuild | 90 | ||||
-rw-r--r-- | sys-libs/libomp/libomp-8.0.0_rc3.ebuild | 115 | ||||
-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 |