mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-19 20:13:01 -04:00
sys-cluster/nanos6: new package
Package-Manager: Portage-3.0.18, Repoman-3.0.3 Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
1
sys-cluster/nanos6/Manifest
Normal file
1
sys-cluster/nanos6/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST nanos6-2.5.1.tar.gz 744260 BLAKE2B 6b294391ebb18806da76b4bc73aaf6f7082ab4a61693ab300e130f04942bf50c1da884e5271765465bedab863cb1ce545a43ac09727152c0a52d69852e60e373 SHA512 c7da862aa41fb0be1a992f4fde7306a02c4159c05a89055f0144bf6a815c10ff5f7e7ee11b4afaa4c468afdd538a99b3b5971a896221b20928805b45d35e0335
|
||||
29
sys-cluster/nanos6/metadata.xml
Normal file
29
sys-cluster/nanos6/metadata.xml
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>lssndrbarbieri@gmail.com</email>
|
||||
<name>Alessandro Barbieri</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<bugs-to>https://github.com/bsc-pm/nanos6/issues</bugs-to>
|
||||
<remote-id type="github">bsc-pm/nanos6</remote-id>
|
||||
</upstream>
|
||||
<use>
|
||||
<!--<flag name="chrono-arch">use an architecture-dependent chrono for timing instead of the default one</flag>-->
|
||||
<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="embed-code-changes">embed into the runtime any code changes present in the source</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">specify the installation prefix of memkind</flag>-->
|
||||
<!--<flag name="mercurium">specify the installation prefix of the Nanos6 Mercurium compiler</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>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
114
sys-cluster/nanos6/nanos6-2.5.1.ebuild
Normal file
114
sys-cluster/nanos6/nanos6-2.5.1.ebuild
Normal file
@@ -0,0 +1,114 @@
|
||||
# Copyright 2019-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit autotools
|
||||
|
||||
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"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="cluster debug dlb doc embed-code-changes execution-workflow git papi unwind"
|
||||
#chrono-arch build fail
|
||||
#jemalloc require custom stuff
|
||||
#TODO: cuda pqos mercurium memkind k1om extrae
|
||||
RDEPEND="
|
||||
>=dev-libs/boost-1.59:=
|
||||
sys-apps/hwloc
|
||||
sys-process/numactl
|
||||
virtual/libelf
|
||||
|
||||
cluster? ( virtual/mpi )
|
||||
dlb? ( sys-cluster/dlb )
|
||||
embed-code-changes? ( dev-vcs/git )
|
||||
papi? ( dev-libs/papi )
|
||||
unwind? ( sys-libs/libunwind )
|
||||
"
|
||||
#extrae? ( sys-cluster/extrae[nanos] )
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="doc? ( app-doc/doxygen )"
|
||||
REQUIRED_USE="cluster? ( execution-workflow )"
|
||||
S="${WORKDIR}/${PN}-version-${PV}"
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--disable-chrono-arch
|
||||
--disable-openacc
|
||||
--disable-static
|
||||
|
||||
--enable-shared
|
||||
|
||||
--with-boost="${EPREFIX}/usr"
|
||||
--with-libnuma="${EPREFIX}/usr"
|
||||
--with-pic
|
||||
|
||||
--without-k1om
|
||||
--without-nanos6-clang
|
||||
--without-nanos6-mercurium
|
||||
--without-pgi
|
||||
|
||||
$(use_enable cluster)
|
||||
$(use_enable doc doxygen-doc)
|
||||
$(use_enable doc doxygen-dot)
|
||||
$(use_enable doc doxygen-html)
|
||||
$(use_enable doc doxygen-man)
|
||||
$(use_enable doc doxygen-pdf)
|
||||
$(use_enable doc doxygen-ps)
|
||||
$(use_enable debug extra-debug)
|
||||
$(use_enable embed-code-changes)
|
||||
$(use_enable execution-workflow)
|
||||
)
|
||||
|
||||
if use dlb; then
|
||||
myconf+=( "--with-dlb=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-dlb" )
|
||||
fi
|
||||
if use embed-code-changes; then
|
||||
myconf+=( "--with-git=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-git" )
|
||||
fi
|
||||
# if use extrae; then
|
||||
# myconf+=( "--with-extrae=${EPREFIX}/usr/$(get_libdir)/extrae" )
|
||||
# else
|
||||
myconf+=( "--without-extrae" )
|
||||
# fi
|
||||
if use papi; then
|
||||
myconf+=( "--with-papi=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-papi" )
|
||||
fi
|
||||
if use unwind; then
|
||||
myconf+=( "--with-libunwind=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-libunwind" )
|
||||
fi
|
||||
|
||||
econf "${myconf[@]}"
|
||||
}
|
||||
# --without-pqos
|
||||
# --without-jemalloc
|
||||
# --without-cuda
|
||||
# --without-memkind
|
||||
|
||||
src_install() {
|
||||
default
|
||||
|
||||
docompress -x "/usr/share/doc/${PF}/paraver-cfg"
|
||||
docompress -x "/usr/share/doc/${PF}/scripts"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "install media-gfx/graphviz and app-text/pdfjam or >=app-text/texlive-core-2021 to generate graphical representations of the dependency graph"
|
||||
elog "install sys-process/parallel to generate the graph representation in parallel"
|
||||
}
|
||||
Reference in New Issue
Block a user