commit: 550762d676b90df013b4e74e8d23737ab83225b8 Author: Michał Górny <mgorny <AT> gentoo <DOT> org> AuthorDate: Mon Mar 18 16:55:32 2024 +0000 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org> CommitDate: Mon Mar 18 16:56:50 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=550762d6
sys-libs/libomp: Revert "Add slotted versions" Bug: https://bugs.gentoo.org/927249 Reverts: 2836fd63ef7c7b8756883bffd58e06392653f65d Signed-off-by: Michał Górny <mgorny <AT> gentoo.org> sys-libs/libomp/libomp-15.0.7-r7.ebuild | 135 ----------------- sys-libs/libomp/libomp-16.0.6-r1.ebuild | 153 ------------------- sys-libs/libomp/libomp-17.0.6-r1.ebuild | 153 ------------------- sys-libs/libomp/libomp-18.1.0-r1.ebuild | 163 --------------------- sys-libs/libomp/libomp-19.0.0.9999.ebuild | 4 +- .../libomp/libomp-19.0.0_pre20240316-r1.ebuild | 162 -------------------- 6 files changed, 1 insertion(+), 769 deletions(-) diff --git a/sys-libs/libomp/libomp-15.0.7-r7.ebuild b/sys-libs/libomp/libomp-15.0.7-r7.ebuild deleted file mode 100644 index 969100d279b4..000000000000 --- a/sys-libs/libomp/libomp-15.0.7-r7.ebuild +++ /dev/null @@ -1,135 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..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="${LLVM_MAJOR}/${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}] - llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= ) - ) - !sys-libs/libomp:0 -" -# 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_PATCHSET=15.0.7-r6 -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=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -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 -} diff --git a/sys-libs/libomp/libomp-16.0.6-r1.ebuild b/sys-libs/libomp/libomp-16.0.6-r1.ebuild deleted file mode 100644 index e797abfb97dc..000000000000 --- a/sys-libs/libomp/libomp-16.0.6-r1.ebuild +++ /dev/null @@ -1,153 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -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="${LLVM_MAJOR}/${LLVM_SOABI}" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" -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:= ) - ) - !sys-libs/libomp:0 -" -# 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=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -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 - # prevent trying to access the GPU - -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND - ) - - 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.6-r1.ebuild b/sys-libs/libomp/libomp-17.0.6-r1.ebuild deleted file mode 100644 index e797abfb97dc..000000000000 --- a/sys-libs/libomp/libomp-17.0.6-r1.ebuild +++ /dev/null @@ -1,153 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -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="${LLVM_MAJOR}/${LLVM_SOABI}" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" -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:= ) - ) - !sys-libs/libomp:0 -" -# 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=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -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 - # prevent trying to access the GPU - -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND - ) - - 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-18.1.0-r1.ebuild b/sys-libs/libomp/libomp-18.1.0-r1.ebuild deleted file mode 100644 index 4f88ffca6194..000000000000 --- a/sys-libs/libomp/libomp-18.1.0-r1.ebuild +++ /dev/null @@ -1,163 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -inherit flag-o-matic cmake-multilib linux-info llvm.org llvm-utils -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="${LLVM_MAJOR}/${LLVM_SOABI}" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x64-macos" -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:= ) - ) - !sys-libs/libomp:0 -" -# 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() { - if use gdb-plugin || use test; then - python-single-r1_pkg_setup - fi -} - -multilib_src_configure() { - use offload && llvm_prepend_path "${LLVM_MAJOR}" - - # 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=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -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 - local ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) - local ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) - mycmakeargs+=( - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" - ) - - 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) - - # prevent trying to access the GPU - -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND - -DLIBOMPTARGET_NVPTX_ARCH=LIBOMPTARGET_NVPTX_ARCH-NOTFOUND - ) - 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-19.0.0.9999.ebuild b/sys-libs/libomp/libomp-19.0.0.9999.ebuild index bf67f76f8f16..a40d0aed1c41 100644 --- a/sys-libs/libomp/libomp-19.0.0.9999.ebuild +++ b/sys-libs/libomp/libomp-19.0.0.9999.ebuild @@ -11,7 +11,7 @@ DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" HOMEPAGE="https://openmp.llvm.org" LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )" -SLOT="${LLVM_MAJOR}/${LLVM_SOABI}" +SLOT="0/${LLVM_SOABI}" IUSE=" +debug gdb-plugin hwloc offload ompt test llvm_targets_AMDGPU llvm_targets_NVPTX @@ -29,7 +29,6 @@ RDEPEND=" ~sys-devel/llvm-${PV}[${MULTILIB_USEDEP}] llvm_targets_AMDGPU? ( dev-libs/rocr-runtime:= ) ) - !sys-libs/libomp:0 " # tests: # - dev-python/lit provides the test runner @@ -102,7 +101,6 @@ multilib_src_configure() { local libdir="$(get_libdir)" local mycmakeargs=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" -DOPENMP_LIBDIR_SUFFIX="${libdir#lib}" -DLIBOMP_USE_HWLOC=$(usex hwloc) diff --git a/sys-libs/libomp/libomp-19.0.0_pre20240316-r1.ebuild b/sys-libs/libomp/libomp-19.0.0_pre20240316-r1.ebuild deleted file mode 100644 index bf67f76f8f16..000000000000 --- a/sys-libs/libomp/libomp-19.0.0_pre20240316-r1.ebuild +++ /dev/null @@ -1,162 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{10..12} ) -inherit flag-o-matic cmake-multilib linux-info llvm.org llvm-utils -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="${LLVM_MAJOR}/${LLVM_SOABI}" -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:= ) - ) - !sys-libs/libomp:0 -" -# 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() { - if use gdb-plugin || use test; then - python-single-r1_pkg_setup - fi -} - -multilib_src_configure() { - use offload && llvm_prepend_path "${LLVM_MAJOR}" - - # 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=( - -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${LLVM_MAJOR}" - -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 - local ffi_cflags=$($(tc-getPKG_CONFIG) --cflags-only-I libffi) - local ffi_ldflags=$($(tc-getPKG_CONFIG) --libs-only-L libffi) - mycmakeargs+=( - -DFFI_INCLUDE_DIR="${ffi_cflags#-I}" - -DFFI_LIBRARY_DIR="${ffi_ldflags#-L}" - ) - - 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) - - # prevent trying to access the GPU - -DLIBOMPTARGET_AMDGPU_ARCH=LIBOMPTARGET_AMDGPU_ARCH-NOTFOUND - -DLIBOMPTARGET_NVPTX_ARCH=LIBOMPTARGET_NVPTX_ARCH-NOTFOUND - ) - 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 -}
