# Created by: Douglas K. Rand # $FreeBSD$ PORTNAME= mapserver PORTVERSION= 7.2.1 CATEGORIES= graphics www geography MASTER_SITES= https://download.osgeo.org/mapserver/ MAINTAINER= wen@FreeBSD.org COMMENT= System for developing web-based GIS applications LICENSE= MIT LIB_DEPENDS= libgd.so:graphics/gd \ libproj.so:graphics/proj \ libpng.so:graphics/png \ libgif.so:graphics/giflib \ libharfbuzz.so:print/harfbuzz \ libsvg.so:graphics/libsvg \ libfreetype.so:print/freetype2 \ libprotobuf-c.so:devel/protobuf-c USES= cpe cmake jpeg CPE_VENDOR= umn USE_GNOME= libxml2 LDFLAGS+= -L${LOCALBASE} -pthread CMAKE_ARGS+= -DCMAKE_PREFIX_PATH=${LOCALBASE} \ -DCMAKE_INSTALL_PREFIX=${PREFIX} \ -DWITH_GD=1 MAKE_JOBS_UNSAFE= yes OPTIONS_DEFINE= FRIBIDI CURL GDAL GEOS KML POSTGIS PHP PERL PYTHON \ WMS WFS WCS FASTCGI DEBUG CAIRO CAIRO_SVG \ CLIENT_WMS CLIENT_WFS OPTIONS_DEFAULT= FRIBIDI GDAL GEOS CLIENT_WMS CLIENT_WFS KML CAIRO_SVG CAIRO_SVG_DESC= Cairo SVG parser support GDAL_DESC= GDAL library support FRIBIDI_DESC= Fribidi library support KML_DESC= KML support WMS_DESC= WMS Server support WFS_DESC= WFS Server support WCS_DESC= WCS Server support .include .if ${PORT_OPTIONS:MPYTHON} USES+= python:2.7 BUILD_DEPENDS+= swig3.0:devel/swig30 BINARY_ALIAS= swig=swig3.0 CMAKE_ARGS+= -DWITH_PYTHON=yes PLIST_SUB+= PYTHON="" MAP_EGG= MapScript-${PORTVERSION}-${PYTHON_VERSION:S/thon//} PLIST_SUB+= MAP_EGG=${MAP_EGG} .else PLIST_SUB+= PYTHON="@comment " .endif .if ${PORT_OPTIONS:MCAIRO} LIB_DEPENDS+= libcairo.so:graphics/cairo \ libexpat.so:textproc/expat2 CMAKE_ARGS+= -DWITH_CAIRO=1 .else CMAKE_ARGS+= -DWITH_CAIRO=0 .endif .if ${PORT_OPTIONS:MFRIBIDI} LIB_DEPENDS+= libfribidi.so:converters/fribidi CMAKE_ARGS+= -DWITH_FRIBIDI=1 .else CMAKE_ARGS+= -DWITH_FRIBIDI=0 .endif .if ${PORT_OPTIONS:MCAIRO_SVG} LIB_DEPENDS+= libcairo.so:graphics/cairo \ libsvg-cairo.so:graphics/libsvg-cairo \ libexpat.so:textproc/expat2 CMAKE_ARGS+= -DWITH_SVGCAIRO=1 -DWITH_CAIRO=1 USES+= pkgconfig .else CMAKE_ARGS+= -DWITH_SVGCAIRO=0 .endif .if ${PORT_OPTIONS:MKML} LIB_DEPENDS+= libxml2.so:textproc/libxml2 CMAKE_ARGS+= -DWITH_KML=1 .else CMAKE_ARGS+= -DWITH_KML=0 .endif .if ${PORT_OPTIONS:MWMS} CMAKE_ARGS+= -DWITH_WMS=1 .else CMAKE_ARGS+= -DWITH_WMS=0 .endif .if ${PORT_OPTIONS:MWFS} CMAKE_ARGS+= -DWITH_WFS=1 .else CMAKE_ARGS+= -DWITH_WFS=0 .endif .if ${PORT_OPTIONS:MWCS} CMAKE_ARGS+= -DWITH_WCS=1 .else CMAKE_ARGS+= -DWITH_WCS=0 .endif .if ${PORT_OPTIONS:MGDAL} USES+= iconv LIB_DEPENDS+= libgdal.so:graphics/gdal CMAKE_ARGS+= -DWITH_GDAL=1 .else CMAKE_ARGS+= -DWITH_GDAL=0 .endif .if ${PORT_OPTIONS:MGEOS} LIB_DEPENDS+= libgeos.so:graphics/geos CMAKE_ARGS+= -DWITH_GEOS=1 .else CMAKE_ARGS+= -DWITH_GEOS=0 .endif .if ${PORT_OPTIONS:MPOSTGIS} USES+= pgsql CMAKE_ARGS+= -DWITH_POSTGIS=1 .else CMAKE_ARGS+= -DWITH_POSTGIS=0 .endif .if ${PORT_OPTIONS:MPHP} USES+= php:build CMAKE_ARGS+= -DWITH_PHP=1 PLIST_SUB+= PHP="" .else CMAKE_ARGS+= -DWITH_PHP=0 PLIST_SUB+= PHP="@comment " .endif .if ${PORT_OPTIONS:MPERL} USES+= perl5 BUILD_DEPENDS= swig3.0:devel/swig30 CMAKE_ARGS+= -DWITH_PERL=1 PLIST_SUB+= PERL="" BINARY_ALIAS= swig=swig3.0 .else CMAKE_ARGS+= -DWITH_PERL=0 PLIST_SUB+= PERL="@comment " .endif .if ${PORT_OPTIONS:MCURL} LIB_DEPENDS+= libcurl.so:ftp/curl CMAKE_ARGS+= -DWITH_CURL=1 .else CMAKE_ARGS+= -DWITH_CURL=0 .endif .if ${PORT_OPTIONS:MFASTCGI} BUILD_DEPENDS+= ${LOCALBASE}/bin/cgi-fcgi:www/fcgi CMAKE_ARGS+= -DWITH_FCGI=1 .else CMAKE_ARGS+= -DWITH_FCGI=0 .endif .if ${PORT_OPTIONS:MDEBUG} CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Debug .else CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release .endif PROG_FILES= legend scalebar shp2img shptree shptreetst shptreevis \ sortshp msencrypt tile4ms mapserv .if ${PORT_OPTIONS:MCLIENT_WMS} LIB_DEPENDS+= libcurl.so:ftp/curl LIB_DEPENDS+= libgdal.so:graphics/gdal CMAKE_ARGS+= -DWITH_CURL=1 -DWITH_GDAL=1 -DWITH_CLIENT_WMS=1 .endif .if ${PORT_OPTIONS:MCLIENT_WFS} LIB_DEPENDS+= libcurl.so:ftp/curl LIB_DEPENDS+= libgdal.so:graphics/gdal CMAKE_ARGS+= -DWITH_CURL=1 -DWITH_GDAL=1 -DWITH_CLIENT_WFS=1 .endif do-install: .for f in ${PROG_FILES} ${STRIP_CMD} ${BUILD_WRKSRC}/${f} ${INSTALL_SCRIPT} ${BUILD_WRKSRC}/${f} ${STAGEDIR}${PREFIX}/bin .endfor ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/libmapserver.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib @${LN} -sf libmapserver.so.${PORTVERSION} ${STAGEDIR}${PREFIX}/lib/libmapserver.so.2 @${LN} -sf libmapserver.so.2 ${STAGEDIR}${PREFIX}/lib/libmapserver.so do-install-PHP-on: @${MKDIR} ${STAGEDIR}${PREFIX}/lib/php/${PHP_EXT_DIR} ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/mapscript/php/php_mapscript.so \ ${STAGEDIR}${PREFIX}/lib/php/${PHP_EXT_DIR}/ @${MKDIR} ${STAGEDIR}${PREFIX}/etc/php @${ECHO_CMD} "extension=php_mapscript.so" > ${STAGEDIR}${PREFIX}/etc/php/ext-20-php_mapscript.ini do-install-PYTHON-on: @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/ (cd ${BUILD_WRKSRC}/mapscript/python && ${CP} mapscript.py _mapscript.so ${STAGEDIR}${PYTHON_SITELIBDIR}/) .include