From 4118cd95afcf298537180ef2509f8853a1c8eead Mon Sep 17 00:00:00 2001 From: Alessandro Barbieri Date: Sun, 15 Aug 2021 01:50:13 +0200 Subject: [PATCH] sys-cluster/temanejo: initial import Signed-off-by: Alessandro Barbieri --- sys-cluster/temanejo/Manifest | 1 + sys-cluster/temanejo/metadata.xml | 19 ++++++ sys-cluster/temanejo/temanejo-1.3.ebuild | 79 ++++++++++++++++++++++++ 3 files changed, 99 insertions(+) create mode 100644 sys-cluster/temanejo/Manifest create mode 100644 sys-cluster/temanejo/metadata.xml create mode 100644 sys-cluster/temanejo/temanejo-1.3.ebuild diff --git a/sys-cluster/temanejo/Manifest b/sys-cluster/temanejo/Manifest new file mode 100644 index 0000000000..61ac9a380c --- /dev/null +++ b/sys-cluster/temanejo/Manifest @@ -0,0 +1 @@ +DIST temanejo-1.3.tar.gz 2424254 BLAKE2B 40c29257f6701906265c23fa30ba9a33400855242195885bae1064f6d4b668e0e6e266a896fea8b9e1c2250dcf14be5a5dce29842eabd7c4a4e6de19be9473e9 SHA512 6792f43927d001c2431a51d198dd27474a5493a6ac2f7eb384c8f6dd90869af624582aafdd664a683f285fca191ae51f97d535d67577de70ab089fc769b4b5db diff --git a/sys-cluster/temanejo/metadata.xml b/sys-cluster/temanejo/metadata.xml new file mode 100644 index 0000000000..ad2abe5a34 --- /dev/null +++ b/sys-cluster/temanejo/metadata.xml @@ -0,0 +1,19 @@ + + + + + lssndrbarbieri@gmail.com + Alessandro Barbieri + + +Temanejo started as a graphical debugger for the task-parallel, data-dependency-driven programming model SMPSs. The foremost goal was to display the task-dependency graph of SMPSs applications, and to allow simple interaction with the SMPSs runtime system in order to control some aspects of the parallel execution of an application. +Since then, we aim at supporting any programming model that can meaningfully define the concepts of task and dependencies between those, respectively. Notably, this includes OpenMP and MPI, i.e. the working horses in high-performance computing. Today, Temanejo is able to assist debugging (to varying extent) for the programming models SMPSs, OmpSs, StarPU, PaRSEC and OpenMP. +Temanejo actually is only the graphical frontend. Most of the real work is done by a library called Ayudame which is used to receive information, so called events, from supporting runtime systems, and to excert control over a runtime system by issuing request to it. + + + enable ompss plugin + Acquire debugging events through OMPT (OpenMP, OmpSs) + Enable connection to socket + Enable output to stdout + + diff --git a/sys-cluster/temanejo/temanejo-1.3.ebuild b/sys-cluster/temanejo/temanejo-1.3.ebuild new file mode 100644 index 0000000000..c20b84ae15 --- /dev/null +++ b/sys-cluster/temanejo/temanejo-1.3.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +#temanejo doesn't support python3 +#PYTHON_COMPAT=( python3_{8..10} ) + +inherit autotools #python-single-r1 + +DESCRIPTION="a debugger for task-parallel programming" +HOMEPAGE="http://www.hlrs.de/solutions-services/service-portfolio/programming/hpc-development-tools/temanejo" +SRC_URI="http://fs.hlrs.de/projects/temanejo/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="doc ompss +ompt +socket stdout" + +REQUIRED_USE="" +# ${PYTHON_REQUIRED_USE} + +DEPEND="" +RDEPEND=" + ${DEPEND} +" +# ${PYTHON_DEPS} +# $(python_gen_cond_dep ' +# dev-python/networkx[${PYTHON_USEDEP}] +# dev-python/pycairo[${PYTHON_USEDEP}] +# dev-python/pygobject[${PYTHON_USEDEP}] +# dev-python/pygtk[${PYTHON_USEDEP}] +# ') + +BDEPEND="doc? ( dev-texlive/texlive-latex )" + +src_prepare() { + default + eautoreconf +} + +src_configure() { + local myconf=( + --disable-static + --enable-ayudame + --enable-modulefile + --disable-temanejo + $(use_enable doc) + $(use_enable ompt) + ) + + if use ompss; then + myconf+=( "--with-ompss=${EPREFIX}/usr" ) + else + myconf+=( "--without-ompss" ) + fi + if use socket; then + myconf+=( "--enable-socket=yes" ) + else + myconf+=( "--enable-socket=no" ) + fi + if use stdout; then + myconf+=( "--enable-stdout=yes" ) + else + myconf+=( "--enable-stdout=no" ) + fi + + econf "${myconf[@]}" +} + +src_install() { + default + mkdir -p "${ED}/usr/share/${PN}" || die + mv "${ED}/usr/modulefile" "${ED}/usr/share/${PN}/" || die + if use doc; then + mv "${ED}/usr/share/doc/ayudame-library" "${ED}/usr/share/doc/${PF}/" || die + fi + find "${D}" -name '*.la' -delete || die +}