[R-sig-Geo] status of gpclib licence
Roger Bivand
Roger.Bivand at nhh.no
Tue Jan 19 10:25:44 CET 2010
On Tue, 19 Jan 2010, Adrian.Baddeley at csiro.au wrote:
>
> Nicholas Lewin-Koh and others have asked about the licence for the R
> package 'gpclib'. This is based on the C library 'gpclib' by Alan
> Murtagh which has a non-GPL licence.
>
> Recently I contacted the licence holders for the C library, with a
> formal request that the licence be changed to GPL. After contacting Alan
> Murtagh they replied that it has been decided, definitively, not to
> alter the licence.
>
> Hence we are currently looking for a FOSS replacement for gpclib. Any
> volunteers?
Adrian,
The rgeos package on R-Forge is almost ready for release.
https://r-forge.r-project.org/projects/rgeos/
http://trac.osgeo.org/geos/
The proof-of-concept has been to link it tightly to sp classes at the C
level. The way GEOS is structured makes tight coupling hard to avoid - so
similar R <-> C interfaces will be needed for other packages. Because it
isn't just for clipping, it doesn't fit the hole left by gpclib neatly.
Finally, it has an external dependency, the GEOS DLL and headers, which
can be met for Windows binary packages with Uwe Ligges' help (tried but
not yet operative on R-Forge, ready to roll when rgeos is on CRAN). For
Unix/Linux users, either install GEOS from source or binaries (works on
Debian/Ubuntu - libgeos, libgeos-c1, libgeos-dev), for OSX using the
Kyngchaos GEOS framework (untried http://www.kyngchaos.com/ -> software ->
frameworks).
An alternative that ought to be followed up at least as proof-of-concept
is the Boost GGL library:
http://reviews.slashgeo.org/article.pl?sid=09/11/30/1638211
http://trac.osgeo.org/ggl
Build for GGL is as other Boost software, through a mystical graph of
C++ headers - like the R RBGL package, which ships with the Boost headers
in a gzipped tar archive in src/ to create the Boost framework at compile
time. It is, however, not C++ written as C, it is modern C++. So for me,
the GEOS C API was easier to handle (for a chosen definition of easier).
>
> In the meantime, packages that depend on gpclib could use the following
> strategy that we have adopted for 'spatstat'. The 'spatstat' package
> previously 'Depend'ed on gpclib. I have reorganised spatstat so that it
> only 'Suggests' gpclib, and the gpclib-dependent code can be enabled or
> disabled using a flag, spatstat.options("gpclib") which is initialised
> to FALSE. If you are an academic or non-profit, set
> spatstat.options(gpclib=TRUE). If you're commercial, leave it as FALSE
> and have a nice day...
Even if you are academic, but doing contracted research, I'd be concerned
with the lack of clarity in:
"Commercial use of GPC (for example: product development / commercial
research)"
http://www.cs.manchester.ac.uk/~toby/alan/software/#Licensing
which is very much broader than compiling GPC into software for sale. I
guess it depends on your half-full/half-empty status ...
Unreleased maptools on the sourceforge r-spatial project follows your lead
on this (different mechanism - flag hidden in environment, same
principle), but where rgeos is present, uses that instead everywhere
gpclib was used before. Partly because of the use of C, it yields the same
results quicker. I'd be very grateful for anyone able to install source
packages trying out rgeos, and then installing maptools from a cvs
checkout from r-spatial. When I have some feedback, I'll release.
Helpers very welcome!
Roger
>
> Adrian Baddeley
>
> _______________________________________________
> R-sig-Geo mailing list
> R-sig-Geo at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/r-sig-geo
>
--
Roger Bivand
Economic Geography Section, Department of Economics, Norwegian School of
Economics and Business Administration, Helleveien 30, N-5045 Bergen,
Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43
e-mail: Roger.Bivand at nhh.no
More information about the R-sig-Geo
mailing list