diff options
author | Michał Górny <mgorny@gentoo.org> | 2024-11-18 19:41:53 +0100 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2024-11-18 20:32:28 +0100 |
commit | 76495ec977601dd9cd48ac2f79e7f7ecb2f5cf86 (patch) | |
tree | a089d6c8f5d4d90139f545e27b0ddd2c5efa0c15 /sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild | |
parent | sys-libs/libcxx: Add 20.0.0_pre20241118 snapshot (diff) | |
download | gentoo-76495ec977601dd9cd48ac2f79e7f7ecb2f5cf86.tar.gz gentoo-76495ec977601dd9cd48ac2f79e7f7ecb2f5cf86.tar.bz2 gentoo-76495ec977601dd9cd48ac2f79e7f7ecb2f5cf86.zip |
sys-libs/libomp: Add 20.0.0_pre20241118 snapshot
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild')
-rw-r--r-- | sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild b/sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild new file mode 100644 index 000000000000..32b91b3699c4 --- /dev/null +++ b/sys-libs/libomp/libomp-20.0.0_pre20241118.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +inherit flag-o-matic cmake-multilib linux-info llvm.org python-single-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}" +IUSE="+debug gdb-plugin hwloc ompt test" +REQUIRED_USE=" + gdb-plugin? ( ${PYTHON_REQUIRED_USE} ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + gdb-plugin? ( ${PYTHON_DEPS} ) + hwloc? ( >=sys-apps/hwloc-2.5: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} +" +BDEPEND=" + dev-lang/perl + 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 + +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 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) + + # 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 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 +} |