summaryrefslogtreecommitdiff
path: root/net/py-mpi4py
diff options
context:
space:
mode:
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>