Changeset View
Changeset View
Standalone View
Standalone View
Mk/Uses/mpi.mk
Show All 13 Lines | |||||
.if !defined(_INCLUDE_USES_MPI_MK) | .if !defined(_INCLUDE_USES_MPI_MK) | ||||
_INCLUDE_USES_MPI_MK= yes | _INCLUDE_USES_MPI_MK= yes | ||||
_valid_ARGS= mpich openmpi | _valid_ARGS= mpich openmpi | ||||
_DEFAULT_MPI= mpich | _DEFAULT_MPI= mpich | ||||
.if empty(mpi_ARGS) | . if empty(mpi_ARGS) | ||||
mpi_ARGS= ${_DEFAULT_MPI} | mpi_ARGS= ${_DEFAULT_MPI} | ||||
.endif | . endif | ||||
.if ! ${USES:Mpkgconfig} | . if ! ${USES:Mpkgconfig} | ||||
USES+= pkgconfig | USES+= pkgconfig | ||||
.endif | . endif | ||||
.if ${mpi_ARGS} == mpich | . if ${mpi_ARGS} == mpich | ||||
LIB_DEPENDS+= libmpich.so:net/mpich | LIB_DEPENDS+= libmpich.so:net/mpich | ||||
MPI_HOME= ${LOCALBASE} | MPI_HOME= ${LOCALBASE} | ||||
MPI_LIBS+= `pkgconf --libs mpich` | MPI_LIBS+= `pkgconf --libs mpich` | ||||
. if ${USES:Mfortran} | . if ${USES:Mfortran} | ||||
MPI_LIBS+= -lmpifort | MPI_LIBS+= -lmpifort | ||||
MPIFC= ${MPI_HOME}/bin/mpif90 | MPIFC= ${MPI_HOME}/bin/mpif90 | ||||
MPIF90= ${MPIFC} | MPIF90= ${MPIFC} | ||||
. endif | . endif | ||||
MPI_CFLAGS+= `pkgconf --cflags mpich` | MPI_CFLAGS+= `pkgconf --cflags mpich` | ||||
.elif ${mpi_ARGS} == openmpi | . elif ${mpi_ARGS} == openmpi | ||||
LIB_DEPENDS+= libmpi_cxx.so:net/openmpi | LIB_DEPENDS+= libmpi_cxx.so:net/openmpi | ||||
MPI_HOME= ${LOCALBASE}/mpi/openmpi | MPI_HOME= ${LOCALBASE}/mpi/openmpi | ||||
. if ${USES:Mfortran} | . if ${USES:Mfortran} | ||||
MPI_LIBS+= `pkgconf --libs ompi-fort` | MPI_LIBS+= `pkgconf --libs ompi-fort` | ||||
MPIFC= ${MPI_HOME}/bin/mpif90 | MPIFC= ${MPI_HOME}/bin/mpif90 | ||||
MPIF90= ${MPIFC} | MPIF90= ${MPIFC} | ||||
. else | . else | ||||
MPI_LIBS+= `pkgconf --libs ompi` | MPI_LIBS+= `pkgconf --libs ompi` | ||||
. endif | . endif | ||||
MPI_CFLAGS+= `pkgconf --cflags ompi` | MPI_CFLAGS+= `pkgconf --cflags ompi` | ||||
.else | . else | ||||
IGNORE= USES=mpi: invalid arguments: ${mpi_ARGS} | IGNORE= USES=mpi: invalid arguments: ${mpi_ARGS} | ||||
.endif | . endif | ||||
MPICC= ${MPI_HOME}/bin/mpicc | MPICC= ${MPI_HOME}/bin/mpicc | ||||
MPICXX= ${MPI_HOME}/bin/mpicxx | MPICXX= ${MPI_HOME}/bin/mpicxx | ||||
MPIEXEC= ${MPI_HOME}/bin/mpiexec | MPIEXEC= ${MPI_HOME}/bin/mpiexec | ||||
MPIRUN= ${MPI_HOME}/bin/mpirun | MPIRUN= ${MPI_HOME}/bin/mpirun | ||||
.if ${USES:Mcmake} || ${USES:Mcmake\:*} | . if ${USES:Mcmake} || ${USES:Mcmake\:*} | ||||
CMAKE_ARGS+= -DMPIEXEC_EXECUTABLE:FILEPATH="${MPIEXEC}" \ | CMAKE_ARGS+= -DMPIEXEC_EXECUTABLE:FILEPATH="${MPIEXEC}" \ | ||||
-DMPI_HOME:PATH="${MPI_HOME}" | -DMPI_HOME:PATH="${MPI_HOME}" | ||||
.endif | . endif | ||||
.endif | .endif |