From: Fabian Godehardt <[email protected]>

This updates gpsd from 2.39 to 3.17. The build system has changed from
autotools to scons in the meantime, so there are quite some changes
necessary.

Signed-off-by: Fabian Godehardt <[email protected]>
Signed-off-by: Sascha Hauer <[email protected]>
---
 rules/gpsd.in   |  30 ++++++++----
 rules/gpsd.make | 120 ++++++++++++++++++++++++++++--------------------
 2 files changed, 90 insertions(+), 60 deletions(-)

diff --git a/rules/gpsd.in b/rules/gpsd.in
index ff270cff5..7a86967c4 100644
--- a/rules/gpsd.in
+++ b/rules/gpsd.in
@@ -1,13 +1,14 @@
 ## SECTION=system_libraries
 menuconfig GPSD
        tristate
+       select HOST_PYTHON_SCONS
        select LIBC_M
        select LIBC_NSL
        select LIBC_PTHREAD
        select GCCLIBS_CXX
        select GCCLIBS_GCC_S
-       select NCURSES          if GPSD_CGPS
-       select NCURSES          if GPSD_GPSMON
+       select NCURSES          if GPSD_NCURSES
+       select LIBUSB           if GPSD_USB
        select DBUS_GLIB        if GPSD_DBUS
        select PYTHON           if GPSD_PYTHON
        prompt "gpsd                          "
@@ -21,6 +22,19 @@ menuconfig GPSD
 
 if GPSD
 
+config GPSD_NCURSES
+       bool
+       prompt "Enable tools using ncurses"
+       help
+         Some tools use ncurses as interface. Enable this to get
+         able to build them.
+
+config GPSD_USB
+       bool
+       prompt "Enable USB support"
+       help
+         Enable this to ineract with devices using USB interface.
+
 config GPSD_PYTHON
        bool
        prompt "python bindings"
@@ -68,6 +82,10 @@ config GPSD_MAX_DEVICES
 
 menu "drivers"
 
+       config GPSD_DRIVER_BLUEZ
+               bool
+               prompt "bluez"
+
        config GPSD_DRIVER_NMEA
                bool
                prompt "nmea"
@@ -208,14 +226,6 @@ menu "install options"
                  received sentences to stdout. This makes the program
                  useful as a pipe from gpsd to another program or file.
 
-       config GPSD_GPSFLASH
-               bool
-               prompt "gpsflash"
-               help
-                 This program is a firmware loader for GPS receivers
-                 connected via serial or USB port. Presently it supports
-                 only SiRF GPSes.
-
        config GPSD_GPXLOGGER
                bool
                prompt "gpxlogger"
diff --git a/rules/gpsd.make b/rules/gpsd.make
index cec308af9..bd664c4dd 100644
--- a/rules/gpsd.make
+++ b/rules/gpsd.make
@@ -2,6 +2,9 @@
 #
 # Copyright (C) 2008 by J.Kilb
 #               2009 by Marc Kleine-Budde <[email protected]>
+#               2019 by Fabian Godehardt <[email protected]>
+#
+# See CREDITS for details about who has contributed to this project.
 #
 # For further information about the PTXdist project and license conditions
 # see the README file.
@@ -15,11 +18,11 @@ PACKAGES-$(PTXCONF_GPSD) += gpsd
 #
 # Paths and names
 #
-GPSD_VERSION   := 2.39
-GPSD_MD5       := 3db437196a6840c252fca99b6c19d4d0
+GPSD_VERSION   := 3.17
+GPSD_MD5       := e0cfadcf4a65dfbdd2afb11c58f4e4a1
 GPSD           := gpsd-$(GPSD_VERSION)
 GPSD_SUFFIX    := tar.gz
-GPSD_URL       := $(call ptx/mirror, SF, gpsd.berlios/$(GPSD).$(GPSD_SUFFIX))
+GPSD_URL       := 
http://download-mirror.savannah.gnu.org/releases/gpsd/$(GPSD).$(GPSD_SUFFIX)
 GPSD_SOURCE    := $(SRCDIR)/$(GPSD).$(GPSD_SUFFIX)
 GPSD_DIR       := $(BUILDDIR)/$(GPSD)
 
@@ -27,58 +30,78 @@ GPSD_DIR    := $(BUILDDIR)/$(GPSD)
 # Prepare
 # ----------------------------------------------------------------------------
 
-GPSD_ENV = \
-       $(CROSS_ENV) \
-       PYTHON=$(CROSS_PYTHON)
+GPSD_CONF_TOOL := NO
 
-#
-# autoconf
-#
-GPSD_AUTOCONF := \
-       $(CROSS_AUTOCONF_USR) \
-       --without-x \
-       --$(call ptx/endis, PTXCONF_GPSD_PYTHON)-python \
-       --$(call ptx/endis, PTXCONF_GPSD_PROFILING)-profiling \
-       --$(call ptx/endis, PTXCONF_GPSD_NTPSHM)-ntpshm \
-       --$(call ptx/endis, PTXCONF_GPSD_PPS)-pps \
-       --$(call ptx/endis, PTXCONF_GPSD_PPS_ON_CTS)-pps-on-cts \
-       --$(call ptx/endis, PTXCONF_GPSD_DBUS)-dbus \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_NMEA)-nmea \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_SIRF)-sirf \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_TSIP)-tsip \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_FV18)-fv18 \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_TRIPMATE)-tripmate \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_EARTHMATE)-earthmate \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_ITRAX)-itrax \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_ASHTECH)-ashtech \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_NAVCOM)-navcom \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_GARMIN)-garmin \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_GARMINTXT)-garmintxt \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_TNT)-tnt \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_UBX)-ubx \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_EVERMORE)-evermore \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_GPSCLOCK)-gpsclock \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_RTCM104V2)-rtcm104v2 \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_RTCM104V3)-rtcm104v3 \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_NTRIP)-ntrip \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_SUPERSTAR2)-superstar2 \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_OCEANSERVER)-oceanserver \
-       --$(call ptx/endis, PTXCONF_GPSD_DRIVER_MKT3301)-mkt3301
+# we set directory entries to installation folder as
+# the scons script currently ignores a DESTDIR etc.
+GPSD_ENV = \
+       target=$(PTXCONF_GNU_TARGET) \
+       prefix=$(prefix) \
+       shared=yes \
+       sbindir=$(GPSD_PKGDIR)/usr/sbin \
+       bindir=$(GPSD_PKGDIR)/usr/sbin \
+       includedir=$(GPSD_PKGDIR)/usr/include \
+       libdir=$(GPSD_PKGDIR)/usr/lib \
+       docdir=$(GPSD_PKGDIR)/usr/share/doc \
+       mandir=$(GPSD_PKGDIR)/usr/share/man \
+       ncurses=$(call ptx/yesno, PTXCONF_GPSD_NCURSES) \
+       usb=$(call ptx/yesno, PTXCONF_GPSD_USB) \
+       bluez=$(call ptx/yesno, PTXCONF_GPSD_BLUEZ) \
+       python=$(call ptx/yesno, PTXCONF_GPSD_PYTHON) \
+       profiling=$(call ptx/yesno, PTXCONF_GPSD_PROFILING) \
+       ntpshm=$(call ptx/yesno, PTXCONF_GPSD_NTPSHM) \
+       pps=$(call ptx/yesno, PTXCONF_GPSD_PPS) \
+       dbus_export=$(call ptx/yesno, PTXCONF_GPSD_DBUS) \
+       nmea0183=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_NMEA) \
+       sirf=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_SIRF) \
+       tsip=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_TSIP) \
+       fv18=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_FV18) \
+       tripmate=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_TRIPMATE) \
+       earthmate=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_EARTHMATE) \
+       itrax=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_ITRAX) \
+       ashtech=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_ASHTECH) \
+       navcom=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_NAVCOM) \
+       garmin=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_GARMIN) \
+       garmintxt=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_GARMINTXT) \
+       tnt=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_TNT) \
+       ubx=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_UBX) \
+       evermore=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_EVERMORE) \
+       gpsclock=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_GPSCLOCK) \
+       rtcm104v2=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_RTCM104V2) \
+       rtcm104v3=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_RTCM104V3) \
+       ntrip=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_NTRIP) \
+       superstar2=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_SUPERSTAR2) \
+       oceanserver=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_OCEANSERVER) \
+       mkt3301=$(call ptx/yesno, PTXCONF_GPSD_DRIVER_MKT3301)
 
 ifneq ($(call remove_quotes,$(PTXCONF_GPSD_USER)),)
-GPSD_AUTOCONF += --enable-gpsd-user=$(PTXCONF_GPSD_USER)
+GPSD_ENV += gpsd-user=$(PTXCONF_GPSD_USER)
 endif
 ifneq ($(call remove_quotes,$(PTXCONF_GPSD_FIXED_PORT_SPEED)),)
-GPSD_AUTOCONF += --enable-fixed-port-speed=$(PTXCONF_GPSD_FIXED_PORT_SPEED)
+GPSD_ENV += fixed-port-speed=$(PTXCONF_GPSD_FIXED_PORT_SPEED)
 endif
 
 ifneq ($(call remove_quotes,$(PTXCONF_GPSD_MAX_CLIENTS)),)
-GPSD_AUTOCONF += --enable-max-clients=$(PTXCONF_GPSD_MAX_CLIENTS)
+GPSD_ENV += max-clients=$(PTXCONF_GPSD_MAX_CLIENTS)
 endif
 ifneq ($(call remove_quotes,$(PTXCONF_GPSD_MAX_DEVICES)),)
-GPSD_AUTOCONF += --enable-max-devices=$(PTXCONF_GPSD_MAX_DEVICES)
+GPSD_ENV += max-devices=$(PTXCONF_GPSD_MAX_DEVICES)
 endif
 
+$(STATEDIR)/gpsd.prepare:
+       @$(call targetinfo)
+       @scons -C $(GPSD_DIR) $(GPSD_ENV)
+       @$(call touch)
+
+$(STATEDIR)/gpsd.compile:
+       @$(call targetinfo)
+       @$(call touch)
+
+$(STATEDIR)/gpsd.install:
+       @$(call targetinfo)
+       @scons -C $(GPSD_DIR) $(GPSD_ENV) install
+       @$(call touch)
+
 # ----------------------------------------------------------------------------
 # Target-Install
 # ----------------------------------------------------------------------------
@@ -98,16 +121,13 @@ ifdef PTXCONF_GPSD_GPSD
        @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpsd)
 endif
 ifdef PTXCONF_GPSD_GPSCTL
-       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpsctl)
+       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpsctl)
 endif
 ifdef PTXCONF_GPSD_GPSPIPE
-       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpspipe)
-endif
-ifdef PTXCONF_GPSD_GPSFLASH
-       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpsflash)
+       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpspipe)
 endif
 ifdef PTXCONF_GPSD_GPXLOGGER
-       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpxlogger)
+       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpxlogger)
 endif
 ifdef PTXCONF_GPSD_CGPS
        @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/cgps)
@@ -116,7 +136,7 @@ ifdef PTXCONF_GPSD_GPSMON
        @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpsmon)
 endif
 ifdef PTXCONF_GPSD_GPSDECODE
-       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/bin/gpsdecode)
+       @$(call install_copy, gpsd, 0, 0, 0755, -, /usr/sbin/gpsdecode)
 endif
 
 ifdef PTXCONF_GPSD_GPSCAT
-- 
2.20.1


_______________________________________________
ptxdist mailing list
[email protected]

Reply via email to