aboutsummaryrefslogtreecommitdiff
path: root/science/mbdyn/Makefile
blob: 543f675615e4431db84edb577bbce8b8438a50dc (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
# Created by: Kay Lehmann <kay_lehmann@web.de>
# $FreeBSD$

PORTNAME=	mbdyn
PORTVERSION=	1.7.2
CATEGORIES=	science
MASTER_SITES=	https://www.mbdyn.org/userfiles/downloads/

MAINTAINER=	amutu@amutu.com
COMMENT=	MultiBody Dynamics analysis system

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/COPYING

BROKEN_powerpc=	Does not compile on powerpc

BUILD_DEPENDS=	libatomic_ops>0:devel/libatomic_ops
LIB_DEPENDS=	libltdl.so:devel/libltdl \
		libarpack.so:math/arpack \
		libumfpack.so:math/suitesparse

GNU_CONFIGURE=	yes
USES=		compiler:c++11-lib fortran gmake libtool:build localbase
USE_LDCONFIG=	yes
CPPFLAGS+=	-fpermissive -I${LOCALBASE}/include/suitesparse
CONFIGURE_ARGS=	--program-prefix='' --enable-multithread --with-mpi=no \
		--with-ginac=no
INSTALL_TARGET=	install-strip

OPTIONS_DEFINE=	METIS CHACO
OPTIONS_RADIO=	BLAS
OPTIONS_RADIO_BLAS=	REFERENCE GOTOBLAS ATLAS
OPTIONS_DEFAULT=	REFERENCE

ATLAS_DESC=	ATLAS
CHACO_DESC=	Enable chaco-support
GOTOBLAS_DESC=	GotoBLAS2
METIS_DESC=	Enable metis-support
REFERENCE_DESC=	Blas / Lapack

ATLAS_CONFIGURE_ON=	--with-blas=atlas
ATLAS_USES=	blaslapack:atlas

CHACO_BUILD_DEPENDS=	${LOCALBASE}/lib/libchaco.a:math/chaco
CHACO_CONFIGURE_ON=	--with-chaco=yes
CHACO_CONFIGURE_OFF=	--with-chaco=no

GOTOBLAS_CONFIGURE_ON=	--with-blas=goto --with-goto=goto2
GOTOBLAS_USES=	blaslapack:gotoblas

METIS_CONFIGURE_ON=	--with-metis=yes
METIS_CONFIGURE_OFF=	--with-metis=no
METIS_CPPFLAGS=		-I${LOCALBASE}/include/metis
METIS_LIB_DEPENDS=	libmetis.so:math/metis4

REFERENCE_CONFIGURE_ON=	--with-blas=blas
REFERENCE_USES=	blaslapack:netlib

pre-configure:
	${REINPLACE_CMD} -e '/try_lapack_LIBS=/s/-llapack/${LAPACKLIB}/' \
		-e 's/ -lxerbla//; s/-lcholmod/-lcholmod ${BLASLIB} ${LAPACKLIB} -lsuitesparseconfig/'	\
		${WRKSRC}/configure

.include <bsd.port.mk>