aboutsummaryrefslogtreecommitdiffstats
path: root/math/arpack-ng/Makefile
blob: 1f81ad3571de3b7e42ea19c552929d4619f0968e (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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Created by: bf <bf@FreeBSD.org>
# $FreeBSD$

PORTNAME=   arpack-ng
PORTVERSION=    3.4.0
PORTREVISION=   2
CATEGORIES= math

MAINTAINER= ports@FreeBSD.org
COMMENT?=   Revised Argand library for solving large-scale eigenvalue problems

LICENSE=    BSD3CLAUSE
LICENSE_FILE=   ${WRKSRC}/COPYING

USE_GITHUB= yes
GH_ACCOUNT= opencollab

USES=       autoreconf:build fortran libtool
GNU_CONFIGURE=  yes
CONFIGURE_ARGS= --with-blas="${BLAS}" \
        --with-lapack="${LAPACK}" \
        ${MPICH_ARG}
MPICH_ARG?= --disable-mpi
LDFLAGS+=   -L${LOCALBASE}/lib
TEST_TARGET=    check
USE_LDCONFIG=   yes

PORTEXAMPLES=   *

CONFLICTS=  arpack-[0-9]*
CONFLICTS_INSTALL?= arpack-ng-mpich-3.*
SLAVEDIRS=  math/arpack-ng-mpich

OPTIONS_DEFINE= DOCS EXAMPLES
OPTIONS_SUB=    yes

WITH_BLAS?= blas

.if ${WITH_BLAS} == "gotoblas"
BLAS=       -lgoto2p
LAPACK=     -lgoto2p
LIB_DEPENDS+=   libgoto2p.so:math/gotoblas
.elif ${WITH_BLAS} == "atlas"
BLAS=       -lptf77blas
LAPACK=     -lalapack -lptcblas
LIB_DEPENDS+=   libptf77blas.so:math/atlas
.elif ${WITH_BLAS} == "blas"
BLAS=       -lblas
LAPACK=     -llapack
LIB_DEPENDS+=   libblas.so:math/blas \
        liblapack.so:math/lapack
.else
IGNORE=     unknown value of WITH_BLAS: ${WITH_BLAS}
.endif

post-patch:
    @${REINPLACE_CMD} -Ee 's|\(libdir\)(/pkgconfig)|(prefix)/libdata\1|' \
    ${WRKSRC}/Makefile.am

pre-configure:
    @cd ${WRKSRC}; ./bootstrap
    @${REINPLACE_CMD} -e '/BLAS_LIBS.*LAPACK_LIBS/ \
    {s/LAPACK_LIBS/BLAS_LIBS/;s/BLAS_LIBS/LAPACK_LIBS/;}' \
    ${WRKSRC}/Makefile.in \
    ${WRKSRC}/arpack.pc.in \
    ${WRKSRC}/TESTS/Makefile.in

post-build:
    @cd ${WRKSRC}/SRC/.libs; ${STRIP_CMD} libarpack.so.*.*

post-install-DOCS-on:
    @${MKDIR} ${STAGEDIR}${DOCSDIR}
    cd ${WRKSRC}/DOCUMENTS && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR}

post-install-EXAMPLES-on:
    @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
    cd ${WRKSRC}/EXAMPLES && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}

.include <bsd.port.mk>