summaryrefslogtreecommitdiff
path: root/sys-libs/libomp
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-03 21:12:43 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-03 21:12:43 +0000
commit924750a8c767b278c9870be5dcfedced436f1276 (patch)
treed5c93de95fb5c2fa090e76fd12c1535698005868 /sys-libs/libomp
parenta4d4c6a7cf31d8d3248101dbfd654cdc416902ac (diff)
gentoo auto-resync : 03:11:2022 - 21:12:43
Diffstat (limited to 'sys-libs/libomp')
-rw-r--r--sys-libs/libomp/Manifest3
-rw-r--r--sys-libs/libomp/libomp-15.0.4.ebuild131
2 files changed, 134 insertions, 0 deletions
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index 04eb44cefd8c..8b850b567092 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -5,12 +5,15 @@ DIST llvm-project-14.0.6.src.tar.xz.sig 566 BLAKE2B cb658ad43d8ab6c43a5773aedadf
DIST llvm-project-14f996dca8a2b5b17d6917528bfd9ee71ba6192a.tar.gz 169054148 BLAKE2B a23af6658a6ea8a7cb4272faef151937da229e39383ec068d7ef81e72a25d2a46dc2a86255a7f1148b7385b339d1c17e62f627df834d8eccc39be8921575f88d SHA512 e719d296016e7af718d022424c337a5df8d7124fdb49b9f219ab2a5dc592e6a59f6c09064775ea9349bcf4eed9d72214abb648de649ab872174c35635c945c04
DIST llvm-project-15.0.3.src.tar.xz 112069972 BLAKE2B 3d29bab890467ba87fedcc4e76522f444e63e3dfbe546793f8e67821bcd403bad460ea176254c9e0b72d60ea56b8480e498a7f610477c1108732d178804c26cd SHA512 d378d417f01c56534f301cfe6cb4958d811c04ae22acaacc917e7e5f0380859d40ce19dffb265d046b70fff95dbc2e759f492e4d5af0ade52f21ebaa8da65856
DIST llvm-project-15.0.3.src.tar.xz.sig 438 BLAKE2B e7e0614e144eb878f694c12e97cf42ff8476e47cb55e8f259eb2ec52e303463ad753771271512e89baf0137c1382b11cfa028c85324174ebcd054a124000f537 SHA512 41229bebdb0c2df9a5e3a4d6f02d39fac7dc91f21895a659523beab4fa3ef99ff06eff5e4386221369b6e2b6f8fe974d67b7d8496d5911ce484d09ae0db8b916
+DIST llvm-project-15.0.4.src.tar.xz 110936424 BLAKE2B a02b76ad161e352b4d3d84baffdada9c6a0e704de7a2c4017df4d4d05a9e9d02113791cd7d91c3edfa1f5bcb7ab95e1772d60f7061514928c6828600f41a8322 SHA512 9d5b664dd77c08130601636f9d6c006b257f369470ce823aa56d06698a9f0edfec42f2c90da934b9ad52c4d7960d9a024ea46dc9640275be6d191b1ba9869459
+DIST llvm-project-15.0.4.src.tar.xz.sig 566 BLAKE2B f1a7be65fcce932dc125ae2b498f68a14e68dad0d7a1e031343c52c5dafb7b123e346f3efa50a7693584361abf01efe9401b1b5781dee6b92dc1045e538e9b7b SHA512 35899ffbd13fc44cade54246a423450571cb4b62b8d706864daa3eef2377c48e24ef3113218e39e29de995b7f7fa307f9187552766576c9050fd924beb517f6e
DIST llvm-project-b34ea582774c057d9bf5591174d683fd3d8aa02b.tar.gz 169735900 BLAKE2B d3a82a07f855b038071fc8eb3f41a88b4c220a577219985ecddeb9a535ea8b159dbad575699997d90a49db74c074b5f4354ad707e91d6934daaa7319e0d8ee9b SHA512 3f5525c7d893bdac701cff4cf82dafc31608920d788d9b7401654f320b2432528cf4ae8ef013182807b3dc0c5b758c71f1efeedb672dd47fdb8aa6f434dfb583
DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f
EBUILD libomp-13.0.1.ebuild 3907 BLAKE2B 46ed471cb355b70f78b59faeffbcc5148d47a3b971818c831e7b155f4f0973238fdbfb5f2fa91913fef93e01beed45f42b1158af92e56cd8445c4a8157508bb7 SHA512 13f150c5223689e4d98e16cafa11e44164b177eb68d3df213582b85c5194e7f736143b49b2075f4178689efcfa8320e2b1faf34242c09dbfcda923b443d42741
EBUILD libomp-14.0.6-r1.ebuild 3917 BLAKE2B 23460d17ef5b7e107d8be1bd1c37028d69fda2e151e7d8f7f0c6d23dc00336f5a503a4e8e692b4203f3e4219fde6f96f9d30d4c7fed0348066f8c603636cc39b SHA512 aa9e9985a1941fe5c33b998d81bfdd838dbe965d5c82e20e366d2cf7a08db24feb2f3f7633740bea45a3685049d1593df6465b8c785b9a87c197402f559b26ca
EBUILD libomp-15.0.3.ebuild 3401 BLAKE2B 85ef1c7b12b1887ee4921847b701ac45a66ddef0c636e321db074ee802f325cd9dbd71d7eb3ea1b4ddcc6987a0a38468d52190c8d0a988ae36026670110d86ab SHA512 efa0492c98475343718680e4384b733bace746b1628a3f017786a5cf8e2b3a68837734fb9e3fd1eb0742f45fbd613236065c4c99e149a8d0e5931b66d2005b52
EBUILD libomp-15.0.4.9999.ebuild 3339 BLAKE2B 4fb077e0f5195f1c2fef3691aba3e8b674d340df9f3d1de8c9962a03267662bcf55a43af75db6e3ab5121de6c129c7f7514c127ec27c3b940cb2fbbf619788d4 SHA512 49aa1cb488a8e428892dd3b74a82462206e9c11e139b5b9b8e2edca496279c274f81ece0dcb9e71eea43c4e6f99ca4aacd5bdc48e4595743b7f98e7a1f7ae3d9
+EBUILD libomp-15.0.4.ebuild 3405 BLAKE2B e794e2ff98eb12991f899b50750624fa08f6b20dcde51e1be56f3f2c4a0a0e70fc157079fe14147334535b7f8388a704d6b4dd858e94be1368596bd2d333698a SHA512 a89c79b76a3ca6459c50d68949ef73d20e774b54e79dc49644512c58a757a7a5afbbd2ab003302662cf7598199748a4f55afbb3a9803dbf279c3fd82b1edccc8
EBUILD libomp-16.0.0.9999.ebuild 3444 BLAKE2B fb82f952dc3be9c2b651dc0d26552f1d5b89fbc3eeda67ed7a102a403a462d1e8c2d6d06d3fbf376fc17d4a0b5ada9dc1d1e60b468af5eeb61c597ec04c98dbe SHA512 3c5b094ac77e709b3c55e9fb4e005ec1725faa8be9abe48d1e4ac8eaa56920c5d143f61cc18997bf017c8abb0ac8121671b26dea311a5ac62eba3cd5983d57ae
EBUILD libomp-16.0.0_pre20221016.ebuild 3444 BLAKE2B fb82f952dc3be9c2b651dc0d26552f1d5b89fbc3eeda67ed7a102a403a462d1e8c2d6d06d3fbf376fc17d4a0b5ada9dc1d1e60b468af5eeb61c597ec04c98dbe SHA512 3c5b094ac77e709b3c55e9fb4e005ec1725faa8be9abe48d1e4ac8eaa56920c5d143f61cc18997bf017c8abb0ac8121671b26dea311a5ac62eba3cd5983d57ae
EBUILD libomp-16.0.0_pre20221023.ebuild 3444 BLAKE2B fb82f952dc3be9c2b651dc0d26552f1d5b89fbc3eeda67ed7a102a403a462d1e8c2d6d06d3fbf376fc17d4a0b5ada9dc1d1e60b468af5eeb61c597ec04c98dbe SHA512 3c5b094ac77e709b3c55e9fb4e005ec1725faa8be9abe48d1e4ac8eaa56920c5d143f61cc18997bf017c8abb0ac8121671b26dea311a5ac62eba3cd5983d57ae
diff --git a/sys-libs/libomp/libomp-15.0.4.ebuild b/sys-libs/libomp/libomp-15.0.4.ebuild
new file mode 100644
index 000000000000..b172775e1370
--- /dev/null
+++ b/sys-libs/libomp/libomp-15.0.4.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..11} )
+inherit flag-o-matic cmake-multilib linux-info llvm 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/${LLVM_SOABI}"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos"
+IUSE="
+ debug hwloc offload ompt test
+ llvm_targets_AMDGPU llvm_targets_NVPTX
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
+ offload? (
+ virtual/libelf:=[${MULTILIB_USEDEP}]
+ dev-libs/libffi:=[${MULTILIB_USEDEP}]
+ ~sys-devel/llvm-${PV}[${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}
+"
+BDEPEND="
+ dev-lang/perl
+ offload? (
+ llvm_targets_AMDGPU? ( sys-devel/clang )
+ llvm_targets_NVPTX? ( sys-devel/clang )
+ virtual/pkgconfig
+ )
+ test? (
+ $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
+ sys-devel/clang
+ )
+"
+
+LLVM_COMPONENTS=( openmp cmake llvm/include )
+llvm.org_set_globals
+
+python_check_deps() {
+ python_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 offload && LLVM_MAX_SLOT=${LLVM_MAJOR} llvm_pkg_setup
+ use test && python-any-r1_pkg_setup
+}
+
+multilib_src_configure() {
+ # 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=(
+ -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
+ )
+
+ if use offload; then
+ if has "${CHOST%%-*}" aarch64 powerpc64le x86_64; then
+ mycmakeargs+=(
+ -DLIBOMPTARGET_BUILD_AMDGPU_PLUGIN=$(usex llvm_targets_AMDGPU)
+ -DLIBOMPTARGET_BUILD_CUDA_PLUGIN=$(usex llvm_targets_NVPTX)
+ )
+ else
+ mycmakeargs+=(
+ -DLIBOMPTARGET_BUILD_AMDGPU_PLUGIN=OFF
+ -DLIBOMPTARGET_BUILD_CUDA_PLUGIN=OFF
+ )
+ fi
+ fi
+
+ 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++")"
+ )
+ addpredict /dev/nvidiactl
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # respect TMPDIR!
+ local -x LIT_PRESERVES_TMP=1
+
+ cmake_build check-libomp
+}