public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/sionlibl/
@ 2021-07-27 19:57 Andrew Ammerlaan
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Ammerlaan @ 2021-07-27 19:57 UTC (permalink / raw
  To: gentoo-commits

commit:     2e5755fa520ac0b0ca5bb9dd21548dbdffaa6d2c
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Mon Jul 26 23:27:43 2021 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Mon Jul 26 23:28:43 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2e5755fa

sys-cluster/sionlibl: sionfwd use

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 sys-cluster/sionlibl/metadata.xml                       |  7 ++++++-
 .../{sionlibl-1.7.7.ebuild => sionlibl-1.7.7-r1.ebuild} | 17 +++++++++++------
 2 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/sys-cluster/sionlibl/metadata.xml b/sys-cluster/sionlibl/metadata.xml
index 32002cf2d..0f8c4f1a8 100644
--- a/sys-cluster/sionlibl/metadata.xml
+++ b/sys-cluster/sionlibl/metadata.xml
@@ -18,17 +18,22 @@ Both, the estimated chunk size and file system block size are used to align indi
 
 SIONlib provides two different interfaces: one for parallel access (with implementations for different parallel programming technologies such as MPI, OpenMP and hybrid MPI+OpenMP) and one for sequential access which is also used internally by the SIONlib utilities.
 	</longdescription>
+	<upstream>
+		<bugs-to>https://gitlab.jsc.fz-juelich.de/cstao-public/SIONlib/SIONlib/-/issues</bugs-to>
+	</upstream>
 	<use>
 		<!--<flag name="cuda">enable CUDA aware interface</flag>-->
 		<flag name="cxx">Enable C++ support</flag>
 		<flag name="debug">enable SIONlib debug</flag>
+		<flag name="deep-est-sdv">deep-est-sdv collector selection plug-in for MSA-aware collective I/O</flag>
 		<flag name="fortran">Enable Fortran support</flag>
+		<flag name="hostname-regex">hostname-regex collector selection plug-in for MSA-aware collective I/O</flag>
 		<flag name="mpi">enable mpi</flag>
 		<flag name="python">enable python support</flag>
 		<flag name="ompi">enable hybrid openmp mpi</flag>
 		<flag name="openmp">enable openmp</flag>
 		<flag name="parutils">Enable compilation of parutils (used for benchmarking)</flag>
 		<flag name="pthreads">configure SIONlib to use pthreads for locking</flag>
-		<!--<flag name="sionfwd">enable I/O forwarding with SIONfwd</flag>-->
+		<flag name="sionfwd">enable I/O forwarding with <pkg>sys-cluster/SIONfwd</pkg></flag>
 	</use>
 </pkgmetadata>

diff --git a/sys-cluster/sionlibl/sionlibl-1.7.7.ebuild b/sys-cluster/sionlibl/sionlibl-1.7.7-r1.ebuild
similarity index 88%
rename from sys-cluster/sionlibl/sionlibl-1.7.7.ebuild
rename to sys-cluster/sionlibl/sionlibl-1.7.7-r1.ebuild
index 1e2156aa5..c31355c5a 100644
--- a/sys-cluster/sionlibl/sionlibl-1.7.7.ebuild
+++ b/sys-cluster/sionlibl/sionlibl-1.7.7-r1.ebuild
@@ -18,12 +18,7 @@ S="${WORKDIR}/sionlib"
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64"
-IUSE="+cxx debug doc examples +fortran +mpi +ompi +openmp +parutils +pthreads python"
-#TODO: cuda sionfwd msa
-#--enable-sionfwd=/path/to/sionfwd
-#--msa=(hostname-regex|deep-est-sdv)]	MSA aware collective operations for the given system
-
-PATCHES=( "${FILESDIR}/${PN}-respect-flags.patch" )
+IUSE="+cxx debug deep-est-sdv doc examples +fortran hostname-regex +mpi +ompi +openmp +parutils +pthreads python sionfwd" #cuda
 
 RDEPEND="
 	mpi? ( virtual/mpi )
@@ -32,12 +27,16 @@ RDEPEND="
 		virtual/mpi
 	)
 	openmp? ( || ( sys-devel/gcc:*[openmp] sys-libs/libomp ) )
+	sionfwd? ( sys-cluster/SIONfwd )
 "
 DEPEND="
 	${RDEPEND}
 	${PYTHON_DEPS}
 "
 
+REQUIRED_USE="?? ( hostname-regex deep-est-sdv )"
+PATCHES=( "${FILESDIR}/${PN}-respect-flags.patch" )
+
 pkg_setup() {
 	FORTRAN_NEED_OPENMP=0
 	use openmp && FORTRAN_NEED_OPENMP=1
@@ -64,8 +63,13 @@ src_configure() {
 
 	append-fflags -fallow-argument-mismatch
 
+	local msa="none"
+	use deep-est-sdv && msa="deep-est-sdv"
+	use hostname-regex && msa="hostname-regex"
+
 	local myconf=(
 		--disable-mic
+		--msa="${msa}"
 		--prefix="${T}/prefix/usr"
 	)
 
@@ -80,6 +84,7 @@ src_configure() {
 
 	use debug && myconf+=( "--enable-debug" )
 	use python && myconf+=( "--enable-python=3" )
+	use sionfwd && myconf+=( "--enable-sionfwd=${EPREFIX}/usr" )
 
 	./configure "${myconf[@]}" || die
 }


^ permalink raw reply related	[flat|nested] 2+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/sionlibl/
@ 2022-06-10 14:08 Andrew Ammerlaan
  0 siblings, 0 replies; 2+ messages in thread
From: Andrew Ammerlaan @ 2022-06-10 14:08 UTC (permalink / raw
  To: gentoo-commits

commit:     e262c4b8190e7f405b7d9b83055eee7d38eeb2b7
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Thu Jun  9 22:46:34 2022 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Fri Jun 10 03:58:04 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=e262c4b8

sys-cluster/sionlibl: fix mpich detection

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild | 40 +++++++++++++++++++++------
 1 file changed, 31 insertions(+), 9 deletions(-)

diff --git a/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild b/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild
index a8bae06a2..48de3e3ec 100644
--- a/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild
+++ b/sys-cluster/sionlibl/sionlibl-1.7.7-r3.ebuild
@@ -8,7 +8,7 @@ DOCS_CONFIG_NAME="doxy"
 FORTRAN_NEEDED="fortran"
 PYTHON_COMPAT=( pypy3 python3_{8..11} )
 
-inherit docs flag-o-matic fortran-2 python-any-r1 toolchain-funcs
+inherit docs edo flag-o-matic fortran-2 python-any-r1 toolchain-funcs
 
 DESCRIPTION="Scalable I/O library for parallel access to task-local files"
 HOMEPAGE="https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html"
@@ -22,10 +22,6 @@ IUSE="+cxx debug deep-est-sdv doc examples +fortran hostname-regex +mpi +ompi +o
 
 RDEPEND="
 	mpi? ( virtual/mpi )
-	ompi? (
-		|| ( sys-devel/gcc:*[openmp] sys-libs/libomp )
-		virtual/mpi
-	)
 	openmp? ( || ( sys-devel/gcc:*[openmp] sys-libs/libomp ) )
 	sionfwd? ( sys-cluster/SIONfwd )
 "
@@ -34,7 +30,10 @@ DEPEND="
 	${PYTHON_DEPS}
 "
 
-REQUIRED_USE="?? ( hostname-regex deep-est-sdv )"
+REQUIRED_USE="
+	ompi? ( mpi openmp )
+	?? ( hostname-regex deep-est-sdv )
+"
 PATCHES=(
 	"${FILESDIR}/${PN}-respect-flags-v3.patch"
 	"${FILESDIR}/${PN}-build-shared-libraries.patch"
@@ -43,7 +42,6 @@ PATCHES=(
 pkg_setup() {
 	FORTRAN_NEED_OPENMP=0
 	use openmp && FORTRAN_NEED_OPENMP=1
-	use ompi && FORTRAN_NEED_OPENMP=1
 
 	fortran-2_pkg_setup
 }
@@ -77,7 +75,11 @@ src_configure() {
 	#custom configure?
 	use cxx || myconf+=( "--disable-cxx" )
 	use fortran || myconf+=( "--disable-fortran" )
-	use mpi || myconf+=( "--disable-mpi" )
+	if use mpi; then
+		myconf+=( "--mpi=$(detect_mpi_implementation || die)" )
+	else
+		myconf+=( "--disable-mpi" )
+	fi
 	use ompi || myconf+=( "--disable-ompi" )
 	use openmp || myconf+=( "--disable-omp" )
 	use parutils || myconf+=( "--disable-parutils" )
@@ -85,7 +87,7 @@ src_configure() {
 	use python && myconf+=( "--enable-python=3" )
 	use sionfwd && myconf+=( "--enable-sionfwd=${EPREFIX}/usr" )
 
-	./configure "${myconf[@]}" || die
+	edo ./configure "${myconf[@]}"
 }
 
 src_compile() {
@@ -134,3 +136,23 @@ src_install() {
 	#find "${ED}" -name '*.a' -delete || die
 	find "${ED}" -name '*.la' -delete || die
 }
+
+detect_mpi_implementation() {
+	cat > testmpi.c <<- EOF
+#include "mpi.h"
+#include "stdio.h"
+
+int main(){
+	#ifdef OPEN_MPI
+	        printf("%s","openmpi");
+	#endif
+
+	#ifdef MPICH
+	        printf("%s%i","mpich",MPICH_NAME);
+	#endif
+	return 0;
+}
+EOF
+	edo ${CC} testmpi.c -o testmpi
+	./testmpi || die
+}


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-06-10 14:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-07-27 19:57 [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/sionlibl/ Andrew Ammerlaan
  -- strict thread matches above, loose matches on Subject: below --
2022-06-10 14:08 Andrew Ammerlaan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox