aboutsummaryrefslogtreecommitdiffstats
path: root/lang/opencoarrays/Makefile
blob: cde8b1a5dd3bd908baeb4a24955a2934e7e8a57d (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
# Created by: Anton Shterenlikht
# $FreeBSD$

PORTNAME=   opencoarrays
PORTVERSION=    1.8.4
CATEGORIES= lang parallel

MAINTAINER= mexas@bris.ac.uk
COMMENT=    Transport layer for coarray Fortran compilers

LICENSE=    BSD3CLAUSE
LICENSE_FILE=   ${WRKSRC}/LICENSE

BUILD_DEPENDS=  bash:shells/bash
RUN_DEPENDS=    bash:shells/bash

USE_GITHUB= yes
GH_ACCOUNT= sourceryinstitute
GH_PROJECT= OpenCoarrays

USES=       cmake:outsource fortran shebangfix
PLIST_SUB=  GCC_VER=${_GCC_VER}
SHEBANG_FILES=  src/extensions/caf-head \
        src/extensions/cafrun-head

OPTIONS_SINGLE=     MPI
OPTIONS_SINGLE_MPI= MPICH OPENMPI OPENMPI2
OPTIONS_DEFAULT=    MPICH

MPICH_DESC=     Parallel processing support via MPICH
MPICH_BUILD_DEPENDS=    mpif90:net/mpich
MPICH_RUN_DEPENDS=  mpif90:net/mpich

OPENMPI_BUILD_DEPENDS=  ${LOCALBASE}/mpi/openmpi/bin/mpif90:net/openmpi
OPENMPI_RUN_DEPENDS=    ${LOCALBASE}/mpi/openmpi/bin/mpif90:net/openmpi
OPENMPI_CONFIGURE_ENV=  MPI_HOME=${LOCALBASE}/mpi/openmpi

OPENMPI2_DESC=      Parallel processing support via Open MPI v2
OPENMPI2_BUILD_DEPENDS= ${LOCALBASE}/mpi/openmpi2/bin/mpif90:net/openmpi2
OPENMPI2_RUN_DEPENDS=   ${LOCALBASE}/mpi/openmpi2/bin/mpif90:net/openmpi2
OPENMPI2_CONFIGURE_ENV= MPI_HOME=${LOCALBASE}/mpi/openmpi2

.include <bsd.port.options.mk>

.if ${GCC_DEFAULT:R} < 5
IGNORE=     This port requires GCC 5 or higher.  Add\
        DEFAULT_VERSIONS+=gcc=5 to /etc/make.conf
.endif

post-patch:
    @${REINPLACE_CMD} '/mod_install/s/$${CMAKE_Fortran_COMPILER_VERSION}/${_GCC_VER}/' \
        ${WRKSRC}/src/mpi/CMakeLists.txt

do-test:
    (cd ${TEST_WRKSRC} && ctest)

.include <bsd.port.mk>