aboutsummaryrefslogtreecommitdiffstats
path: root/math/saga/Makefile
blob: 0199816d4b5e8184a1975c5f864ca37b415b35ed (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
# Created by: Rainer Hurling <rhurlin@gwdg.de>
# $FreeBSD$

PORTNAME=   saga
PORTVERSION=    2.1.0
PORTREVISION=   2
CATEGORIES= math
MASTER_SITES=   SF/saga-gis/SAGA%20-%20${PORTVERSION:C/\.[[:digit:]]*$//}/SAGA%20${PORTVERSION}
DISTNAME=   ${PORTNAME}_${PORTVERSION}_src

MAINTAINER= rhurlin@gwdg.de
COMMENT=    System for Automated Geoscientific Analyses

LICENSE=    GPLv2

LIB_DEPENDS=    proj:${PORTSDIR}/graphics/proj \
        gdal:${PORTSDIR}/graphics/gdal \
        jasper:${PORTSDIR}/graphics/jasper \
        tiff:${PORTSDIR}/graphics/tiff \
        iodbc:${PORTSDIR}/databases/libiodbc \
        las:${PORTSDIR}/devel/liblas \
        opencv_legacy:${PORTSDIR}/graphics/opencv

USE_ZIP=    yes
USE_WX=     2.9
WX_UNICODE= yes
USE_LDCONFIG=   yes
GNU_CONFIGURE=  yes
USE_AUTOTOOLS=  autoconf autoheader automake aclocal libtoolize
AUTOMAKE_ARGS=  --add-missing

# CLANG is not able to handle neither Fortran nor OpenMP
USE_GCC=    any
CFLAGS+=    -I${LOCALBASE}/include
USE_DOS2UNIX=   dlg_about.cpp

MAN1=       saga_cmd.1 saga_gui.1

DESKTOP_ENTRIES=    "SAGA GIS" "${COMMENT}" "${DATADIR}/saga.png" \
            "saga_gui" "Science;Geoscience;Math;" true

OPTIONS_DEFINE= PYTHON OPENMP HARU VIGRA
OPTIONS_DEFAULT=    OPENMP HARU VIGRA
NO_OPTIONS_SORT=    yes
OPENMP_DESC=    Enable Multiprocessing
HARU_DESC=  Enable Haru Free PDF Library
VIGRA_DESC= Enable 'Vision with Generic Algorithms' Library

.include <bsd.port.options.mk>

LDFLAGS+=   -L${LOCALBASE}/lib -lopencv_core
CONFIGURE_ARGS+=    CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"

.if ${PORT_OPTIONS:MPYTHON}
CONFIGURE_ARGS+=    --enable-python
BUILD_DEPENDS+= swig2.0:${PORTSDIR}/devel/swig20
RUN_DEPENDS+=   swig2.0:${PORTSDIR}/devel/swig20
CONFIGURE_ENV+= SWIG="${LOCALBASE}/bin/swig2.0"
USE_PYTHON= 2.6-2.7
PLIST_SUB+= SAGA_PYTHON=""
.else
CONFIGURE_ARGS+=    --disable-python
PLIST_SUB+= SAGA_PYTHON="@comment "
.endif

.if ${PORT_OPTIONS:MOPENMP}
LDFLAGS+=       ${PTHREAD_LIBS}
CONFIGURE_ARGS+=    --enable-openmp
.else
CONFIGURE_ARGS+=    --disable-openmp
.endif

.if ${PORT_OPTIONS:MHARU}
BUILD_DEPENDS+= ${LOCALBASE}/lib/libhpdf.so:${PORTSDIR}/print/libharu
RUN_DEPENDS+=   ${LOCALBASE}/lib/libhpdf.so:${PORTSDIR}/print/libharu
PLIST_SUB+= HARU=""
.else
CFLAGS+=    -D_SAGA_DONOTUSE_HARU
PLIST_SUB+= HARU="@comment "
.endif

.if ${PORT_OPTIONS:MVIGRA}
BUILD_DEPENDS+= ${LOCALBASE}/lib/libvigraimpex.so:${PORTSDIR}/graphics/vigra
RUN_DEPENDS+=   ${LOCALBASE}/lib/libvigraimpex.so:${PORTSDIR}/graphics/vigra
PLIST_SUB+= VIGRA=""
.else
PLIST_SUB+= VIGRA="@comment "
.endif

.include <bsd.port.pre.mk>

post-extract:
    @${REINPLACE_CMD} -e's|wx-config |${WX_CONFIG} |g' \
        ${WRKSRC}/configure.in \
        ${WRKSRC}/src/saga_core/saga_gui/Makefile.am \
        ${WRKSRC}/src/saga_core/saga_api/Makefile.am \
        ${WRKSRC}/src/saga_core/saga_cmd/Makefile.am \
        ${WRKSRC}/src/saga_core/saga_gdi/Makefile.am \
        ${WRKSRC}/src/modules_contrib/garden/garden_webservices/Makefile.am \
        ${WRKSRC}/src/modules_contrib/garden/garden_3d_viewer/Makefile.am \
        ${WRKSRC}/src/modules_io/shapes/io_shapes/Makefile.am \
        ${WRKSRC}/src/modules_io/grid/io_grid_image/Makefile.am \
        ${WRKSRC}/src/modules/pointcloud/pointcloud_tools/Makefile.am \
        ${WRKSRC}/src/modules/pointcloud/pointcloud_viewer/Makefile.am \
        ${WRKSRC}/src/modules/tin/tin_viewer/Makefile.am \
        ${WRKSRC}/src/modules_geostatistics/geostatistics/geostatistics_kriging/Makefile.am

post-patch:
    @${REINPLACE_CMD} -e 's|-lcv|-lopencv_legacy|g' \
        ${WRKSRC}/src/modules_images/modules_opencv/opencv/Makefile.am
    @${REINPLACE_CMD} -e 's|\[cv\]|\[opencv_legacy\]|' \
        ${WRKSRC}/configure.in
    @${REINPLACE_CMD} -e 's|\\n"), SAGA_VERSION)| (rev. 1760)\\n"), SAGA_VERSION)|' \
        ${WRKSRC}/src/saga_core/saga_gui/dlg_about.cpp
.if ${ARCH} == "i386" || ${ARCH} == "powerpc"
    @${REINPLACE_CMD} -e 's|typedef unsigned long   DWORD;|typedef unsigned int DWORD;|' \
        ${WRKSRC}/src/saga_core/saga_api/api_core.h
.endif

post-install:
    @${MKDIR} ${DATADIR}
    ${INSTALL_DATA} ${WRKSRC}/src/saga_core/saga_gui/res/saga_tip.txt ${DATADIR}
    ${INSTALL_DATA} ${WRKSRC}/src/saga_core/saga_gui/res/saga.png ${DATADIR}
# library helper files are not needed and cripple some math/qgis extensions
    @${RM} ${PREFIX}/lib/saga/*.la
    @${RM} ${PREFIX}/lib/saga/*.a
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>