From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38552) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eijDg-00039b-9x for guix-patches@gnu.org; Mon, 05 Feb 2018 11:02:15 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eijDW-0005Ri-Bj for guix-patches@gnu.org; Mon, 05 Feb 2018 11:02:12 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:51029) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eijDW-0005RC-6u for guix-patches@gnu.org; Mon, 05 Feb 2018 11:02:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eijDV-0004rv-Tw for guix-patches@gnu.org; Mon, 05 Feb 2018 11:02:01 -0500 Subject: [bug#30360] [PATCH] gnu: gpsbabel: Update to 1.5.4 and fix build. Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:38190) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eijCD-00021s-II for guix-patches@gnu.org; Mon, 05 Feb 2018 11:00:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eijCA-0001nZ-4A for guix-patches@gnu.org; Mon, 05 Feb 2018 11:00:41 -0500 Received: from mail-wm0-x22e.google.com ([2a00:1450:400c:c09::22e]:55221) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eijC9-0001kn-QB for guix-patches@gnu.org; Mon, 05 Feb 2018 11:00:38 -0500 Received: by mail-wm0-x22e.google.com with SMTP id i186so27045985wmi.4 for ; Mon, 05 Feb 2018 08:00:37 -0800 (PST) From: Mathieu Othacehe Date: Mon, 5 Feb 2018 17:00:27 +0100 Message-Id: <20180205160027.30926-1-m.othacehe@gmail.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 30360@debbugs.gnu.org * gnu/packages/patches/gpsbabel-minizip.patch: New file. * gnu/packages/patches/gpsbabel-qstring.patch: New file. * gnu/local.mk (dist_patch_DATA): Update accordingly. * gnu/packages/gps.scm (gpsbabel): Update to 1.5.4, [source]: add two previous patches to fix build, [snippet]: remove "gpsbabel" directory excursion, [arguments]: ditto. --- gnu/local.mk | 2 + gnu/packages/gps.scm | 22 +++++----- gnu/packages/patches/gpsbabel-minizip.patch | 13 ++++++ gnu/packages/patches/gpsbabel-qstring.patch | 68 +++++++++++++++++++++++++++++ 4 files changed, 93 insertions(+), 12 deletions(-) create mode 100644 gnu/packages/patches/gpsbabel-minizip.patch create mode 100644 gnu/packages/patches/gpsbabel-qstring.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6fdea16c8..cffc0f962 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -717,6 +717,8 @@ dist_patch_DATA = \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ + %D%/packages/patches/gpsbabel-minizip.patch \ + %D%/packages/patches/gpsbabel-qstring.patch \ %D%/packages/patches/graphite2-ffloat-store.patch \ %D%/packages/patches/grep-gnulib-lock.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index b9d0d3109..8b7faab73 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -25,6 +25,7 @@ #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages pkg-config) #:use-module (gnu packages compression) @@ -38,7 +39,7 @@ (define-public gpsbabel (package (name "gpsbabel") - (version "1.5.2") + (version "1.5.4") (source (origin (method url-fetch) ;; XXX: Downloads from gpsbabel.org are hidden behind a POST, so @@ -48,17 +49,21 @@ version ".orig.tar.gz")) (sha256 (base32 - "0xf7wmy2m29g2lm8lqc74yf8rf7sxfl3cfwbk7dpf0yf42pb0b6w")) + "19hykxhyl567gf8qcrl33qhv95w0g4vxw9r3h9b8d8plx9bnaf8l")) + (patches (search-patches + "gpsbabel-minizip.patch" + ;; XXX: Remove this patch on the next release. + "gpsbabel-qstring.patch")) (modules '((guix build utils))) (snippet '(begin ;; Delete files under GPL-compatible licences but never used ;; on GNU systems, rather than bloating the LICENSE field. - (with-directory-excursion "gpsbabel" - (delete-file "gui/serial_mac.cc") ; Apple MIT - (delete-file "mingw/include/ddk/hidsdi.h")) ; public domain + (delete-file "gui/serial_mac.cc") ; Apple MIT + (delete-file "mingw/include/ddk/hidsdi.h") ; public domain #t)))) (build-system gnu-build-system) + ;; TODO: "make doc" requires Docbook & co. (arguments `(#:configure-flags '("--with-zlib=system" @@ -66,13 +71,6 @@ ;; recent binutils: ;; https://codereview.qt-project.org/#/c/111787/ "CXXFLAGS=-std=gnu++11 -fPIC") - #:phases - (modify-phases %standard-phases - (add-before 'configure 'pre-configure - (lambda _ - (chdir "gpsbabel")))) - ;; TODO: "make doc" requires Docbook & co. - ;; On i686, 'raymarine.test' fails because of a rounding error: ;; . As a workaround, disable tests ;; on these platforms. diff --git a/gnu/packages/patches/gpsbabel-minizip.patch b/gnu/packages/patches/gpsbabel-minizip.patch new file mode 100644 index 000000000..8f3bb36f5 --- /dev/null +++ b/gnu/packages/patches/gpsbabel-minizip.patch @@ -0,0 +1,13 @@ +Patch taken from https://sources.debian.org/data/main/g/gpsbabel/1.5.3-2/debian/patches/use_minizip. + +--- a/Makefile.in ++++ b/Makefile.in +@@ -120,7 +120,7 @@ LIBOBJS = queue.o route.o waypt.o filter + src/core/usasciicodec.o\ + src/core/ziparchive.o \ + $(GARMIN) $(JEEPS) $(SHAPE) @ZLIB@ $(FMTS) $(FILTERS) +-OBJS = main.o globals.o $(LIBOBJS) @FILEINFO@ ++OBJS = main.o globals.o $(MINIZIP) $(LIBOBJS) @FILEINFO@ + + DEPFILES = $(OBJS:.o=.d) + \ No newline at end of file diff --git a/gnu/packages/patches/gpsbabel-qstring.patch b/gnu/packages/patches/gpsbabel-qstring.patch new file mode 100644 index 000000000..072980bca --- /dev/null +++ b/gnu/packages/patches/gpsbabel-qstring.patch @@ -0,0 +1,68 @@ +Extracted from following patch 604178aa8ad4d3c3ad218df24c1e9a6a1f683bb3 of gpsbabel. + +From 604178aa8ad4d3c3ad218df24c1e9a6a1f683bb3 Mon Sep 17 00:00:00 2001 +From: Harel Mazor +Date: Tue, 24 Jan 2017 00:35:04 +0200 +Subject: [PATCH] Added geojson read capablity, moved magic strings to + constants, fixed windows compilation issues. + +--- a/tef_xml.cc ++++ b/tef_xml.cc +@@ -72,11 +72,11 @@ tef_start(xg_string args, const QXmlStreamAttributes* attrv) + bool valid = false; + + foreach(QXmlStreamAttribute attr, *attrv) { +- if (attr.name().compare("Comment", Qt::CaseInsensitive) == 0) { +- if (attr.value().compare("TourExchangeFormat", Qt::CaseInsensitive) == 0) { ++ if (attr.name().compare(QString("Comment"), Qt::CaseInsensitive) == 0) { ++ if (attr.value().compare(QString("TourExchangeFormat"), Qt::CaseInsensitive) == 0) { + valid = true; + } +- } else if (attr.name().compare("Version", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("Version"), Qt::CaseInsensitive) == 0) { + version = attr.value().toString().toDouble(); + } + } +@@ -95,9 +95,9 @@ tef_header(xg_string args, const QXmlStreamAttributes* attrv) + { + route = route_head_alloc(); + foreach(QXmlStreamAttribute attr, *attrv) { +- if (attr.name().compare("Name", Qt::CaseInsensitive) == 0) { ++ if (attr.name().compare(QString("Name"), Qt::CaseInsensitive) == 0) { + route->rte_name = attr.value().toString().trimmed(); +- } else if (attr.name().compare("Software", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("Software"), Qt::CaseInsensitive) == 0) { + route->rte_desc = attr.value().toString().trimmed(); + } + } +@@ -248,20 +248,20 @@ tef_item_start(xg_string args, const QXmlStreamAttributes* attrv) + QString attrstr = attr.value().toString(); + QByteArray attrtext = attrstr.toUtf8(); + +- if (attr.name().compare("SegDescription", Qt::CaseInsensitive) == 0) { ++ if (attr.name().compare(QString("SegDescription"), Qt::CaseInsensitive) == 0) { + wpt_tmp->shortname = attrstr.trimmed(); +- } else if (attr.name().compare("PointDescription", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("PointDescription"), Qt::CaseInsensitive) == 0) { + wpt_tmp->description = attrstr.trimmed(); +- } else if (attr.name().compare("ViaStation", Qt::CaseInsensitive) == 0 && +- attr.value().compare("true", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("ViaStation"), Qt::CaseInsensitive) == 0 && ++ attr.value().compare(QString("true"), Qt::CaseInsensitive) == 0) { + wpt_tmp->wpt_flags.fmt_use = 1; /* only a flag */ + + /* new in TEF V2 */ +- } else if (attr.name().compare("Instruction", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("Instruction"), Qt::CaseInsensitive) == 0) { + wpt_tmp->description = attrstr.trimmed(); +- } else if (attr.name().compare("Altitude", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("Altitude"), Qt::CaseInsensitive) == 0) { + wpt_tmp->altitude = attrstr.toDouble(); +- } else if (attr.name().compare("TimeStamp", Qt::CaseInsensitive) == 0) { ++ } else if (attr.name().compare(QString("TimeStamp"), Qt::CaseInsensitive) == 0) { + /* nothing for the moment */ + } + } +-- +2.16.1 + -- 2.16.1