gnu: python-pandas: Fix build on 32-bit.
[jackhill/guix/guix.git] / gnu / packages / gps.scm
CommitLineData
83aabfbc 1;;; GNU Guix --- Functional package management for GNU
ce0614dd 2;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
6f1c3b80 3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
83aabfbc
LC
4;;;
5;;; This file is part of GNU Guix.
6;;;
7;;; GNU Guix is free software; you can redistribute it and/or modify it
8;;; under the terms of the GNU General Public License as published by
9;;; the Free Software Foundation; either version 3 of the License, or (at
10;;; your option) any later version.
11;;;
12;;; GNU Guix is distributed in the hope that it will be useful, but
13;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15;;; GNU General Public License for more details.
16;;;
17;;; You should have received a copy of the GNU General Public License
18;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20(define-module (gnu packages gps)
21 #:use-module (guix packages)
22 #:use-module (guix download)
3b239720 23 #:use-module (guix git-download)
83aabfbc
LC
24 #:use-module (guix build-system gnu)
25 #:use-module ((guix licenses) #:prefix license:)
ce0614dd 26 #:use-module (gnu packages base)
3b239720 27 #:use-module (gnu packages pkg-config)
83aabfbc 28 #:use-module (gnu packages compression)
3b239720 29 #:use-module (gnu packages docbook)
023f0fb0 30 #:use-module (gnu packages image)
83aabfbc 31 #:use-module (gnu packages xml)
3b239720 32 #:use-module (gnu packages gtk)
83aabfbc
LC
33 #:use-module (gnu packages qt))
34
35(define-public gpsbabel
36 (package
37 (name "gpsbabel")
6f1c3b80 38 (version "1.5.2")
83aabfbc
LC
39 (source (origin
40 (method url-fetch)
41 ;; XXX: Downloads from gpsbabel.org are hidden behind a POST, so
42 ;; get it from elsewhere.
43 (uri (string-append
44 "mirror://debian/pool/main/g/gpsbabel/gpsbabel_"
45 version ".orig.tar.gz"))
46 (sha256
47 (base32
6f1c3b80 48 "0xf7wmy2m29g2lm8lqc74yf8rf7sxfl3cfwbk7dpf0yf42pb0b6w"))))
83aabfbc
LC
49 (build-system gnu-build-system)
50 (arguments
15354d86
DC
51 `(#:configure-flags
52 '("--with-zlib=system"
53 "CXXFLAGS=-std=gnu++11")
c5a6e33b
EF
54 #:phases
55 (modify-phases %standard-phases
56 (add-before 'configure 'pre-configure
57 (lambda _
58 (chdir "gpsbabel"))))
59 ;; TODO: "make doc" requires Docbook & co.
82350397
LC
60
61 ;; On i686, 'raymarine.test' fails because of a rounding error:
62 ;; <http://hydra.gnu.org/build/133040>. As a workaround, disable tests
63 ;; on these platforms.
15354d86
DC
64 ;; FIXME: On x86_64 with -std=gnu++11 tests also fail due to rounding
65 ;; error.
66 #:tests? #f))
83aabfbc
LC
67 (inputs
68 `(("expat" ,expat)
69 ("zlib" ,zlib)
e2814984
EF
70 ("qtbase" ,qtbase)
71 ("qttools" ,qttools)))
83aabfbc
LC
72 (native-inputs
73 `(("which" ,which)
74 ("libxml2" ,libxml2))) ;'xmllint' needed for the KML tests
75 (home-page "http://www.gpsbabel.org/")
76 (synopsis "Convert and exchange data with GPS and map programs")
77 (description
78 "GPSBabel converts waypoints, tracks, and routes between hundreds of
79popular GPS receivers and mapping programs. It contains extensive data
80manipulation abilities making it a convenient for server-side processing or as
81the back-end for other tools. It does not convert, transfer, send, or
82manipulate maps.")
83 (license license:gpl2+)))
3b239720
LC
84
85(define-public gpscorrelate
86 ;; This program is "lightly maintained", so to speak, so we end up taking it
87 ;; directly from its Git repo.
88 (let ((commit "365f6e1b3f"))
89 (package
90 (name "gpscorrelate")
91 (version (string-append "1.6.1." commit))
92 (source (origin
93 (method git-fetch)
94 (uri (git-reference
95 (url "https://github.com/freefoote/gpscorrelate")
96 (commit commit)))
97 (sha256
98 (base32
99 "006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb"))))
100 (build-system gnu-build-system)
101 (arguments
102 `(#:phases (alist-replace
103 'configure
104 (lambda* (#:key inputs outputs #:allow-other-keys)
105 ;; This is a rudimentary build system.
106 (substitute* "Makefile"
107 (("prefix[[:blank:]]*=.*$")
108 (string-append "prefix = " (assoc-ref outputs "out")
2a8d4401 109 "\n"))))
3b239720
LC
110 %standard-phases)
111 #:tests? #f))
112 (inputs
113 `(("gtk+" ,gtk+-2)
114 ("libxml2" ,libxml2)
115 ("exiv2" ,exiv2)))
116 (native-inputs
117 `(("pkg-config" ,pkg-config)
118 ("docbook-xml" ,docbook-xml)
119 ("docbook-xsl" ,docbook-xsl)
120 ("libxslt" ,libxslt)))
121 (home-page "http://freefoote.dview.net/linux/gpscorrelate")
122 (synopsis "GPS photo correlation tool to geo-localize images")
123 (description
124 "GPS Correlate is a program to match a recorded GPS track with the EXIF
125tags in digital camera photos, and update the EXIF tags with the location that
126the photo was taken. It does this by using the timestamp in the photo and
127finding a data point in the GPS track that matches, or interpolating a point
128between two other data points.")
129 (license license:gpl2+))))