summaryrefslogtreecommitdiff
path: root/graphics/mapserver/Makefile
blob: b4063e29fcdce28ff17af2a70f929559c1bcb626 (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
PORTNAME=	mapserver
DISTVERSION=	8.4.0
PORTREVISION=	1
CATEGORIES=	graphics www geography
MASTER_SITES=	https://download.osgeo.org/${PORTNAME}/ \
		https://github.com/MapServer/MapServer/releases/download/rel-${DISTVERSION:S|.|-|g}/

MAINTAINER=	wen@FreeBSD.org
COMMENT=	System for developing web-based GIS applications
WWW=		https://mapserver.org/

LICENSE=	MIT

LIB_DEPENDS=	libfreetype.so:print/freetype2 \
		libfribidi.so:converters/fribidi \
		libgdal.so:graphics/gdal \
		libgeos.so:graphics/geos \
		libgif.so:graphics/giflib \
		libharfbuzz.so:print/harfbuzz \
		libpng.so:graphics/png \
		libproj.so:graphics/proj

USES=		cmake compiler:c++11-lang cpe gnome iconv jpeg \
		localbase:ldflags
CPE_VENDOR=	osgeo
USE_GNOME=	libxml2

CMAKE_OFF=	WITH_CSHARP \
		WITH_JAVA \
		WITH_MYSQL \
		WITH_ORACLE_PLUGIN \
		WITH_ORACLESPATIAL \
		WITH_PIXMAN \
		WITH_RUBY \
		WITH_SVGCAIRO \
		WITH_THREAD_SAFETY \
		WITH_V8

CMAKE_ON=	CMAKE_SKIP_RPATH \
		WITH_FRIBIDI \
		WITH_GEOS \
		WITH_GIF \
		WITH_HARFBUZZ \
		WITH_ICONV \
		WITH_KML \
		WITH_LIBXML2 \
		WITH_OGCAPI \
		WITH_POSTGIS \
		WITH_SOS \
		WITH_WMS

CMAKE_ARGS=	-DCMAKE_DISABLE_FIND_PACKAGE_MySQL:BOOL=True \
		-DCMAKE_DISABLE_FIND_PACKAGE_PIXMAN:BOOL=True \
		-DCMAKE_DISABLE_FIND_PACKAGE_SVGCairo:BOOL=True \
		-DCMAKE_DISABLE_FIND_PACKAGE_V8:BOOL=True

OPTIONS_DEFINE=		CAIRO CURL EXEMPI FASTCGI LIBRSVG2 PERL PHPNG \
			POSTGIS PROTOBUFC PYTHON WCS WFS XMLMAPFILE
OPTIONS_DEFAULT=	CAIRO CURL FASTCGI LIBRSVG2 POSTGIS PROTOBUFC WCS WFS
OPTIONS_SUB=		yes

EXEMPI_DESC=		XMP Metadata support
PHPNG_DESC=		PHPNG (SWIG) mapscript support
PROTOBUFC_DESC=		Protocol buffers support (req. for vector tiles)
WFS_DESC=               WFS Server support
WCS_DESC=               WCS Server support
XMLMAPFILE_DESC=	XML mapfile support

CAIRO_LIB_DEPENDS=	libcairo.so:graphics/cairo
CAIRO_CMAKE_BOOL=	WITH_CAIRO
CAIRO_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_Cairo:BOOL=True

CURL_LIB_DEPENDS=	libcurl.so:ftp/curl
CURL_CMAKE_BOOL=	WITH_CURL WITH_CLIENT_WFS WITH_CLIENT_WMS
CURL_CMAKE_OFF=		-DCMAKE_DISABLE_FIND_PACKAGE_CURL:BOOL=True

EXEMPI_LIB_DEPENDS=	libexempi.so:textproc/exempi
EXEMPI_CURL_BOOL=	WITH_EXEMPI
EXEMPI_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_Exempi:BOOL=True

FASTCGI_LIB_DEPENDS=	libfcgi.so:www/fcgi
FASTCGI_CMAKE_BOOL=	WITH_FCGI
FASTCGI_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_FCGI:BOOL=True

LIBRSVG2_USE=		GNOME=librsvg2
LIBRSVG2_CMAKE_BOOL=	WITH_RSVG
LIBRSVG2_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_RSVG:BOOL=True
LIBRSVG2_IMPLIES=	CAIRO

PERL_BUILD_DEPEDNS=	swig:devel/swig
PERL_USES=		perl5
PERL_CMAKE_BOOL=	WITH_PERL

PHPNG_BUILD_DEPENDS=	swig:devel/swig
PHPNG_CMAKE_BOOL=	WITH_PHPNG

POSTGIS_USES=		pgsql
POSTGIS_CMAKE_BOOL=	WITH_POSTGIS
POSTGIS_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_PostgreSQL:BOOL=True

PROTOBUFC_LIB_DEPENDS=  libprotobuf-c.so:devel/protobuf-c
PROTOBUFC_CMAKE_BOOL=   WITH_PROTOBUFC
PROTOBUFC_CMAKE_OFF=    -DCMAKE_DISABLE_FIND_PACKAGE_ProtobufC:BOOL=True

PYTHON_BUILD_DEPENDS=	swig:devel/swig
PYTHON_USES=		python
PYTHON_CMAKE_BOOL=	WITH_PYTHON

WCS_CMAKE_BOOL=		WITH_WCS

WFS_CMAKE_BOOL=		WITH_WFS

XMLMAPFILE_USE=		GNOME=libxslt
XMLMAPFILE_CMAKE_BOOL=	WITH_XMLMAPFILE
XMLMAPFILE_CMAKE_OFF=	-DCMAKE_DISABLE_FIND_PACKAGE_LibXslt:BOOL=True

do-install:
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/legend ${STAGEDIR}${PREFIX}/bin/mapserver_legend
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/mapserv ${STAGEDIR}${PREFIX}/bin/mapserver_mapserv
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/msencrypt ${STAGEDIR}${PREFIX}/bin/mapserver_msencrypt
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/scalebar ${STAGEDIR}${PREFIX}/bin/mapserver_scalebar
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/shptree ${STAGEDIR}${PREFIX}/bin/mapserver_shptree
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/shptreetst ${STAGEDIR}${PREFIX}/bin/mapserver_shptreetst
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/shptreevis ${STAGEDIR}${PREFIX}/bin/mapserver_shptreevis
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/sortshp ${STAGEDIR}${PREFIX}/bin/mapserver_sortshp
	${INSTALL_PROGRAM} ${BUILD_WRKSRC}/tile4ms ${STAGEDIR}${PREFIX}/bin/mapserver_tile4ms
	${INSTALL_LIB} ${BUILD_WRKSRC}/libmapserver.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib
	${RLN} libmapserver.so.${DISTVERSION} ${STAGEDIR}${PREFIX}/lib/libmapserver.so.2
	${RLN} libmapserver.so.2 ${STAGEDIR}${PREFIX}/lib/libmapserver.so

do-install-PYTHON-on:
	@${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/
	${INSTALL_SCRIPT} ${BUILD_WRKSRC}/src/mapscript/python/mapscript.py ${STAGEDIR}${PYTHON_SITELIBDIR}
	${INSTALL_LIB} ${BUILD_WRKSRC}/src/mapscript/python/_mapscript.so ${STAGEDIR}${PYTHON_SITELIBDIR}

.include <bsd.port.mk>