summaryrefslogtreecommitdiff
path: root/net/py-mpi4py
diff options
context:
space:
mode:
authorThierry Thomas <thierry@FreeBSD.org>2023-08-04 23:05:10 +0200
committerThierry Thomas <thierry@FreeBSD.org>2023-08-05 10:20:45 +0200
commit6d82be95de6c9dee7264b2b349823bd31a58e943 (patch)
tree42be72324cedc281b49e3fb605188f93b67134c2 /net/py-mpi4py
parenttextproc/jade: Add license information (diff)
net/py-mpi4py: add a slave port depending on MPICH
Sometimes we need mpi4py packaged against mpich, with Fortran enabled. Do not create a flavor, because there already exist flavors for Python versions, therefore a slave port seems more appropriate. Once committed, I shall add a line in Mk/Uses/mpi.mk to grab the right dependency according to the choice of MPI. Bump PORTVERSION for people using net/py-mpi4py built from ports with the non-default MPICH option. Also change WWW: the project on bitbucket has been archived. PR: 272949 Approved by: wen@ (maintainer)
Diffstat (limited to 'net/py-mpi4py')
-rw-r--r--net/py-mpi4py/Makefile28
1 files changed, 16 insertions, 12 deletions
diff --git a/net/py-mpi4py/Makefile b/net/py-mpi4py/Makefile
index 681d48c1ed09..5c26ca7a2360 100644
--- a/net/py-mpi4py/Makefile
+++ b/net/py-mpi4py/Makefile
@@ -1,13 +1,13 @@
PORTNAME= mpi4py
DISTVERSION= 3.1.4
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= net parallel python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= wen@FreeBSD.org
-COMMENT= Python bindings for MPI
-WWW= https://bitbucket.org/mpi4py/mpi4py/
+COMMENT?= Python bindings for MPI (OpenMPI)
+WWW= https://github.com/mpi4py/mpi4py
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE.rst
@@ -16,16 +16,22 @@ USES= python
USE_PYTHON= distutils cython autoplist concurrent
LDFLAGS+= ${MPI_LIBS}
+SLAVEDIRS= net/py-mpi4py-mpich
+
OPTIONS_DEFINE= DOCS MANPAGES
-OPTIONS_SINGLE= MP
-OPTIONS_SINGLE_MP= MPICH OPENMPI
-OPTIONS_DEFAULT= OPENMPI # the only non-failing MPI implementation
-MP_DESC= MPI Implementation
-MPICH_USES= fortran mpi:mpich
-MPICH_LDFLAGS= ${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgcc_s.so
+MP?= OPENMPI
-OPENMPI_USES= mpi:openmpi
+.if ${MP} == "OPENMPI"
+USES+= mpi:openmpi
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}mpi4py-mpich-3*
+.elif ${MP} == "MPICH"
+USES+= fortran mpi:mpich
+LDFLAGS+= ${LOCALBASE}/lib/gcc${GCC_DEFAULT}/libgcc_s.so
+CONFLICTS_INSTALL= ${PYTHON_PKGNAMEPREFIX}mpi4py-3*
+.else
+BROKEN= invalid parameter MP
+.endif
PORTDOCS= *
@@ -48,8 +54,6 @@ post-install:
@cd ${STAGEDIR}${PYTHON_SITELIBDIR}/mpi4py && ${STRIP_CMD} dl*.so MPI*.so lib-pmpi/libvt-hyb*.so lib-pmpi/libvt*.so lib-pmpi/libvt-mpi*.so lib-pmpi/libmpe*.so
do-test:
- # tests fail with MPICH2=on: https://bitbucket.org/mpi4py/mpi4py/issues/110/tests-fail-with-mpich2-on-freebsd-error
- # tests fail with OPENMPI2=on: https://bitbucket.org/mpi4py/mpi4py/issues/109/tests-fail-with-openmpi2-on-freebsd
@cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
.include <bsd.port.mk>