* [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
* [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
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 --
2022-06-10 14:08 [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/sionlibl/ Andrew Ammerlaan
-- strict thread matches above, loose matches on Subject: below --
2021-07-27 19:57 Andrew Ammerlaan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox