graaff      15/03/10 18:42:06

  Added:                viking-1.5.1-gpsd-3.13.patch
  Log:
  Add upstream patch to fix compilation with newer gpsd versions, fixing bug 
541646.
  
  (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 
0x8883FA56A308A8D7!)

Revision  Changes    Path
1.1                  sci-geosciences/viking/files/viking-1.5.1-gpsd-3.13.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-geosciences/viking/files/viking-1.5.1-gpsd-3.13.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sci-geosciences/viking/files/viking-1.5.1-gpsd-3.13.patch?rev=1.1&content-type=text/plain

Index: viking-1.5.1-gpsd-3.13.patch
===================================================================
commit 25043ca24a55468dc9eeaa7335a24d132c51b07d
Author: Rob Norris <[email protected]>
Date:   Mon Mar 9 23:25:15 2015 +0000

    SF Bugs#117: Confirm capability with GPSD_API_MAJOR_VERSION=6 (gpsd 3.12 / 
libgps.so.22)

diff --git a/src/vikgpslayer.c b/src/vikgpslayer.c
index daf6d42..ca4be29 100644
--- a/src/vikgpslayer.c
+++ b/src/vikgpslayer.c
@@ -1673,7 +1673,7 @@ static gboolean gpsd_data_available(GIOChannel *source, 
GIOCondition condition,
   if (condition == G_IO_IN) {
 #if GPSD_API_MAJOR_VERSION == 3 || GPSD_API_MAJOR_VERSION == 4
     if (!gps_poll(&vgl->vgpsd->gpsd)) {
-#elif GPSD_API_MAJOR_VERSION == 5
+#elif GPSD_API_MAJOR_VERSION == 5 || GPSD_API_MAJOR_VERSION == 6
     if (gps_read(&vgl->vgpsd->gpsd) > -1) {
       // Reuse old function to perform operations on the new GPS data
       gpsd_raw_hook(vgl->vgpsd, NULL);
@@ -1718,7 +1718,7 @@ static gboolean rt_gpsd_try_connect(gpointer *data)
   vgl->vgpsd = g_malloc(sizeof(VglGpsd));
 
   if (gps_open_r(vgl->gpsd_host, vgl->gpsd_port, /*(struct gps_data_t 
*)*/vgl->vgpsd) != 0) {
-#elif GPSD_API_MAJOR_VERSION == 5
+#elif GPSD_API_MAJOR_VERSION == 5 || GPSD_API_MAJOR_VERSION == 6
   vgl->vgpsd = g_malloc(sizeof(VglGpsd));
   if (gps_open(vgl->gpsd_host, vgl->gpsd_port, &vgl->vgpsd->gpsd) != 0) {
 #else
@@ -1757,7 +1757,7 @@ static gboolean rt_gpsd_try_connect(gpointer *data)
 #if GPSD_API_MAJOR_VERSION == 3
   gps_query(&vgl->vgpsd->gpsd, "w+x");
 #endif
-#if GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5
+#if GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5 || 
GPSD_API_MAJOR_VERSION == 6
   gps_stream(&vgl->vgpsd->gpsd, WATCH_ENABLE, NULL);
 #endif
 
@@ -1813,13 +1813,13 @@ static void rt_gpsd_disconnect(VikGpsLayer *vgl)
     vgl->realtime_io_channel = NULL;
   }
   if (vgl->vgpsd) {
-#if GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5
+#if GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5 || 
GPSD_API_MAJOR_VERSION == 6
     gps_stream(&vgl->vgpsd->gpsd, WATCH_DISABLE, NULL);
 #endif
     gps_close(&vgl->vgpsd->gpsd);
 #if GPSD_API_MAJOR_VERSION == 3
     free(vgl->vgpsd);
-#elif GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5
+#elif GPSD_API_MAJOR_VERSION == 4 || GPSD_API_MAJOR_VERSION == 5 || 
GPSD_API_MAJOR_VERSION == 6
     g_free(vgl->vgpsd);
 #endif
     vgl->vgpsd = NULL;




Reply via email to