Hi,

Am Donnerstag, den 15.08.2019, 14:56 +0200 schrieb Sascha Hauer:
> From: Fabian Godehardt <f...@emlix.com>
> 
> 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 <f...@emlix.com>
> Signed-off-by: Sascha Hauer <s.ha...@pengutronix.de>
> ---
>  rules/gpsd.in   |  30 ++++++++----
>  rules/gpsd.make | 120 ++++++++++++++++++++++++++++--------------------
please remove old patches

>  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 <m...@pengutronix.de>
> +#               2019 by Fabian Godehardt <f...@emlix.com>
> +#
> +# 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) \
were comes prefix from?

> +     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 \
with DESTDIR=$(GPSD_PKGDIR) scons I didn't needed that

> +     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)
as far as I got Michael the ENV needs PATH=$(CROSS_PATH) for python support
>  
>  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)
> +
I would prefer to drop prepare stage entirely and compile in compile stage

> +$(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)
These changes seem to be caused by "bindir=$(GPSD_PKGDIR)/usr/sbin",
with DESTDIR you wouldn't need these changes

>  endif
>  
>  ifdef PTXCONF_GPSD_GPSCAT

Regards Denis


Diehl Connectivity Solutions GmbH
Geschäftsführung: Horst Leonberger
Sitz der Gesellschaft: Nürnberg - Registergericht: Amtsgericht
Nürnberg: HRB 32315
___________________________________________________________________________________________________

Der Inhalt der vorstehenden E-Mail ist nicht rechtlich bindend. Diese E-Mail 
enthaelt vertrauliche und/oder rechtlich geschuetzte Informationen.
Informieren Sie uns bitte, wenn Sie diese E-Mail faelschlicherweise erhalten 
haben. Bitte loeschen Sie in diesem Fall die Nachricht.
Jede unerlaubte Form der Reproduktion, Bekanntgabe, Aenderung, Verteilung 
und/oder Publikation dieser E-Mail ist strengstens untersagt.
- Informationen zum Datenschutz, insbesondere zu Ihren Rechten, erhalten Sie 
unter https://www.diehl.com/group/de/transparenz-und-informationspflichten/

The contents of the above mentioned e-mail is not legally binding. This e-mail 
contains confidential and/or legally protected information. Please inform us if 
you have received this e-mail by
mistake and delete it in such a case. Each unauthorized reproduction, 
disclosure, alteration, distribution and/or publication of this e-mail is 
strictly prohibited. 
- For general information on data protection and your respective rights please 
visit https://www.diehl.com/group/en/transparency-and-information-obligations/
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to