1 # Created by: Eijiro Shibusawa <ej-sib@ice.uec.ac.jp>
8 MASTER_SITES= http://users.ics.forth.gr/~lourakis/levmar/
10 MAINTAINER= phd_kimberlite@yahoo.co.jp
11 COMMENT= GPL-licensed library implementing the Levenberg-Marquardt algorithm
14 LICENSE_FILE= ${WRKSRC}/LICENSE
17 USES= fortran tar:tgz uidfix
19 OPTIONS_DEFINE= DOCS EXAMPLES PROFILE
20 PROFILE_DESC= Build a profiling library
22 .include <bsd.port.pre.mk>
24 .if exists(${LOCALBASE}/lib/libgoto2p.so)
26 .elif exists(${LOCALBASE}/lib/libatlas.so)
32 .if ${WITH_BLAS} == "reference"
33 LIB_DEPENDS+= libblas.so:${PORTSDIR}/math/blas \
34 liblapack.so:${PORTSDIR}/math/lapack
37 .elif ${WITH_BLAS} == "gotoblas"
38 CFLAGS+= ${PTHREAD_CFLAGS}
39 LDFLAGS+= ${PTHREAD_LIBS} -L${LOCALBASE}/lib
40 LIB_DEPENDS+= libgoto2p.so:${PORTSDIR}/math/gotoblas
43 .elif ${WITH_BLAS} == "atlas"
44 CFLAGS+= ${PTHREAD_CFLAGS}
45 LDFLAGS+= ${PTHREAD_LIBS} -L${LOCALBASE}/lib
46 LIB_DEPENDS+= libatlas.so:${PORTSDIR}/math/atlas
48 LAPACK= -lalapack -lptcblas
52 PORTEXAMPLES= lmdemo.c Makefile.demo
53 PLIST_FILES= include/levmar.h \
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
66 PLIST_FILES+= lib/liblevmar_p.a
68 MAKE_ENV+= NO_PROFILE=
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
83 @${MKDIR} ${STAGEDIR}${DOCSDIR}
84 @(cd ${WRKSRC}/ && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
85 @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
86 @(cd ${WRKSRC}/ && ${INSTALL_DATA} ${PORTEXAMPLES} ${STAGEDIR}${EXAMPLESDIR})
89 @( cd ${WRKSRC} ; ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} Makefile.demo \
90 ${_MAKE_JOBS} ${MAKE_ARGS} ${ALL_TARGET} )
93 .include <bsd.port.post.mk>