Debian patch that allows compilation with libgps (from `gpsd'). Failing to apply this patch, we get the following error: vikgpslayer.c:237: error: field 'realtime_gpsd_unit' has incomplete type vikgpslayer.c: In function 'vik_gps_layer_new': vikgpslayer.c:473: warning: implicit declaration of function 'gpsd_units' vikgpslayer.c: In function 'rt_gpsd_try_connect': vikgpslayer.c:1321: warning: passing argument 2 of 'gps_set_raw_hook' from incompatible pointer type diff -urNad trunk~/src/gpsdclient.h trunk/src/gpsdclient.h --- trunk~/src/gpsdclient.h 1970-01-01 01:00:00.000000000 +0100 +++ trunk/src/gpsdclient.h 2009-04-15 14:30:22.000000000 +0200 @@ -0,0 +1,25 @@ +/* $Id: gpsdclient.h 5330 2009-03-03 04:05:42Z ckuethe $ */ +/* gpsdclient.h -- common functions for GPSD clients */ + +#ifndef _GPSD_GPSDCLIENT_H_ +#define _GPSD_GPSDCLIENT_H_ +struct fixsource_t +/* describe a data source */ +{ + char *spec; /* pointer to actual storage */ + char *server; + char *port; + char *device; +}; + +enum unit {unspecified, imperial, nautical, metric}; +enum unit gpsd_units(void); +enum deg_str_type { deg_dd, deg_ddmm, deg_ddmmss }; + +extern /*@observer@*/ char *deg_to_str( enum deg_str_type type, double f); + +extern void gpsd_source_spec(/*@null@*/const char *fromstring, + /*@out@*/struct fixsource_t *source); + +#endif /* _GPSDCLIENT_H_ */ +/* gpsdclient.h ends here */ diff -urNad trunk~/src/vikgpslayer.c trunk/src/vikgpslayer.c --- trunk~/src/vikgpslayer.c 2009-02-08 14:47:01.000000000 +0100 +++ trunk/src/vikgpslayer.c 2009-04-15 14:30:55.000000000 +0200 @@ -39,6 +39,9 @@ #include #ifdef VIK_CONFIG_REALTIME_GPS_TRACKING #include +#ifndef gpsd_units +#include "gpsdclient.h" +#endif #endif #if ! GLIB_CHECK_VERSION(2,14,0)