diff options
Diffstat (limited to 'sys-libs/libomp')
-rw-r--r-- | sys-libs/libomp/Manifest | 2 | ||||
-rw-r--r-- | sys-libs/libomp/libomp-11.0.1_rc2.ebuild | 105 |
2 files changed, 107 insertions, 0 deletions
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest index dc006eb6c59c..66743a4828b3 100644 --- a/sys-libs/libomp/Manifest +++ b/sys-libs/libomp/Manifest @@ -1,11 +1,13 @@ DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151 DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2 DIST llvmorg-11.0.1-rc1.tar.gz 122777435 BLAKE2B 23b520d33cf4b641027ee52bb10c6171d60356c9167d5b94012929e6e547c526cda1a6177c295ed19592dfb83b020f63b2cef4cabc70ce9a2a8e098fe654a3cd SHA512 605c7bbff1610f335be8ea4f1204df797fed21185a54c77565f6ff2d00794d1967e9c5fab7c87633e242f2f999bdffb76da83f756d261c1ca476114599409ae1 +DIST llvmorg-11.0.1-rc2.tar.gz 122793330 BLAKE2B 5d42f7bd7ba253ac3ca08cf9901c79db5b51b86f0f66c8e63f4f9808ca5fb72cacccfad098b4f6701a34b0d77bdd66fe3839a3962a251eae53776240a2e13b06 SHA512 acda5a5be38cc8aae730c34cd1bb8f29a82e2ed3dd9734ca293ff092d5b30c8c255ab3054245b8f6ed541d5dbf8bc674b744bb2f81788db8826f69a204dda0c3 DIST llvmorg-9.0.1.tar.gz 113193320 BLAKE2B b86e405f2b8e00436045fd409fe19cdde75c797b1192c62a22b5ec75e6b4dc8e874a0f33008dc31562445e4cbe53a992b6f48c684255a6a1ef261e595b8b161f SHA512 fa88beeaae94b6d0cd9b5ba38658d0ffed8004035d7d8a4f95c3d31a709b88b581ae9bd7761333c8e5375c44b8f6be01768b5a3be901163159d7e6c43b71da59 EBUILD libomp-10.0.1.ebuild 2893 BLAKE2B e91e074bfa0d1584d40d997a1661507f404d6a6e4593e6da2a6825a1f8260ff02c4daebe4b9183d6ea025aa5c3be6986f3f7a920f578ad16d993ea10db272943 SHA512 558940389a55b5ea0e6e4c5b0fb48a8eaad5c00e26c1af90d5619106711b78341a532c59535f01ba5eedf99902af4494838b6edf5a0ade8693524d662d55053a EBUILD libomp-11.0.0.ebuild 2900 BLAKE2B 7aeeb7dd0598c9834437176843cd11f43c3e77c73b1638c15ce2d00cfbf44a2af939a5f1a24759c7f8f118ff13e17d26769263eac84ef4b7ea2ce9e560ffd443 SHA512 95d4c487ae19ce18d8f8efb22c71a85c38cbfed7dcdbf7d9a2bae8633ae066cef6dd4a64e8ad80a3684590ffbaf3451577e11ad40b7ab6a10a29cb0f71917c66 EBUILD libomp-11.0.1.9999.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d EBUILD libomp-11.0.1_rc1.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d +EBUILD libomp-11.0.1_rc2.ebuild 2845 BLAKE2B 13c2ef4577d1dcd14f11d5100797a5bc936d9f02c0ca9814c63e4fd8b9e8c274404c8d672ededfd4b304c1c864a33c39d7b1c9f2b1c7c98c70008f809dbb3f19 SHA512 1552854a04dfc15e518a2b8234e64f1d6679638681023d4fd5690ca6577eec4f84b4ab64f3f211c20c9167be354549e2ab96fa2051dc40e66f1689caeea2d58d EBUILD libomp-12.0.0.9999.ebuild 2858 BLAKE2B 5b23d8c8e540decfa950bd795e0b3ec956307e9bbcd8aa67e9e7e574a0a0990987d8ad0bf2e7543bea128a052212f36bdc25d7d086a85092b1dade3ef1017f22 SHA512 f823e550a414fa30b23c2ac1ef1a53090bb0d547ae4ebbcecf227936e6f46d8dbdf23cc42b87cdbd009e5feddbad17a24b3bec065043a1460812258b74d89e66 EBUILD libomp-9.0.1.ebuild 3011 BLAKE2B 33ccc441765ab33b61c9739e999039b24437c6f79b89a4db5ee1575b072fd3af609d5c8c583331db81b0b5a24a2a85cc359b4df312330b5732a24c7a8ebe3021 SHA512 404f3df2df27e031b59c4f827b13b2d9ce2b6af4126abdd1d6a233cfe0ec26ede61d01ddf6ca3434b6698ac6407ce8b4a845070b875f92eff4d961280c95ed5a MISC metadata.xml 825 BLAKE2B 07802144018f2f74b0927b53a346f99cbc7e36dbf501bb8dfc786f8d549c10eb688afafb1759f13d4d56d10f1bcae67dfa86cc2047cc39a9655a09a22e9a4260 SHA512 de43d5be94a5ea1cdfd3ae747d55b50d5d6ee577743f55d006d585d2d5acd5b3100845486ac415685f07361cd9985bae9347fff9c65417d198c49a61b4f6ba5e diff --git a/sys-libs/libomp/libomp-11.0.1_rc2.ebuild b/sys-libs/libomp/libomp-11.0.1_rc2.ebuild new file mode 100644 index 000000000000..f715bdea5353 --- /dev/null +++ b/sys-libs/libomp/libomp-11.0.1_rc2.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{6..9} ) +inherit cmake-multilib linux-info llvm.org python-any-r1 + +DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" +HOMEPAGE="https://openmp.llvm.org" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" +SLOT="0" +KEYWORDS="" +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}] + dev-libs/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}" +BDEPEND="dev-lang/perl + offload? ( virtual/pkgconfig ) + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + >=sys-devel/clang-6 + )" + +LLVM_COMPONENTS=( openmp ) +llvm.org_set_globals + +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="$(get_lit_flags)" + + -DOPENMP_TEST_C_COMPILER="$(type -P "${CHOST}-clang")" + -DOPENMP_TEST_CXX_COMPILER="$(type -P "${CHOST}-clang++")" + ) + cmake_src_configure +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake_build check-libomp +} |