- Update to MPICH 3.1.

- Remove bash and perl dependencies.
- Make Fortran support optional.
- Add options to select process managers.

Based on suggestions made by Matthieu Volat <matthieu.volat@ujf-grenoble.fr>
This commit is contained in:
Tijl Coosemans 2014-02-20 22:15:46 +00:00
parent 858776b1b8
commit 85ca05e264
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=345271
3 changed files with 76 additions and 42 deletions

View file

@ -1,8 +1,8 @@
# $FreeBSD$
PORTNAME= mpich
DISTVERSION= 3.1rc3
CATEGORIES= net java parallel
DISTVERSION= 3.1
CATEGORIES= net parallel
MASTER_SITES= http://www.mpich.org/static/downloads/${DISTVERSION}/
MAINTAINER= tijl@FreeBSD.org
@ -13,22 +13,57 @@ LICENSE_NAME= MPICH
LICENSE_FILE= ${WRKSRC}/COPYRIGHT
LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
BUILD_DEPENDS= bash:${PORTSDIR}/shells/bash
LIB_DEPENDS= libhwloc.so:${PORTSDIR}/devel/hwloc
RUN_DEPENDS= bash:${PORTSDIR}/shells/bash
CONFLICTS= lam-7.* mpd-[0-9]* mpiexec-0.*
CONFLICTS= lam-7.* mpd-[0-9]* mpiexec-0.* mpich2-[0-9]*
GNU_CONFIGURE= yes
USES= fortran libtool perl5 pkgconfig
USES= libtool pkgconfig
USE_LDCONFIG= yes
USE_PERL5= build
OPTIONS_DEFINE= DOCS
OPTIONS_DEFINE= DOCS FORTRAN
OPTIONS_GROUP= PM
OPTIONS_GROUP_PM= GFORKER HYDRA
OPTIONS_RADIO= DEFAULTPM
OPTIONS_RADIO_DEFAULTPM=DGFORKER DHYDRA
OPTIONS_DEFAULT= FORTRAN HYDRA DHYDRA
OPTIONS_SUB= yes
CONFIGURE_ARGS= --with-hwloc-prefix=${LOCALBASE}
CONFIGURE_ENV= FCFLAGS="${FFLAGS}"
CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
FORTRAN_CONFIGURE_ENABLE= f77 fc
FORTRAN_USES= fortran
GFORKER_DESC= Simple local process manager
HYDRA_DESC= Parallel process manager
DGFORKER_DESC= Make gforker the default process manager
DHYDRA_DESC= Make hydra the default process manager
CONFIGURE_ARGS= --with-hwloc-prefix=${LOCALBASE} ac_cv_path_BASH_SHELL=""
.include <bsd.port.options.mk>
.for pm in ${OPTIONS_GROUP_PM}
. if ${PORT_OPTIONS:M${pm}}
. if empty(PMLIST)
PMLIST= ${pm:L}
. elif ${PORT_OPTIONS:MD${pm}}
PMLIST:= ${pm:L},${PMLIST}
. else
PMLIST:= ${PMLIST},${pm:L}
. endif
. endif
.endfor
.if empty(PMLIST)
CONFIGURE_ARGS+=--without-pm
PLIST_SUB+= EXEC="@comment " EXECGFORKER="@comment "
.else
CONFIGURE_ARGS+=--with-pm=${PMLIST}
PLIST_SUB+= EXEC=""
.if ${PMLIST:M*,gforker*}
PLIST_SUB+= EXECGFORKER=""
.else
PLIST_SUB+= EXECGFORKER="@comment "
.endif
.endif
post-patch:
@${REINPLACE_CMD} \

View file

@ -1,2 +1,2 @@
SHA256 (mpich-3.1rc3.tar.gz) = 4f0673f69b29d252288e841d2e027af38b6a3621854f78a957277e6fd05d843a
SIZE (mpich-3.1rc3.tar.gz) = 11436825
SHA256 (mpich-3.1.tar.gz) = fcf96dbddb504a64d33833dc455be3dda1e71c7b3df411dfcf9df066d7c32c39
SIZE (mpich-3.1.tar.gz) = 11088555

View file

@ -1,24 +1,23 @@
bin/hydra_nameserver
bin/hydra_persist
bin/hydra_pmi_proxy
%%HYDRA%%bin/hydra_nameserver
%%HYDRA%%bin/hydra_persist
%%HYDRA%%bin/hydra_pmi_proxy
bin/mpic++
bin/mpicc
bin/mpichversion
bin/mpicxx
bin/mpiexec
bin/mpiexec.hydra
bin/mpif77
bin/mpif90
bin/mpirun
%%EXEC%%bin/mpiexec
%%EXECGFORKER%%bin/mpiexec.gforker
%%HYDRA%%bin/mpiexec.hydra
%%FORTRAN%%bin/mpif77
%%FORTRAN%%bin/mpif90
bin/mpivars
bin/parkill
include/mpi.h
include/mpi.mod
include/mpi_base.mod
include/mpi_constants.mod
include/mpi_sizeofs.mod
%%FORTRAN%%include/mpi.mod
%%FORTRAN%%include/mpi_base.mod
%%FORTRAN%%include/mpi_constants.mod
%%FORTRAN%%include/mpi_sizeofs.mod
include/mpicxx.h
include/mpif.h
%%FORTRAN%%include/mpif.h
include/mpio.h
include/mpiof.h
include/opa_config.h
@ -39,26 +38,26 @@ include/primitives/opa_gcc_sicortex.h
include/primitives/opa_nt_intrinsics.h
include/primitives/opa_sun_atomic_ops.h
include/primitives/opa_unsafe.h
lib/libfmpich.a
lib/libfmpich.la
lib/libfmpich.so
lib/libfmpich.so.11
lib/libfmpich.so.11.0.2
%%FORTRAN%%lib/libfmpich.a
%%FORTRAN%%lib/libfmpich.la
%%FORTRAN%%lib/libfmpich.so
%%FORTRAN%%lib/libfmpich.so.12
%%FORTRAN%%lib/libfmpich.so.12.0.0
lib/libmpich.a
lib/libmpich.la
lib/libmpich.so
lib/libmpich.so.11
lib/libmpich.so.11.0.2
lib/libmpich.so.12
lib/libmpich.so.12.0.0
lib/libmpichcxx.a
lib/libmpichcxx.la
lib/libmpichcxx.so
lib/libmpichcxx.so.11
lib/libmpichcxx.so.11.0.2
lib/libmpichf90.a
lib/libmpichf90.la
lib/libmpichf90.so
lib/libmpichf90.so.11
lib/libmpichf90.so.11.0.2
lib/libmpichcxx.so.12
lib/libmpichcxx.so.12.0.0
%%FORTRAN%%lib/libmpichf90.a
%%FORTRAN%%lib/libmpichf90.la
%%FORTRAN%%lib/libmpichf90.so
%%FORTRAN%%lib/libmpichf90.so.12
%%FORTRAN%%lib/libmpichf90.so.12.0.0
lib/libmpl.a
lib/libmpl.la
lib/libmpl.so