From 6b71a363e9e85bf83596ddc6e69bfe8956ae4046 Mon Sep 17 00:00:00 2001 From: David Spencer Date: Sat, 20 Oct 2018 23:34:53 +0100 Subject: [PATCH] gis/viking: Fix build with gpsd-3.18.1. Signed-off-by: David Spencer --- gis/viking/remove-mapquest.patch | 56 +++++++++++++++++++++ gis/viking/viking-1.6.2-gpsd-3.18-fix.patch | 25 +++++++++ gis/viking/viking.SlackBuild | 12 +++-- 3 files changed, 89 insertions(+), 4 deletions(-) create mode 100644 gis/viking/remove-mapquest.patch create mode 100644 gis/viking/viking-1.6.2-gpsd-3.18-fix.patch diff --git a/gis/viking/remove-mapquest.patch b/gis/viking/remove-mapquest.patch new file mode 100644 index 0000000000..cac63f1223 --- /dev/null +++ b/gis/viking/remove-mapquest.patch @@ -0,0 +1,56 @@ +diff -Naur viking-1.6.2.orig/src/map_ids.h viking-1.6.2/src/map_ids.h +--- viking-1.6.2.orig/src/map_ids.h 2015-11-10 22:01:35.000000000 +0100 ++++ viking-1.6.2/src/map_ids.h 2017-07-01 11:25:32.496994499 +0200 +@@ -35,7 +35,6 @@ + #define MAP_ID_OSM_MAPNIK 13 + #define MAP_ID_BLUE_MARBLE 15 + #define MAP_ID_OSM_CYCLE 17 +-#define MAP_ID_MAPQUEST_OSM 19 + #define MAP_ID_OSM_TRANSPORT 20 + #define MAP_ID_OSM_ON_DISK 21 + #define MAP_ID_OSM_HUMANITARIAN 22 +diff -Naur viking-1.6.2.orig/src/osm.c viking-1.6.2/src/osm.c +--- viking-1.6.2.orig/src/osm.c 2015-11-10 22:01:35.000000000 +0100 ++++ viking-1.6.2/src/osm.c 2017-07-01 11:26:25.051880940 +0200 +@@ -89,21 +89,6 @@ + "license", "CC-BY-SA", + "license-url", "http://www.openstreetmap.org/copyright", + NULL)); +- VikMapSource *mapquest_type = +- VIK_MAP_SOURCE(g_object_new(VIK_TYPE_SLIPPY_MAP_SOURCE, +- "id", MAP_ID_MAPQUEST_OSM, +- "name", "OSM-MapQuest", +- "label", "OpenStreetMap (MapQuest)", +- "hostname", "otile1.mqcdn.com", +- "url", "/tiles/1.0.0/osm/%d/%d/%d.png", +- "check-file-server-time", TRUE, +- "use-etag", FALSE, +- "zoom-min", 0, +- "zoom-max", 19, +- "copyright", "Tiles Courtesy of MapQuest © OpenStreetMap contributors", +- "license", "MapQuest Specific", +- "license-url", "http://developer.mapquest.com/web/info/terms-of-use", +- NULL)); + VikMapSource *hot_type = + VIK_MAP_SOURCE(g_object_new(VIK_TYPE_SLIPPY_MAP_SOURCE, + "id", MAP_ID_OSM_HUMANITARIAN, +@@ -152,7 +137,6 @@ + "is-osm-meta-tiles", TRUE, + NULL)); + +- maps_layer_register_map_source (mapquest_type); + maps_layer_register_map_source (mapnik_type); + maps_layer_register_map_source (cycle_type); + maps_layer_register_map_source (transport_type); +diff -Naur viking-1.6.2.orig/src/vikmapslayer.c viking-1.6.2/src/vikmapslayer.c +--- viking-1.6.2.orig/src/vikmapslayer.c 2015-12-21 12:44:57.000000000 +0100 ++++ viking-1.6.2/src/vikmapslayer.c 2017-07-01 11:25:52.947597509 +0200 +@@ -127,7 +127,7 @@ + { 0, 255, 3, 0 }, /* alpha */ + }; + +-static VikLayerParamData id_default ( void ) { return VIK_LPD_UINT ( MAP_ID_MAPQUEST_OSM ); } ++static VikLayerParamData id_default ( void ) { return VIK_LPD_UINT ( MAP_ID_OSM_MAPNIK ); } + static VikLayerParamData directory_default ( void ) + { + VikLayerParamData data; diff --git a/gis/viking/viking-1.6.2-gpsd-3.18-fix.patch b/gis/viking/viking-1.6.2-gpsd-3.18-fix.patch new file mode 100644 index 0000000000..11aa344237 --- /dev/null +++ b/gis/viking/viking-1.6.2-gpsd-3.18-fix.patch @@ -0,0 +1,25 @@ +--- orig/vikgpslayer.c 2015-12-15 00:34:43.000000000 +0100 ++++ src/vikgpslayer.c 2018-10-09 20:32:19.001703665 +0200 +@@ -1681,2 +1681,4 @@ + if (gps_read(&vgl->vgpsd->gpsd) > -1) { ++#elif GPSD_API_MAJOR_VERSION >= 7 ++ if (gps_read(&vgl->vgpsd->gpsd, NULL, 0) > -1) { + // Reuse old function to perform operations on the new GPS data +@@ -1713,2 +1715,12 @@ + ++/** ++ * rt_gpsd_try_connect: ++ * ++ * ATM Known to work up to at least GPSD_API_MAJOR_VERSION 7 ++ * ++ * Support for the old/very old GPSD API versions is increasingly subject ++ * to bitrot due to difficulty of creating/maintaining a test environment ++ * of old software versions ++ * ++ */ + static gboolean rt_gpsd_try_connect(gpointer *data) +@@ -1724,3 +1736,3 @@ + if (gps_open_r(vgl->gpsd_host, vgl->gpsd_port, /*(struct gps_data_t *)*/vgl->vgpsd) != 0) { +-#elif GPSD_API_MAJOR_VERSION == 5 || GPSD_API_MAJOR_VERSION == 6 ++#elif GPSD_API_MAJOR_VERSION >= 5 + vgl->vgpsd = g_malloc(sizeof(VglGpsd)); diff --git a/gis/viking/viking.SlackBuild b/gis/viking/viking.SlackBuild index 2b4a3326ea..8ca0b8437e 100644 --- a/gis/viking/viking.SlackBuild +++ b/gis/viking/viking.SlackBuild @@ -26,12 +26,12 @@ PRGNAM=viking VERSION=${VERSION:-1.6.2} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -42,8 +42,8 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -71,6 +71,10 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +# Patches ripped off from Arch (thanks!) +patch -p1 < $CWD/remove-mapquest.patch +patch -p0 < $CWD/viking-1.6.2-gpsd-3.18-fix.patch + OPT_MAPNIK='--disable-mapnik' if [ ${MAPNIK:-no} = "yes" ]; then OPT_MAPNIK="--enable-mapnik"