Date: Mon, 5 May 2014 22:20:37 GMT From: david <dking@ketralnis.com> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/189384: databases/postgis21 doesn't compile, and doesn't function when compiled without RASTER Message-ID: <201405052220.s45MKbGp081119@cgiserv.freebsd.org> Resent-Message-ID: <201405052230.s45MU0YQ014155@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 189384 >Category: ports >Synopsis: databases/postgis21 doesn't compile, and doesn't function when compiled without RASTER >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon May 05 22:30:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: david >Release: 10.0-RELEASE >Organization: >Environment: FreeBSD hm-fbsd.local 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 >Description: databases/postgis21 doesn't compile without the patch in PR-186563 (which works but hasn't been committed). But even after fixing that, postgis still doesn't work: # sudo -u pgsql psql -d "my_db" -c "create extension postgis" ERROR: could not open extension control file "/usr/local/share/postgresql/extension/postgis.control": No such file or directory And indeed, that file doesn't exist: # find /usr/local -name postgis.control | wc -l 0 Why? Because the pkg-plist for postgis21 lists half of its fundamental requirements as required by the RASTER option. An except of files that require RASTER that actually are required by *any* install of postgis: %%RASTER%%share/postgresql/extension/postgis--2.1.0rc1--%%PORTVERSION%%.sql %%RASTER%%share/postgresql/extension/postgis--2.1.0rc2--%%PORTVERSION%%.sql %%RASTER%%share/postgresql/extension/postgis--2.1.0rc3--%%PORTVERSION%%.sql %%RASTER%%share/postgresql/extension/postgis--unpackaged--%%PORTVERSION%%.sql %%RASTER%%share/postgresql/extension/postgis.control In the Makefile, %%RASTER%% is changed to comment out the plist line when RASTER isn't built: .if ${PORT_OPTIONS:MRASTER} .if ${OSVERSION} < 900033 BROKEN= Raster suppport is broken on FreeBSD < 9.x .endif LIB_DEPENDS+= libgdal.so:${PORTSDIR}/graphics/gdal CONFIGURE_ARGS+= --with-raster --with-gdalconfig=${LOCALBASE}/bin/gdal-config PLIST_SUB+= RASTER="" .else CONFIGURE_ARGS+= --without-raster PLIST_SUB+= RASTER="@comment " .endif RASTER is a very large requirement that pulls in gdal which pulls in image processing dependencies (which as you can imagine usually means pulling in X11). It's not a requirement of postgis in general >How-To-Repeat: Install databases/postgis21 (this may mean applying the long-outstanding patch from PR-186563 to resolve the compile error on iconv). Then try to use it with a command like: # sudo -u pgsql psql -d "my_db" -c "create extension postgis;" >Fix: I imagine that the fix is to go through pkg-plist and remove %%RASTER%% where it doesn't make sense. I don't know postgis well enough to tell these apart myself >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201405052220.s45MKbGp081119>