sys-cluster/nanos6: EAPI8, mercurium support

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri
2021-08-21 03:59:46 +02:00
parent e378530982
commit 91ed6bc2f5
2 changed files with 17 additions and 12 deletions

View File

@@ -10,16 +10,14 @@
<remote-id type="github">bsc-pm/nanos6</remote-id>
</upstream>
<use>
<flag name="cluster">Enable OmpSs@Cluster support. This requires an MPI version that supports MPI_THREAD_MULTIPLE to be present in your environment</flag>
<!--<flag name="cuda">enable CUDA</flag>-->
<flag name="debug">enable extra assertions and checks in debug - may cause significant slowdown</flag>
<flag name="dlb">enable dynamic management and sharing of computing resources</flag>
<flag name="execution-workflow">Enable execution using the Execution Workflow</flag>
<flag name="extrae">to generate execution traces for offline performance analysis with paraver</flag>
<!--<flag name="jemalloc">use jemalloc as the default memory allocator, providing better performance than the default glibc implementation</flag>-->
<!--<flag name="k1om">specify the installation prefix of the k1om GNU compilers</flag>-->
<flag name="memkind">Add support for <pkg>dev-libs/memkind</pkg> in memory allocator</flag>
<!--<flag name="mercurium">specify the installation prefix of the Nanos6 Mercurium compiler</flag>-->
<flag name="mercurium">Enable <pkg>sys-cluster/mcxx</pkg> support</flag>
<flag name="papi">enable <pkg>dev-libs/papi</pkg> support</flag>
<!--<flag name="pqos"> to generate real-time statistics of hardware counters</flag>-->
<flag name="unwind">to generate sample-based profiling</flag>

View File

@@ -1,7 +1,7 @@
# Copyright 2019-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
EAPI=8
inherit autotools
@@ -9,13 +9,13 @@ DESCRIPTION="runtime that implements the OmpSs-2 parallel programming model"
HOMEPAGE="https://github.com/bsc-pm/nanos6"
SRC_URI="https://github.com/bsc-pm/nanos6/archive/refs/tags/version-${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/${PN}-version-${PV}"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE="cluster debug dlb execution-workflow extrae memkind papi unwind"
#chrono-arch build fail
IUSE="debug dlb execution-workflow extrae memkind mercurium papi unwind"
#jemalloc require custom stuff
#TODO: cuda pqos mercurium k1om babeltrace2
#TODO: cuda pqos babeltrace2
#TODO: llvm-libunwind
RDEPEND="
@@ -24,15 +24,15 @@ RDEPEND="
sys-process/numactl
virtual/libelf
cluster? ( virtual/mpi )
dlb? ( sys-cluster/dlb )
extrae? ( sys-cluster/extrae[nanos] )
memkind? ( dev-libs/memkind )
mercurium? ( sys-cluster/mcxx[ompss2] )
papi? ( dev-libs/papi )
unwind? ( sys-libs/libunwind )
"
# jemalloc? ( dev-libs/jemalloc )
DEPEND="${RDEPEND}"
REQUIRED_USE="cluster? ( execution-workflow )"
src_prepare() {
default
@@ -54,12 +54,9 @@ src_configure() {
--without-git
--without-k1om
--without-nanos6-clang
--without-nanos6-mercurium
--without-pgi
$(use_enable cluster)
$(use_enable debug extra-debug)
$(use_enable execution-workflow)
)
use dlb && myconf+=( "--with-dlb=${EPREFIX}/usr" )
use memkind && myconf+=( "--with-memkind=${EPREFIX}/usr" )
@@ -74,6 +71,16 @@ src_configure() {
else
myconf+=( "--without-extrae" )
fi
# if use jemalloc; then
# myconf+=( "--with-jemalloc=${EPREFIX}/usr" )
# else
# myconf+=( "--without-jemalloc" )
# fi
if use mercurium; then
myconf+=( "--with-nanos6-mercurium=${EPREFIX}/usr" )
else
myconf+=( "--without-nanos6-mercurium" )
fi
if use papi; then
myconf+=( "--with-papi=${EPREFIX}/usr" )
else