Subject: [PATCH v2 1/4] gnu: Add libspatialite.

From: Björn Höfling <[email-masked]>
Date: Thu, 22 Feb 2018 00:07:47 +0100

* gnu/packages/geo.scm (libspatialite): New variable.
---
 gnu/packages/geo.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 50 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index d75416415..8f1b44aea 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Leo Famulari <[email-masked]>
 ;;; Copyright © 2016 Alex Griffin <[email-masked]>
-;;; Copyright © 2017 Björn Höfling <[email-masked]>
+;;; Copyright © 2017, 2018 Björn Höfling <[email-masked]>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <[email-masked]>
 ;;; Copyright © 2018 Ricardo Wurmus <[email-masked]>
 ;;; Copyright © 2018 Arun Isaac <[email-masked]>
@@ -202,6 +202,55 @@ writing GeoTIFF information tags.")
                    (license:non-copyleft "file://LICENSE"
                                          "See LICENSE in the distribution.")))))
 
+(define-public libspatialite
+  (package
+    (name "libspatialite")
+    (version "4.3.0a")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://www.gaia-gis.it/gaia-sins/libspatialite-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "16d4lpl7xrm9zy4gphy6nwanpjp8wn9g4wq2i2kh8abnlhq01448"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("freexl" ,freexl)
+       ("geos" ,geos)
+       ("libxml2" ,libxml2)
+       ("proj.4" ,proj.4)
+       ("sqlite" ,sqlite)
+       ("zlib" ,zlib)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         ;; 3 tests are failing, ignore them:
+         (add-after 'unpack 'ignore-broken-tests
+           (lambda _
+             (substitute* '("test/Makefile.in")
+               (("\tcheck_sql_stm.*" all) "\tcheck_multithread$(EXEEXT) \\\n")
+               (("(\tch.*) check_v.*ble2.*$" all vt1) (string-append vt1 " \\\n"))
+               (("\tch.* (check_v.*ble4.*)$" all vt4) (string-append "\t" vt4)))
+             #t)))))
+    (synopsis "Library to extend SQLite to support Spatial SQL capabilities")
+    (description "SpatiaLite is a library intended to extend the SQLite core
+to support fully fledged Spatial SQL capabilities.  SpatiaLite is smoothly
+integrated into SQLite to provide a complete and powerful Spatial DBMS
+(mostly OGC-SFS compliant).")
+    (home-page "https://www.gaia-gis.it/fossil/libspatialite/index")
+    ;; For the genuine libspatialite-sources holds:
+    ;; Any of the licenses MPL1.1, GPL2+ or LGPL2.1+  may be picked.
+    ;; Files under src/control_points are from GRASS
+    ;; and are licensed under GPL2+ only.
+    ;; src/md5.[ch]: Placed into the public domain by Alexander Peslyak.
+    (license (list license:gpl2+
+                   license:lgpl2.1+
+                   license:mpl1.1
+                   license:public-domain))))
+
 (define-public proj.4
   (package
     (name "proj.4")
-- 
2.16.1