virtual/mpi: add USE=nullmpi

nullmpi doesn't implement all of the MPI spec/functions and
ends up calling broken builds which is confusing for users.

Tagged one example but there's been quite a few more.

Bug: https://bugs.gentoo.org/636120
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Sam James
2021-12-03 20:53:15 +00:00
parent a4acd154d7
commit a7aef4a542
2 changed files with 21 additions and 0 deletions

View File

@@ -7,6 +7,7 @@
</maintainer>
<use>
<flag name="romio">Enable romio, a high-performance portable MPI-IO</flag>
<flag name="nullmpi">Allow <pkg>sys-cluster/nullmpi</pkg> a minimal incomplete MPI implementation as a provider</flag>
</use>
<stabilize-allarches/>
</pkgmetadata>

View File

@@ -0,0 +1,20 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-build
DESCRIPTION="Virtual for Message Passing Interface (MPI) v2.0 implementation"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="cxx fortran romio threads nullmpi"
RDEPEND="|| (
>=sys-cluster/openmpi-1.10.2-r1[${MULTILIB_USEDEP},cxx?,fortran?,romio?,threads(+)?]
>=sys-cluster/mpich-3.2-r1[${MULTILIB_USEDEP},cxx?,fortran?,romio?,threads?]
sys-cluster/mpich2[${MULTILIB_USEDEP},cxx?,fortran?,romio?,threads?]
sys-cluster/nullmpi[${MULTILIB_USEDEP},cxx(-)?,fortran(-)?,romio(-)?,threads(-)?]
nullmpi? ( sys-cluster/native-mpi )
)"