wiki:RFC6

Version 7 (modified by robe, 2 years ago) (diff)

--

GEOS RFC 6: Require explicit configure to use the C++ API and ship c++ headers

RFC 6: Discourage use of C++ API requiring a configure switch to install the c++ headers
Author: Regina Obe
Contact:lr@…
Status: In Discussion

Past discussions Trac ticket to deprecate another request to deprecate and osm2pgsql mess more examples about how apps linking directly to GEOS C++ causing problems for other applications Pointing out removing ability to use GEOS C++ reduces users freedoms

This document proposes to change the ./configure to by default only allow use of the C-API. The C++ API headers will only be installed if explicitly asked for as detailed in https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html

Any developers who want to use the C++ API will have to build with

./configure --enable-c++-headers-install

As proposed in https://lists.osgeo.org/pipermail/geos-devel/2017-October/008054.html

I propose doing this in GEOS 3.7.0.

The main purpose is to discourage the use of the C++ API because we do not have the manpower to guarantee ABI compatiblity from version to version and thus using it in an environment where the GEOS library is shared across many software is unsupported.

Currently osm2pgsql (and before Osmium) are the only ones that use the GEOS C++ API and largely distributed in shared environment.