aboutsummaryrefslogtreecommitdiffstats
path: root/science/meep/Makefile
blob: e419b2f0ef2a24a703882727cca1496959e0fad1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# Created by: Stas Timokhin <devel@stasyan.com>
# $FreeBSD$

PORTNAME=   meep
PORTVERSION=    1.2.1
PORTREVISION=   2
CATEGORIES= science
MASTER_SITES=   http://ab-initio.mit.edu/meep/

MAINTAINER= devel@stasyan.com
COMMENT=    FDTD simulation software to model electromagnetic systems

BUILD_DEPENDS=  harminv:${PORTSDIR}/science/harminv \
        gsed:${PORTSDIR}/textproc/gsed
LIB_DEPENDS=    libguile-2.0.so:${PORTSDIR}/lang/guile2 \
        libblas.so:${PORTSDIR}/math/blas \
        libctl.so:${PORTSDIR}/science/libctl \
        libhdf5.so:${PORTSDIR}/science/hdf5
RUN_DEPENDS=    harminv:${PORTSDIR}/science/harminv

GNU_CONFIGURE=  yes
USE_GCC=    yes
USES=       fortran gettext gmake iconv libtool pathfix pkgconfig
CPPFLAGS+=  -I${LOCALBASE}/include
LDFLAGS+=   -L${LOCALBASE}/lib
MAKE_ARGS+= CC="${CC}" CXX="${CXX}"

OPTIONS_RADIO=      MPI
OPTIONS_RADIO_MPI=  OPENMPI MPICH2
OPTIONS_DEFAULT=    ${MPI_DEFAULT}
OPENMPI_DESC=       MPI support (with OpenMPI)

.include <bsd.port.pre.mk>

.if ${OPSYS} == FreeBSD
.  if ${OSVERSION} < 1000000
MPI_DEFAULT=    OPENMPI
.  else
MPI_DEFAULT=    MPICH2
.  endif
.endif

.if ${PORT_OPTIONS:MMPICH2} || ${PORT_OPTIONS:MOPENMPI}
CONFIGURE_ARGS+=    --with-mpi
PLIST_SUB+=     MPI="" NOMPI="@comment "
.else
CONFIGURE_ARGS+=    --without-mpi
PLIST_SUB+=     MPI="@comment " NOMPI=""
.endif

.if ${PORT_OPTIONS:MMPICH2}
LIB_DEPENDS+=   libmpich.so.8:${PORTSDIR}/net/mpich2
CONFIGURE_ENV+= MPICXX=${LOCALBASE}/bin/mpicc
CFLAGS+=    -I${LOCALBASE}/include
.endif

.if ${PORT_OPTIONS:MOPENMPI}
BUILD_DEPENDS+= ${LOCALBASE}/mpi/openmpi/bin/mpiCC:${PORTSDIR}/net/openmpi
RUN_DEPENDS+=   ${LOCALBASE}/mpi/openmpi/bin/mpirun:${PORTSDIR}/net/openmpi
CONFIGURE_ENV+= MPICXX=${LOCALBASE}/mpi/openmpi/bin/mpiCC
CFLAGS+=    -I${LOCALBASE}/mpi/openmpi/include
.endif

.include <bsd.port.post.mk>