aboutsummaryrefslogtreecommitdiffstats
path: root/science/pnetcdf/Makefile
blob: 188ec2533c3e8f9f1c7e8302d2b9dffb44d2e858 (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
65
# New ports collection makefile for:    pnetcdf
# Date created:     April 30 2007
# Whom:         Chao Shin <quakelee@cn.FreeBSD.org>
#
# $FreeBSD$
#

PORTNAME=   pnetcdf
PORTVERSION=    1.1.0
CATEGORIES= science parallel
MASTER_SITES=   http://ftp.mcs.anl.gov/pub/parallel-netcdf/
DISTNAME=   parallel-netcdf-${PORTVERSION}

MAINTAINER= ports@FreeBSD.org
COMMENT=    A library providing high-performance I/O

OPTIONS=    OPENMPI "Use openmpi instead of mpich2" off

CONFLICTS=  hdf-4.*

USE_BZIP2=  yes
USE_FORTRAN=    yes
USE_GMAKE=  yes
GNU_CONFIGURE=  yes
CONFIGURE_ENV=  M4FLAGS=""

MAN1=       ncmpidump.1 ncmpigen.1
MAN3=       pnetcdf.3
PORTDOCS=   COPYRIGHT INSTALL README
PLIST_FILES=    bin/ncmpidump bin/ncmpigen bin/ncvalid \
        include/pnetcdf.h include/pnetcdf.inc include/pnetcdf.mod \
        lib/libpnetcdf.a

CFLAGS+=    -fPIC -DPIC

.include <bsd.port.pre.mk>

.if defined(WITH_OPENMPI)
BUILD_DEPENDS+= ${LOCALBASE}/mpi/openmpi/bin/mpicc:${PORTSDIR}/net/openmpi
RUN_DEPENDS+=   ${LOCALBASE}/mpi/openmpi/lib/libmpi.so:${PORTSDIR}/net/openmpi
CONFIGURE_ARGS+=--with-mpi=${LOCALBASE}/mpi/openmpi
.else
BUILD_DEPENDS+= ${LOCALBASE}/mpich2/bin/mpicc:${PORTSDIR}/net/mpich2
RUN_DEPENDS+=   ${LOCALBASE}/mpich2/lib/libmpich.so:${PORTSDIR}/net/mpich2
CONFIGURE_ARGS+=--with-mpi=${LOCALBASE}/mpich2
.endif

post-patch:
    @${REINPLACE_CMD} -e '/GENERATED/s|$$@|$$(INCDIR)|' \
        ${WRKSRC}/rules.make
    @${REINPLACE_CMD} -e 's|<malloc\.h>|<stdlib.h>|' \
        ${WRKSRC}/src/libf/mvar.[ch]

post-install:
.for file in ncmpidump ncmpigen ncvalid
    @${STRIP_CMD} ${PREFIX}/bin/${file}
.endfor
.if !defined(NOPORTDOCS)
    @${MKDIR} ${DOCSDIR}
.for file in ${PORTDOCS}
    ${INSTALL_DATA} ${WRKSRC}/${file} ${DOCSDIR}
.endfor
.endif

.include <bsd.port.post.mk>