[Proj] Use of SQLite

Even Rouault even.rouault at spatialys.com
Mon May 21 09:37:17 EST 2018


>   proj needs to be portable, and that precludes shipping a sqlite3
>   binary file.  Presumably the source code will contain either some text
>   file that is loaded as part of the build process, and binary packages
>   will have binary sqlite3 files?  Or something else?
>   (Assuming source file at build time) It's unclear if you mean the
>   source file to be a sqlite3 db dump, and if that will be in the VCS,
>   or something else?   There seems to be merit in having a simple csv
>   format in the source tree.   But perhaps sqlite3 dump is the new
>   lingua franca.

The idea would be to have in git one or several .sql files that are parts of the SQLite dump. 
The advantage with this text-based view is that we can easily follow changes of content 
(contrary for example to QGIS srs.db which is in binary format only in git, which makes it hard 
to know which exact changes are done)
'make' would then use the sqlite3 binary installed on the build machine to build the final 
proj_srs.db from the source .sql files, and make install would install it in proj resource files 
(the source .sql files wouldn't be installed)
libsqlite3 should be available at runtime on the target architecture of the build.

>   (not entirely related) My impression is that the EPSG database is
>   non-Free, and I wonder if the "modified version" becomes free, or if
>   this is still an issue to resolve.

That's already an issue we've encountered with: libgeotiff, GDAL, proj, QGIS, PostGIS SRS 
databases are all derived, to different extent, from the EPSG database. 

More information about the Proj mailing list