Tweak math/qtiplot version 0.9.8.9_8
[dports.git] / math / levmar / Makefile
1 # Created by: Eijiro Shibusawa <ej-sib@ice.uec.ac.jp>
2 # $FreeBSD$
3
4 PORTNAME=       levmar
5 PORTVERSION=    2.6
6 PORTREVISION=   3
7 CATEGORIES=     math
8 MASTER_SITES=   http://users.ics.forth.gr/~lourakis/levmar/
9
10 MAINTAINER=     phd_kimberlite@yahoo.co.jp
11 COMMENT=        GPL-licensed library implementing the Levenberg-Marquardt algorithm
12
13 LICENSE=        GPLv2
14 LICENSE_FILE=   ${WRKSRC}/LICENSE
15
16 USE_LDCONFIG=   yes
17 USES=           fortran tar:tgz uidfix
18
19 OPTIONS_DEFINE= DOCS EXAMPLES PROFILE
20 PROFILE_DESC=   Build a profiling library
21
22 .include <bsd.port.pre.mk>
23
24 .if exists(${LOCALBASE}/lib/libgoto2p.so)
25 WITH_BLAS?=     gotoblas
26 .elif exists(${LOCALBASE}/lib/libatlas.so)
27 WITH_BLAS?=     atlas
28 .else
29 WITH_BLAS?=     reference
30 .endif
31
32 .if ${WITH_BLAS} == "reference"
33 LIB_DEPENDS+=   libblas.so:${PORTSDIR}/math/blas \
34                 liblapack.so:${PORTSDIR}/math/lapack
35 BLAS=           -lblas
36 LAPACK=         -llapack
37 .elif ${WITH_BLAS} == "gotoblas"
38 CFLAGS+=        ${PTHREAD_CFLAGS}
39 LDFLAGS+=       ${PTHREAD_LIBS} -L${LOCALBASE}/lib
40 LIB_DEPENDS+=   libgoto2p.so:${PORTSDIR}/math/gotoblas
41 BLAS=           -lgoto2p
42 LAPACK=         -lgoto2p
43 .elif ${WITH_BLAS} == "atlas"
44 CFLAGS+=        ${PTHREAD_CFLAGS}
45 LDFLAGS+=       ${PTHREAD_LIBS} -L${LOCALBASE}/lib
46 LIB_DEPENDS+=   libatlas.so:${PORTSDIR}/math/atlas
47 BLAS=           -lptf77blas
48 LAPACK=         -lalapack -lptcblas
49 .endif
50
51 PORTDOCS=       README.txt
52 PORTEXAMPLES=   lmdemo.c Makefile.demo
53 PLIST_FILES=    include/levmar.h \
54         lib/liblevmar.a \
55         lib/liblevmar.so \
56         lib/liblevmar.so.2
57
58 .if ${PORT_OPTIONS:MPROFILE}
59 .if defined(NOPROFILE) || defined(NO_PROFILE) || defined(WITHOUT_PROFILE)
60 IGNORE=         you have defined WITH_PROFILE, but have also defined\
61 WITHOUT_PROFILE, NOPROFILE, or NO_PROFILE
62 .elif !exists(/usr/lib/libc_p.a)
63 IGNORE=         you have chosen WITH_PROFILE, but have not installed the\
64 base system profiling libraries
65 .endif
66 PLIST_FILES+=   lib/liblevmar_p.a
67 .else
68 MAKE_ENV+=      NO_PROFILE=
69 .endif
70
71 post-extract:
72         @${MV} ${WRKSRC}/Makefile ${WRKSRC}/Makefile.dist
73         @${CP} ${FILESDIR}/Makefile.lib ${WRKSRC}/Makefile
74         @${CP} ${FILESDIR}/Makefile.demo ${WRKSRC}/
75         @${REINPLACE_CMD} -e 's+%%CC%%+${CC}+g' \
76                 -e 's+%%CFLAGS%%+${CFLAGS} -I${LOCALBASE}/include+g' \
77                 -e 's+%%LDFLAGS%%+${LDFLAGS}+g' \
78                 -e 's+%%BLAS%%+${BLAS}+g' \
79                 -e 's+%%LAPACK%%+${LAPACK}+g' \
80                         ${WRKSRC}/Makefile.demo
81
82 post-install:
83         @${MKDIR} ${STAGEDIR}${DOCSDIR}
84         @(cd ${WRKSRC}/ && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
85         @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
86         @(cd ${WRKSRC}/ && ${INSTALL_DATA} ${PORTEXAMPLES} ${STAGEDIR}${EXAMPLESDIR})
87
88 test check: install
89         @( cd ${WRKSRC} ; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} Makefile.demo \
90         ${_MAKE_JOBS} ${MAKE_ARGS} ${ALL_TARGET} )
91         ${WRKSRC}/lmdemo
92
93 .include <bsd.port.post.mk>