git: 9b095bd2447f - main - science/axom: Add option group MPI with options NOMPI,MPICH,OPENMPI

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 23 Aug 2022 02:34:55 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9b095bd2447f80d0cc9aec7fe18703cdcc543a05

commit 9b095bd2447f80d0cc9aec7fe18703cdcc543a05
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-08-23 02:34:04 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-08-23 02:34:53 +0000

    science/axom: Add option group MPI with options NOMPI,MPICH,OPENMPI
---
 science/axom/Makefile  | 19 ++++++++++++++-----
 science/axom/pkg-plist | 32 ++++++++++++++++----------------
 2 files changed, 30 insertions(+), 21 deletions(-)

diff --git a/science/axom/Makefile b/science/axom/Makefile
index 0d9a1c76c253..70a50525793a 100644
--- a/science/axom/Makefile
+++ b/science/axom/Makefile
@@ -1,6 +1,7 @@
 PORTNAME=	axom
 DISTVERSIONPREFIX=	v
 DISTVERSION=	0.6.1-1671
+PORTREVISION=	1
 DISTVERSIONSUFFIX=	-g88cac2607
 CATEGORIES=	science
 
@@ -41,8 +42,10 @@ WRKSRC_SUBDIR=	src
 
 CONFLICTS_INSTALL=	libfmt # bundles and installs an incompatible libfmt version: https://github.com/LLNL/axom/issues/561, axom headers include fmt unnecessarily
 
-OPTIONS_DEFINE=		LUA MFEM MPI OPENMP
-OPTIONS_DEFAULT=	LUA MFEM MPI #OPENMP     LUA,MFEM,MPI are required for LLNL/serac
+OPTIONS_DEFINE=		LUA MFEM OPENMP
+OPTIONS_SINGLE=		MPI
+OPTIONS_SINGLE_MPI=	NOMPI MPICH OPENMPI
+OPTIONS_DEFAULT=	LUA MFEM MPICH #OPENMP     LUA,MFEM,MPI are required for LLNL/serac
 OPTIONS_SUB=		yes
 
 LUA_USES=		lua:54
@@ -54,9 +57,14 @@ MFEM_DESC=		Use mfem - library for finite element methods
 MFEM_CMAKE_ON=		-DMFEM_DIR=${LOCALBASE}
 MFEM_LIB_DEPENDS=	libmfem.so:math/mfem
 
-MPI_CMAKE_BOOL=		ENABLE_MPI
-MPI_BUILD_DEPENDS=	openmpi>0:net/openmpi
-MPI_RUN_DEPENDS=	openmpi>0:net/openmpi
+NOMPI_DESC=		Build without parallel processing support
+NOMPI_BROKEN=		https://github.com/LLNL/axom/issues/913
+
+MPICH_USES=		mpi:mpich
+MPICH_CMAKE_ON=		-DENABLE_MPI=ON
+
+OPENMPI_USES=		mpi:openmopi
+OPENMPI_CMAKE_ON=	-DENABLE_MPI=ON
 
 OPENMP_CMAKE_BOOL=	ENABLE_OPENMP
 OPENMP_BROKEN=		https://github.com/LLNL/axom/issues/911
@@ -65,5 +73,6 @@ post-install: # installs headers of a third party library sparsehash: https://gi
 	@${RM} -r ${STAGEDIR}${PREFIX}/include/sparsehash
 
 # 2 tests are known to fail, see https://github.com/LLNL/axom/issues/912
+# tests don't run in newer revisions, see https://github.com/LLNL/axom/issues/915
 
 .include <bsd.port.mk>
diff --git a/science/axom/pkg-plist b/science/axom/pkg-plist
index f7c862e272f9..7259d01e6201 100644
--- a/science/axom/pkg-plist
+++ b/science/axom/pkg-plist
@@ -1,4 +1,4 @@
-%%MPI%%bin/convert_sidre_protocol
+%%NO_NOMPI%%bin/convert_sidre_protocol
 %%MFEM%%bin/data_collection_util
 bin/mesh_tester
 include/axom/CLI11.hpp
@@ -88,15 +88,15 @@ include/axom/klee/KleeError.hpp
 include/axom/klee/Shape.hpp
 include/axom/klee/ShapeSet.hpp
 include/axom/klee/Units.hpp
-%%MPI%%include/axom/lumberjack.hpp
-%%MPI%%include/axom/lumberjack/BinaryTreeCommunicator.hpp
-%%MPI%%include/axom/lumberjack/Combiner.hpp
-%%MPI%%include/axom/lumberjack/Communicator.hpp
-%%MPI%%include/axom/lumberjack/Lumberjack.hpp
-%%MPI%%include/axom/lumberjack/MPIUtility.hpp
-%%MPI%%include/axom/lumberjack/Message.hpp
-%%MPI%%include/axom/lumberjack/RootCommunicator.hpp
-%%MPI%%include/axom/lumberjack/TextEqualityCombiner.hpp
+%%NO_NOMPI%%include/axom/lumberjack.hpp
+%%NO_NOMPI%%include/axom/lumberjack/BinaryTreeCommunicator.hpp
+%%NO_NOMPI%%include/axom/lumberjack/Combiner.hpp
+%%NO_NOMPI%%include/axom/lumberjack/Communicator.hpp
+%%NO_NOMPI%%include/axom/lumberjack/Lumberjack.hpp
+%%NO_NOMPI%%include/axom/lumberjack/MPIUtility.hpp
+%%NO_NOMPI%%include/axom/lumberjack/Message.hpp
+%%NO_NOMPI%%include/axom/lumberjack/RootCommunicator.hpp
+%%NO_NOMPI%%include/axom/lumberjack/TextEqualityCombiner.hpp
 include/axom/mint.hpp
 include/axom/mint/config.hpp
 include/axom/mint/deprecated/MCArray.hpp
@@ -197,7 +197,7 @@ include/axom/quest.hpp
 include/axom/quest/AllNearestNeighbors.hpp
 include/axom/quest/Delaunay.hpp
 include/axom/quest/Discretize.hpp
-%%MPI%%include/axom/quest/DistributedClosestPoint.hpp
+%%NO_NOMPI%%include/axom/quest/DistributedClosestPoint.hpp
 include/axom/quest/InOutOctree.hpp
 %%MFEM%%include/axom/quest/IntersectionShaper.hpp
 include/axom/quest/MeshTester.hpp
@@ -221,7 +221,7 @@ include/axom/quest/interface/inout.hpp
 include/axom/quest/interface/internal/QuestHelpers.hpp
 include/axom/quest/interface/internal/mpicomm_wrapper.hpp
 include/axom/quest/interface/signed_distance.hpp
-%%MPI%%include/axom/quest/readers/PSTLReader.hpp
+%%NO_NOMPI%%include/axom/quest/readers/PSTLReader.hpp
 include/axom/quest/readers/STLReader.hpp
 include/axom/sidre.hpp
 include/axom/sidre/core/Array.hpp
@@ -238,8 +238,8 @@ include/axom/sidre/core/MapCollection.hpp
 include/axom/sidre/core/SidreDataTypeIds.h
 include/axom/sidre/core/SidreTypes.hpp
 include/axom/sidre/core/View.hpp
-%%MPI%%include/axom/sidre/spio/IOBaton.hpp
-%%MPI%%include/axom/sidre/spio/IOManager.hpp
+%%NO_NOMPI%%include/axom/sidre/spio/IOBaton.hpp
+%%NO_NOMPI%%include/axom/sidre/spio/IOManager.hpp
 include/axom/slam.hpp
 include/axom/slam/BitSet.hpp
 include/axom/slam/BivariateMap.hpp
@@ -281,8 +281,8 @@ include/axom/slic/interface/slic.hpp
 include/axom/slic/interface/slic_macros.hpp
 include/axom/slic/internal/stacktrace.hpp
 include/axom/slic/streams/GenericOutputStream.hpp
-%%MPI%%include/axom/slic/streams/LumberjackStream.hpp
-%%MPI%%include/axom/slic/streams/SynchronizedStream.hpp
+%%NO_NOMPI%%include/axom/slic/streams/LumberjackStream.hpp
+%%NO_NOMPI%%include/axom/slic/streams/SynchronizedStream.hpp
 %%LUA%%include/axom/sol.hpp
 %%LUA%%include/axom/sol_forward.hpp
 include/axom/sparsehash/README