summaryrefslogtreecommitdiff
path: root/sys-libs/libomp
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-03-20 18:37:48 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-03-20 18:37:48 +0000
commita075e288474a3a53905a044068223546c5360298 (patch)
tree1c098c5d1bc3bc29ed1fd6df8a9a6d700df3f946 /sys-libs/libomp
parentbf091a83ac5cdd060495df0aef0aeab9066672a1 (diff)
gentoo auto-resync : 20:03:2023 - 18:37:48
Diffstat (limited to 'sys-libs/libomp')
-rw-r--r--sys-libs/libomp/Manifest8
-rw-r--r--sys-libs/libomp/libomp-16.0.0_rc3.ebuild149
-rw-r--r--sys-libs/libomp/libomp-16.0.0_rc4.ebuild149
-rw-r--r--sys-libs/libomp/libomp-17.0.0_pre20230304.ebuild149
4 files changed, 0 insertions, 455 deletions
diff --git a/sys-libs/libomp/Manifest b/sys-libs/libomp/Manifest
index afdd7aaed0e7..e42a20101f3f 100644
--- a/sys-libs/libomp/Manifest
+++ b/sys-libs/libomp/Manifest
@@ -6,19 +6,11 @@ DIST llvm-project-15.0.7.src.tar.xz 110936452 BLAKE2B f3d277e2029157329e5be78b78
DIST llvm-project-15.0.7.src.tar.xz.sig 566 BLAKE2B 47dc8c82d86237b80c6d85f83a6c9a6e9e174cf8e7f367b071e0cd9481d7cd408e991337c5624e07f3f370f26387c814f212808575ed1c1b58404d3e3836b7df SHA512 fc6891b440dd1175eb8df3790590af8d36bc92301660f84744ae15123475aeb900a151e6a8e7998ded27ec4d86871903ad0b89cd61164943054c2e3bc8d8beb2
DIST llvm-project-16.0.0.src.tar.xz 117933476 BLAKE2B fa09cd8f647ce0daf5a7eae9ac03b99594a9b3193b12065f43f9a6731875243f2f5b354136bcadcb31622b246054e94f880eec3dab0bcd6ae89973fa9dca845c SHA512 3f040abc1b03205693824aeff2ee6efb0cff25fe04bd5265141c093f294655a1f3fcda73cab9c57cbed7523c8f186a7e2484afce0792c55e90e3fb80450fabb7
DIST llvm-project-16.0.0.src.tar.xz.sig 566 BLAKE2B daba130aa5662fbf7cc2e7aa8fa6b64f9cb355a72330f7a01a21b86389c6f2f85ae93de19ff08ba3f1cfe2834d9a2b7648bdf659caba3afdb2a0d13984774a54 SHA512 38e2449dce20cfbf813d1a9a68b36807722ac8ebb5ee07360fa215b2de8534d2329d3e41cfc3ed33e59e36714b94a6683a6d8077950bcf0037973492e0820fb3
-DIST llvm-project-16.0.0rc3.src.tar.xz 117914548 BLAKE2B 18ffa35eb73c7cc4626d7b6b7b30aade7171ee2e17fb8d72e79a67185e809f611fefa4cfef17e5cd16822a5a70de2222534dc9f146fc53987eb49ff6a9d98c18 SHA512 d14e5e5ec984a0dc0292a2d27440398b3e32f120c1579517054dcb1a05dbc4ac5f1c6d078a3d6ef8597a71af6f22863868680a972a571839dcd573418b4a4697
-DIST llvm-project-16.0.0rc3.src.tar.xz.sig 566 BLAKE2B 43683d2d7b266a847516f71412bf6236a355462430330fc0da1d624fb8dfbc98bfc982d367baee74d5b4964a9e82e7a4a6ea84bdcff3996d246932f516cced1a SHA512 61adc4dc3eb5a4c11a7f96f9267ff37895e5845a08d48a609a03a2696c1b6bca5af5861a6f28de936c48e6d621bf282170589187f2cb593a912b9078300cf47c
-DIST llvm-project-16.0.0rc4.src.tar.xz 117930024 BLAKE2B 55cf032ad3ba52d2af0942fe1c627319ae95b466122d04b24a917c33e29139fae546d92c375715600190c02426b798803ead0ab7a97d86960cf98fca80e8815c SHA512 8d628205c5b93fe6683b67b97b5c7f98bae945bd87cccebcdac00ddd4362108bd171f077a5196242be0fb909c795592b34bfa1c96c50a744fb68f287fd9781cc
-DIST llvm-project-16.0.0rc4.src.tar.xz.sig 566 BLAKE2B bfcf39070f32e16cfeae699d95d06f184b1331c3af403340c31cc5a973a3bb1faec0b6342445176cebed5819ddf68e4abfdaa8542ec425b1c822fc8c03c03349 SHA512 2af72e3d771e2361873007a944dcccfe81fbdbc3025a2101e03cbc15f1a173d39ceb94c4ae8966b1d7564bf004ee9a5ffa032e2334c0cf7154aea1090d04b00f
-DIST llvm-project-2708869801ae00f4681f6b2d9d69b25b3fce26b6.tar.gz 180523586 BLAKE2B cf918d1e23f922d201a44531c9765b7d8ec2b3b8499ea7954845abcd5fa2687e85b3a34819a583c4f4a6d6e1baa49dbac0b4450cd6b9b322b0f13c88cd7da93c SHA512 18cb00e93d819993a925ae0467d382bc952d82c1eb92dbbb5bb3cdf87043269948670713734ddc3ea4ec50544e54dd11b6747496f7eaa02479374ab9ad075aa5
DIST llvm-project-4bf004e07e2b9d6e04e3f33e1b02628c679de664.tar.gz 180304467 BLAKE2B 6750855453b575eb8fcc861d5b24b144497bba62df9b9292ac586cf340e04b2b58290fe9df6d89142f29b56aa37ddeb3bd11cc3337e4dc985a4487954d1e2ffa SHA512 d8a87064ba0f92967df019e9345222b87cda81852a9599902cedc4a49ec7d9e2175c972b7fa6d19920489c1d309822f9c31c23bdce0376a8d40c71d57bcd5068
EBUILD libomp-14.0.6-r1.ebuild 3917 BLAKE2B d92540af690dd622122ad1a4ed2548afa141f1254fbe9a9b3d34286b36f0fa70ccaf915f218c1bea8c68377ea20724db9443d365e2e5f290707f444d3ff47ca5 SHA512 433ae63716103af5aa493c7dbae43f10003cac95abaae579dcb61cba6390da4b9b3fc921e410ba899719bd170fa153a7b3d66c8776c37fd074066173c1fea160
EBUILD libomp-15.0.7-r2.ebuild 3474 BLAKE2B c75fddce61b7e8fe837b4c5bc1b7dacfbe4bc1572537dd7c44c23f894d05b104e8946d896b3b19d78de32a87d866d5911a0f3a8f81796469bba2753d051b2105 SHA512 7dc7c5fd7cd370acadfdf6e15ed09cde0798312ed3c72e770596aecb5817a4ec1477cc1092e3c159d1988bba4200808259705206f80d8fd0019fe07c34f4455d
EBUILD libomp-16.0.0.9999.ebuild 3820 BLAKE2B ece0ea71d75b84994161cabb4f41e5d629d2fec55adf9f396b439ae0a98e81e0ca5934463a1aba66b36273cd4c1758a2bdb6c4de38f1d1ace79712c47afdc401 SHA512 575b64b257def9da4ae7aeca2591832b1f629e9e8416da642aa3d78bd4c05ddd484e09249c490158aa5a3b5b6f4703e39255ba97084225613e02288c532af978
EBUILD libomp-16.0.0.ebuild 3893 BLAKE2B fa9a9694c2251578278e2e7dfadbfbba293b432896aa1b54cd1dc784ceef671c20c07e53c07bbc0241ab9069ac434e3837a5d5c99b4c837d903a6121078feb9b SHA512 7ace5de57243e2c130ca8a65666f8c48f6f7854ed67d650ed5ffb2cb2ef8b370a76b78b77f26e96355083f29c521b2680c080a5cf13a6534d88cbec3d3a7eeff
-EBUILD libomp-16.0.0_rc3.ebuild 3826 BLAKE2B 7672c02bf1a2ed674c07ed2c7fe5f6c1d3e386741877416dbc4a4914c30b63aed8d454c04a3ab164176b096ecb202dce066a369211a6445d2be72c3d3b5b9b19 SHA512 66e577041955f1328e5c6a2026f22eaac44f57131f78ee57f72517197506d7a24f8c4679319f49bb47b503259f9ff60a8be158be3dcdd2055713d9422421be5d
-EBUILD libomp-16.0.0_rc4.ebuild 3826 BLAKE2B 7672c02bf1a2ed674c07ed2c7fe5f6c1d3e386741877416dbc4a4914c30b63aed8d454c04a3ab164176b096ecb202dce066a369211a6445d2be72c3d3b5b9b19 SHA512 66e577041955f1328e5c6a2026f22eaac44f57131f78ee57f72517197506d7a24f8c4679319f49bb47b503259f9ff60a8be158be3dcdd2055713d9422421be5d
EBUILD libomp-17.0.0.9999.ebuild 3820 BLAKE2B ece0ea71d75b84994161cabb4f41e5d629d2fec55adf9f396b439ae0a98e81e0ca5934463a1aba66b36273cd4c1758a2bdb6c4de38f1d1ace79712c47afdc401 SHA512 575b64b257def9da4ae7aeca2591832b1f629e9e8416da642aa3d78bd4c05ddd484e09249c490158aa5a3b5b6f4703e39255ba97084225613e02288c532af978
-EBUILD libomp-17.0.0_pre20230304.ebuild 3820 BLAKE2B ece0ea71d75b84994161cabb4f41e5d629d2fec55adf9f396b439ae0a98e81e0ca5934463a1aba66b36273cd4c1758a2bdb6c4de38f1d1ace79712c47afdc401 SHA512 575b64b257def9da4ae7aeca2591832b1f629e9e8416da642aa3d78bd4c05ddd484e09249c490158aa5a3b5b6f4703e39255ba97084225613e02288c532af978
EBUILD libomp-17.0.0_pre20230314.ebuild 3820 BLAKE2B ece0ea71d75b84994161cabb4f41e5d629d2fec55adf9f396b439ae0a98e81e0ca5934463a1aba66b36273cd4c1758a2bdb6c4de38f1d1ace79712c47afdc401 SHA512 575b64b257def9da4ae7aeca2591832b1f629e9e8416da642aa3d78bd4c05ddd484e09249c490158aa5a3b5b6f4703e39255ba97084225613e02288c532af978
MISC metadata.xml 963 BLAKE2B fdea4545db21492049061b85eaa7038965183e10aceae7c41daadc1ce10e7e1bcb2e86344659787ee244360b50b51c99e1a348d3acd2185dac80097541a00dd7 SHA512 c279f8e9c2463dc3f6e02856e520105d6f3321b633439bfe7409bfd6e7e43f1450053dc4f6663492caf7077caf3f4ab0f5cf0161631639e3aefa9ff985dc476f
diff --git a/sys-libs/libomp/libomp-16.0.0_rc3.ebuild b/sys-libs/libomp/libomp-16.0.0_rc3.ebuild
deleted file mode 100644
index 731fcbdf9f10..000000000000
--- a/sys-libs/libomp/libomp-16.0.0_rc3.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-inherit flag-o-matic cmake-multilib linux-info llvm llvm.org
-inherit python-single-r1 toolchain-funcs
-
-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="~loong"
-IUSE="
- debug gdb-plugin hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX
-"
-REQUIRED_USE="
- gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- gdb-plugin? ( ${PYTHON_DEPS} )
- hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
- offload? (
- dev-libs/libffi:=[${MULTILIB_USEDEP}]
- ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}]
- llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= )
- )
-"
-# 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_DEPS}
- $(python_gen_cond_dep '
- dev-python/lit[${PYTHON_USEDEP}]
- ')
- sys-devel/clang
- )
-"
-
-LLVM_COMPONENTS=( openmp cmake llvm/include )
-llvm.org_set_globals
-
-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
- if use gdb-plugin || use test; then
- python-single-r1_pkg_setup
- fi
-}
-
-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 build_omptarget=OFF
- # upstream disallows building libomptarget when sizeof(void*) != 8
- if use offload &&
- "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} -c -x c - -o /dev/null \
- <<-EOF &>/dev/null
- int test[sizeof(void *) == 8 ? 1 : -1];
- EOF
- then
- build_omptarget=ON
- fi
-
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
-
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
- -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
-
- -DOPENMP_ENABLE_LIBOMPTARGET=${build_omptarget}
-
- # 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 [[ ${build_omptarget} == ON ]]; 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
-}
diff --git a/sys-libs/libomp/libomp-16.0.0_rc4.ebuild b/sys-libs/libomp/libomp-16.0.0_rc4.ebuild
deleted file mode 100644
index 731fcbdf9f10..000000000000
--- a/sys-libs/libomp/libomp-16.0.0_rc4.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-inherit flag-o-matic cmake-multilib linux-info llvm llvm.org
-inherit python-single-r1 toolchain-funcs
-
-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="~loong"
-IUSE="
- debug gdb-plugin hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX
-"
-REQUIRED_USE="
- gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- gdb-plugin? ( ${PYTHON_DEPS} )
- hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
- offload? (
- dev-libs/libffi:=[${MULTILIB_USEDEP}]
- ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}]
- llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= )
- )
-"
-# 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_DEPS}
- $(python_gen_cond_dep '
- dev-python/lit[${PYTHON_USEDEP}]
- ')
- sys-devel/clang
- )
-"
-
-LLVM_COMPONENTS=( openmp cmake llvm/include )
-llvm.org_set_globals
-
-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
- if use gdb-plugin || use test; then
- python-single-r1_pkg_setup
- fi
-}
-
-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 build_omptarget=OFF
- # upstream disallows building libomptarget when sizeof(void*) != 8
- if use offload &&
- "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} -c -x c - -o /dev/null \
- <<-EOF &>/dev/null
- int test[sizeof(void *) == 8 ? 1 : -1];
- EOF
- then
- build_omptarget=ON
- fi
-
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
-
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
- -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
-
- -DOPENMP_ENABLE_LIBOMPTARGET=${build_omptarget}
-
- # 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 [[ ${build_omptarget} == ON ]]; 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
-}
diff --git a/sys-libs/libomp/libomp-17.0.0_pre20230304.ebuild b/sys-libs/libomp/libomp-17.0.0_pre20230304.ebuild
deleted file mode 100644
index 57c4ff3a33d0..000000000000
--- a/sys-libs/libomp/libomp-17.0.0_pre20230304.ebuild
+++ /dev/null
@@ -1,149 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-inherit flag-o-matic cmake-multilib linux-info llvm llvm.org
-inherit python-single-r1 toolchain-funcs
-
-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=""
-IUSE="
- debug gdb-plugin hwloc offload ompt test
- llvm_targets_AMDGPU llvm_targets_NVPTX
-"
-REQUIRED_USE="
- gdb-plugin? ( ${PYTHON_REQUIRED_USE} )
-"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- gdb-plugin? ( ${PYTHON_DEPS} )
- hwloc? ( >=sys-apps/hwloc-2.5:0=[${MULTILIB_USEDEP}] )
- offload? (
- dev-libs/libffi:=[${MULTILIB_USEDEP}]
- ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}]
- llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= )
- )
-"
-# 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_DEPS}
- $(python_gen_cond_dep '
- dev-python/lit[${PYTHON_USEDEP}]
- ')
- sys-devel/clang
- )
-"
-
-LLVM_COMPONENTS=( openmp cmake llvm/include )
-llvm.org_set_globals
-
-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
- if use gdb-plugin || use test; then
- python-single-r1_pkg_setup
- fi
-}
-
-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 build_omptarget=OFF
- # upstream disallows building libomptarget when sizeof(void*) != 8
- if use offload &&
- "$(tc-getCC)" ${CFLAGS} ${CPPFLAGS} -c -x c - -o /dev/null \
- <<-EOF &>/dev/null
- int test[sizeof(void *) == 8 ? 1 : -1];
- EOF
- then
- build_omptarget=ON
- fi
-
- local libdir="$(get_libdir)"
- local mycmakeargs=(
- -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
-
- -DLIBOMP_USE_HWLOC=$(usex hwloc)
- -DLIBOMP_OMPD_GDB_SUPPORT=$(multilib_native_usex gdb-plugin)
- -DLIBOMP_OMPT_SUPPORT=$(usex ompt)
-
- -DOPENMP_ENABLE_LIBOMPTARGET=${build_omptarget}
-
- # 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 [[ ${build_omptarget} == ON ]]; 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
-}