summaryrefslogtreecommitdiff
path: root/math/parmetis/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'math/parmetis/Makefile')
-rw-r--r--math/parmetis/Makefile40
1 files changed, 24 insertions, 16 deletions
diff --git a/math/parmetis/Makefile b/math/parmetis/Makefile
index a1580bac1b57..d2cd59a38dc9 100644
--- a/math/parmetis/Makefile
+++ b/math/parmetis/Makefile
@@ -2,15 +2,13 @@
# $FreeBSD$
PORTNAME= ParMetis
-PORTVERSION= 4.0
-PORTREVISION= 11
+PORTVERSION= 4.0.3
CATEGORIES= math parallel
-MASTER_SITES= http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/%SUBDIR%/
-MASTER_SITE_SUBDIR= . OLD
+MASTER_SITES= http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/
DISTNAME= ${PORTNAME:tl}-${PORTVERSION}
MAINTAINER= ports@FreeBSD.org
-COMMENT= Package for parallel (mpi) unstructured graph partitioning
+COMMENT= Package for parallel (MPI) unstructured graph partitioning
LICENSE= METIS
LICENSE_NAME= University of Minnesota METIS License
@@ -20,6 +18,15 @@ LICENSE_PERMS= auto-accept
OPTIONS_DEFINE= OPENMPI DOCS
OPENMPI_DESC= Use openmpi instead of mpich2
+OPENMPI_BUILD_DEPENDS= ${LOCALBASE}/mpi/openmpi/bin/mpicc:net/openmpi
+OPENMPI_RUN_DEPENDS= ${LOCALBASE}/mpi/openmpi/bin/mpirun:net/openmpi
+OPENMPI_VARS= MPICC=${LOCALBASE}/mpi/openmpi/bin/mpicc \
+ MPICXX=${LOCALBASE}/mpi/openmpi/bin/mpicxx
+OPENMPI_BUILD_DEPENDS_OFF= ${LOCALBASE}/bin/mpicc:net/mpich2
+OPENMPI_RUN_DEPENDS_OFF= ${LOCALBASE}/bin/mpirun:net/mpich2
+OPENMPI_VARS_OFF= MPICC=${LOCALBASE}/bin/mpicc \
+ MPICXX=${LOCALBASE}/bin/mpicxx
+
USES= cmake:noninja gmake
PLIST_FILES= include/parmetis/metis.h \
@@ -30,16 +37,6 @@ PLIST_FILES= include/parmetis/metis.h \
.include <bsd.port.options.mk>
-.if ${PORT_OPTIONS:MOPENMPI}
-BUILD_DEPENDS+= ${LOCALBASE}/mpi/openmpi/bin/mpicc:net/openmpi
-RUN_DEPENDS+= ${LOCALBASE}/mpi/openmpi/bin/mpirun:net/openmpi
-MPICC= ${LOCALBASE}/mpi/openmpi/bin/mpicc
-.else
-BUILD_DEPENDS+= ${LOCALBASE}/bin/mpicc:net/mpich2
-RUN_DEPENDS+= ${LOCALBASE}/bin/mpirun:net/mpich2
-MPICC= ${LOCALBASE}/bin/mpicc
-.endif
-
post-patch:
@${REINPLACE_CMD} -e \
's|BUILDDIR =.*|BUILDDIR = build| ; \
@@ -47,10 +44,20 @@ post-patch:
s|$$(MAKEFLAGS)||' ${WRKSRC}/Makefile
@${REINPLACE_CMD} -e \
's|"-O3"|""|' ${WRKSRC}/metis/GKlib/GKlibSystem.cmake
+.if ((${ARCH}=="amd64") || (${ARCH}=="aarch64") || (${ARCH}=="sparc64") || (${ARCH}=="ppc64") || (${ARCH}=="ia64"))
+ @${REINPLACE_CMD}-e \
+ 's|IDXTYPEWIDTH 32|IDXTYPEWIDTH 64|' \
+ ${WRKSRC}/metis/include/metis.h
+.endif
+
+post-patch-OPENMPI-on:
+ @${REINPLACE_CMD} -e \
+ '/target_link_libraries(.* parmetis)/s/\(parmetis\)/& -lexecinfo/' \
+ ${WRKSRC}/programs/CMakeLists.txt
do-configure:
@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_FLAGS} \
- ${MAKEFILE} config prefix="${PREFIX}" cc="${MPICC}"
+ ${MAKEFILE} config prefix="${PREFIX}" cc="${MPICC}" cxx="${MPICXX}"
do-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/include/parmetis \
@@ -63,6 +70,7 @@ do-install:
${STAGEDIR}${PREFIX}/lib/parmetis
${INSTALL_DATA} ${WRKSRC}/build/libparmetis/libparmetis.a \
${STAGEDIR}${PREFIX}/lib/parmetis
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/manual/manual.pdf ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>