summaryrefslogtreecommitdiff
path: root/science/gnudatalanguage/Makefile
blob: bfe754b61c80f13f01c64205ca24038e41b34cda (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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
# Created by: thierry@pompo.net
# $FreeBSD$

PORTNAME=	gnudatalanguage
DISTVERSION=	0.9.3
PORTREVISION=	1
CATEGORIES=	science lang
MASTER_SITES=	SF/${PORTNAME}/gdl/${DISTVERSION}
.if defined(BUILD_PYTHON_MODULE)
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
.endif
DISTNAME=	gdl-${DISTVERSION}

MAINTAINER=	thierry@FreeBSD.org
COMMENT?=	GDL, a free IDL compatible incremental compiler

LICENSE=	GPLv2

#---------------------------------------------------------------------------
# You may define these options:
#
# - WITHOUT_IMAGEMAGICK:	remove ImageMagick support
# - WITHOUT_HDF5:		remove HDF5 support
# - WITHOUT_NETCDF:		remove netCDF support
# - WITHOUT_HDF:		remove HDF 4 suppport (conflict with netCDF)
# - WITHOUT_PYTHON:		don't build the interface to python
# - WITH_FFTW3:			faster fft routine than GSL
#
#---------------------------------------------------------------------------

LIB_DEPENDS+=	plplotd.11:${PORTSDIR}/math/plplot	\
		ps.4:${PORTSDIR}/print/pslib		\
		gsl.16:${PORTSDIR}/math/gsl		\
		dps.0:${PORTSDIR}/x11/dgs

USE_GCC=	4.6+
USE_WX=		2.8
USES=		pkgconfig
GNU_CONFIGURE=	yes
# Disable ncurses and readline from ports
CONFIGURE_FLAGS=--with_ncursesdir=/usr --with_readlinedir=/usr
CONFIGURE_ENV=	wxConfig=${WX_CONFIG}
CPPFLAGS+=	${CFLAGS} ${PTHREAD_CFLAGS} -I${LOCALBASE}/include -I${LOCALBASE}/include/ImageMagick
LDFLAGS+=	${PTHREAD_LIBS} -L${LOCALBASE}/lib

SLAVEDIRS=	science/py-gnudatalanguage

.if defined(BUILD_PYTHON_MODULE)
CATEGORIES+=	python
CONFIGURE_ARGS+=--enable-python_module --with-openmp=no
PLIST_FILES=	%%PYTHON_SITELIBDIR%%/GDL.so
PLIST_SUB+=	MASTER="@comment "
.else
MAN1=		gdl.1
PLIST_SUB+=	MASTER=""
.endif

.if !defined(WITHOUT_IMAGEMAGICK)
LIB_DEPENDS+=	MagickWand:${PORTSDIR}/graphics/ImageMagick
CONFIGURE_ARGS+=--with-Magick=${LOCALBASE}
.else
CONFIGURE_ARGS+=--with-Magick=no
.endif

.if !defined(WITHOUT_HDF5)
LIB_DEPENDS+=	hdf5.7:${PORTSDIR}/science/hdf5-18
CONFIGURE_ARGS+=--with-hdf5=${LOCALBASE}
.else
CONFIGURE_ARGS+=--with-hdf5=no
.endif

.if !defined(WITHOUT_NETCDF)
LIB_DEPENDS+=	netcdf.4:${PORTSDIR}/science/netcdf
CONFIGURE_ARGS+=--with-netcdf=${LOCALBASE} --with-hdf=no
.else
CONFIGURE_ARGS+=--with-netcdf=no
. if !defined(WITHOUT_HDF)
LIB_DEPENDS+=	df.1:${PORTSDIR}/science/hdf
CONFIGURE_ARGS+=--with-hdf=${LOCALBASE}
. else
CONFIGURE_ARGS+=--with-hdf=no
. endif
.endif

.if !defined(WITHOUT_PYTHON) || defined(BUILD_PYTHON_MODULE)
USE_PYTHON=	-2.7
BUILD_DEPENDS+=	${PYNUMPY}
RUN_DEPENDS+=	${PYNUMPY} \
		${PYTHON_PKGNAMEPREFIX}matplotlib>0:${PORTSDIR}/math/py-matplotlib
CONFIGURE_ENV+=	PYTHON_VERSION=${_PYTHON_VERSION}
CONFIGURE_ARGS+=--with-python=${PYTHONBASE}
.else
CONFIGURE_ARGS+=--with-python=no
.endif

.include <bsd.port.pre.mk>

.if ${OSVERSION} < 800503
BROKEN=	Does not build with ancient binutils
.endif

.if defined(PACKAGE_BUILDING) || exists(${LOCALBASE}/lib/libfftw3.so)
WITH_FFTW3=	yes
.endif
.if defined(WITH_FFTW3)
LIB_DEPENDS+=	fftw3:${PORTSDIR}/math/fftw3		\
		fftw3f:${PORTSDIR}/math/fftw3-float
CONFIGURE_ARGS+=--with-fftw=${LOCALBASE}
.endif

pre-configure:
	${REINPLACE_CMD} -e 's|wx-config|${WX_CONFIG}|g'	\
		${WRKSRC}/${CONFIGURE_SCRIPT}

.if defined(BUILD_PYTHON_MODULE)
do-install:
	${INSTALL_DATA} ${WRKSRC}/src/.libs/libgdl.so.0 ${PYTHON_SITELIBDIR}/GDL.so
.endif

.if !defined(BUILD_PYTHON_MODULE)
post-install:
. if !defined(NOPORTEXAMPLES)
	${MKDIR} ${EXAMPLESDIR}/testsuite
	(cd ${WRKSRC}/testsuite && ${COPYTREE_SHARE} \* ${EXAMPLESDIR}/testsuite/)
	${RM} ${EXAMPLESDIR}/testsuite/Makefile.in.orig
	@${ECHO_MSG} "===> Examples installed in ${EXAMPLESDIR}."
. endif
.endif

.if defined(MAINTAINER_MODE)
regression-test:	install
. if defined(BUILD_PYTHON_MODULE)
	@${ECHO_CMD} 'import GDL' > ${WRKDIR}/testgdl.py
	@${ECHO_CMD} 'print GDL.function("sin",(1,))' >> ${WRKDIR}/testgdl.py
	${PYTHON_CMD} ${WRKDIR}/testgdl.py
. else
	@${ECHO_CMD} ".RUN ${EXAMPLESDIR}/testsuite/test_suite.pro"	\
		> ${WRKDIR}/testgdl
	@${ECHO_CMD} "exit" >> ${WRKDIR}/testgdl
	${PREFIX}/bin/gdl < ${WRKDIR}/testgdl
. endif
.endif

.include <bsd.port.post.mk>