Skip to content

Commit

Permalink
databases/postgis34: Add new port
Browse files Browse the repository at this point in the history
  • Loading branch information
lbartoletti committed Oct 20, 2023
1 parent f365e5e commit eca23d3
Show file tree
Hide file tree
Showing 5 changed files with 931 additions and 0 deletions.
1 change: 1 addition & 0 deletions databases/Makefile
Expand Up @@ -647,6 +647,7 @@
SUBDIR += postgis31
SUBDIR += postgis32
SUBDIR += postgis33
SUBDIR += postgis34
SUBDIR += postgresql-cstore_fdw
SUBDIR += postgresql-idn
SUBDIR += postgresql-jdbc
Expand Down
85 changes: 85 additions & 0 deletions databases/postgis34/Makefile
@@ -0,0 +1,85 @@
PORTNAME= postgis
DISTVERSION= 3.4.0
CATEGORIES= databases geography
MASTER_SITES= https://download.osgeo.org/postgis/source/
PKGNAMESUFFIX= 34

MAINTAINER= lbartoletti@FreeBSD.org
COMMENT= Geographic objects support for PostgreSQL databases
WWW= https://postgis.net/

LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING

LIB_DEPENDS= libproj.so:graphics/proj \
libgeos.so:graphics/geos \
libjson-c.so:devel/json-c \
libgdal.so:graphics/gdal \
libpcre2-8.so:devel/pcre2

USES= alias compiler:c++11-lang cpe gmake gnome iconv:wchar_t libtool:keepla \
localbase perl5 pkgconfig pgsql:11+ shebangfix
USE_GNOME= libxml2
USE_PERL5= build

GNU_CONFIGURE= yes
CONFIGURE_ARGS= ${ICONV_CONFIGURE_BASE} NUMERICFLAGS=${PORTVERSION}
SHEBANG_FILES= extensions/address_standardizer/*.pl regress/run_test.pl \
utils/postgis_restore.pl.in utils/*.pl loader/postgis.pl
WANT_PGSQL= server

OPTIONS_DEFINE= ADDRSTD JSON LOADERGUI NLS PROTOBUF RASTER SFCGAL TOPOLOGY
OPTIONS_DEFAULT=ADDRSTD JSON NLS PROTOBUF RASTER SFCGAL TOPOLOGY LOADERGUI
OPTIONS_SUB= yes

ADDRSTD_DESC= Enable address standardizer
JSON_DESC= Enable JSON support
NLS_DESC= Enable international language support
LOADERGUI_DESC= Enable shp2pgsql-gui
PROTOBUF_DESC= Enable protocol buffers
RASTER_DESC= Enable raster support
SFCGAL_DESC= Enable sfcgal
TOPOLOGY_DESC= Topology support

ADDRSTD_CONFIGURE_WITH= address-standardizer
ADDRSTD_LIB_DEPENDS= libpcre.so:devel/pcre
ADDRSTD_VARS= WANT_PGSQL+=contrib
JSON_CONFIGURE_WITH= json
JSON_LIB_DEPENDS= libjson-c.so:devel/json-c
LOADERGUI_CONFIGURE_WITH= gui
LOADERGUI_LIB_DEPENDS= libprotobuf-c.so:devel/protobuf-c
LOADERGUI_USE= GNOME=desktop-file-utils gtk20
NLS_CONFIGURE_WITH= nls
NLS_USES= gettext
PROTOBUF_CONFIGURE_WITH= protobuf
PROTOBUF_LIB_DEPENDS= libprotobuf-c.so:devel/protobuf-c
SFCGAL_CONFIGURE_WITH= sfcgal=${LOCALBASE}/bin/sfcgal-config
SFCGAL_LIB_DEPENDS= libSFCGAL.so:databases/sfcgal
TOPOLOGY_CONFIGURE_WITH= topology
RASTER_CONFIGURE_WITH= raster

CONFLICTS_INSTALL= postgis[0-9][0-9] # lib/postgresql/address_standardizer-3.so

VER= ${PORTVERSION:R}

PLIST_SUB= PORTVERSION=${PORTVERSION}${DISTVERSIONSUFFIX} \
VER=${VER}

.include <bsd.port.pre.mk>

.if ${CHOSEN_COMPILER_TYPE} == gcc
post-patch:
${REINPLACE_CMD} -e '/^#pragma GCC diagnostic/d' \
${WRKSRC}/postgis/lwgeom_functions_basic.c \
${WRKSRC}/postgis/lwgeom_geos.c
.endif

post-install:
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/pgs* ${STAGEDIR}${PREFIX}/bin/rast* ${STAGEDIR}${PREFIX}/bin/shp*
${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/postgresql/*.so
${MKDIR} ${STAGEDIR}${DATADIR}/tiger_geocoder
(cd ${WRKSRC}/extras/tiger_geocoder && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/tiger_geocoder/ "! ( -name *\.orig -o -name *\.bak )" )
${MKDIR} ${STAGEDIR}${DATADIR}/utils
(cd ${WRKSRC}/utils/ && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/utils/ "! ( -name *\.orig -o -name *\.bak -o -name Makefile -o -name *\.in -o -name uninstall_script )" )

.include <bsd.port.post.mk>
3 changes: 3 additions & 0 deletions databases/postgis34/distinfo
@@ -0,0 +1,3 @@
TIMESTAMP = 1697517369
SHA256 (postgis-3.4.0.tar.gz) = aee9b60a6c884d354164b3096c4657f324454186607f859d1ce05d899798af9d
SIZE (postgis-3.4.0.tar.gz) = 14693348
13 changes: 13 additions & 0 deletions databases/postgis34/pkg-descr
@@ -0,0 +1,13 @@
PostGIS adds support for geographic objects to the PostgreSQL
object-relational database. In effect, PostGIS "spatially enables"
the PostgreSQL server, allowing it to be used as a backend spatial
database for geographic information systems (GIS), much like ESRI's
SDE or Oracle's Spatial extension. PostGIS follows the OpenGIS
"Simple Features Specification for SQL" and has been certified as
compliant with the "Types and Functions" profile.

PostGIS development was started by Refractions Research as a project
in open source spatial database technology. PostGIS is released
under the GNU General Public License. PostGIS continues to be
developed by a group of contributors led by a Project Steering
Committee and new features continue to be added.

0 comments on commit eca23d3

Please sign in to comment.