From b6d16a44660c2eb239bf9463157624e1bc1345d3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20G=C3=B3rny?= Date: Wed, 3 Jan 2018 22:52:56 +0100 Subject: [PATCH] sys-libs/libomp: Add a live ebuild for 6.0 branch --- sys-libs/libomp/libomp-6.0.9999.ebuild | 88 ++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 sys-libs/libomp/libomp-6.0.9999.ebuild diff --git a/sys-libs/libomp/libomp-6.0.9999.ebuild b/sys-libs/libomp/libomp-6.0.9999.ebuild new file mode 100644 index 000000000000..9988d0c22890 --- /dev/null +++ b/sys-libs/libomp/libomp-6.0.9999.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +: ${CMAKE_MAKEFILE_GENERATOR:=ninja} +# (needed due to CMAKE_BUILD_TYPE != Gentoo) +CMAKE_MIN_VERSION=3.7.0-r1 +PYTHON_COMPAT=( python2_7 ) + +inherit cmake-multilib git-r3 linux-info python-any-r1 + +DESCRIPTION="OpenMP runtime library for LLVM/clang compiler" +HOMEPAGE="https://openmp.llvm.org" +SRC_URI="" +EGIT_REPO_URI="https://git.llvm.org/git/openmp.git + https://github.com/llvm-mirror/openmp.git" +EGIT_BRANCH="release_60" + +# Additional licenses: +# - MIT-licensed Intel code, +# - LLVM Software Grant from Intel. + +LICENSE="|| ( UoI-NCSA MIT ) MIT LLVM-Grant" +SLOT="0" +KEYWORDS="" +IUSE="hwloc ompt test" +RESTRICT="!test? ( test )" + +RDEPEND="hwloc? ( sys-apps/hwloc: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} + dev-lang/perl + test? ( + $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]') + sys-devel/llvm + >=sys-devel/clang-3.9.0 + )" + +# least intrusive of all +CMAKE_BUILD_TYPE=RelWithDebInfo + +CONFIG_CHECK="~!SCHED_PDS" +ERROR_SCHED_PDS="PDS scheduler is not supported as it does not implement sched_yield()" + +python_check_deps() { + has_version "dev-python/lit[${PYTHON_USEDEP}]" +} + +pkg_pretend() { + linux-info_pkg_setup +} + +pkg_setup() { + linux-info_pkg_setup + use test && python-any-r1_pkg_setup +} + +multilib_src_configure() { + local libdir="$(get_libdir)" + local mycmakeargs=( + -DLIBOMP_LIBDIR_SUFFIX="${libdir#lib}" + -DLIBOMPTARGET_LIBDIR_SUFFIX="${libdir#lib}" + + -DLIBOMP_USE_HWLOC=$(usex hwloc) + -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 + -DLIBOMP_TEST_COMPILER="$(type -P "${CHOST}-clang")" + ) + use test && mycmakeargs+=( + -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit" + -DLLVM_LIT_ARGS="-vv" + ) + cmake-utils_src_configure +} + +multilib_src_test() { + # respect TMPDIR! + local -x LIT_PRESERVES_TMP=1 + + cmake-utils_src_make check-libomp +} -- 2.26.2