comment "gpsd needs a toolchain w/ threads, dynamic library"
	depends on BR2_USE_MMU
	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS

menuconfig BR2_PACKAGE_GPSD
	bool "gpsd"
	# Uses fork()
	depends on BR2_USE_MMU
	depends on BR2_TOOLCHAIN_HAS_THREADS
	# Always tries to build a shared library
	depends on !BR2_STATIC_LIBS
	help
	  gpsd is a service daemon that monitors one or more GPSes or
	  AIS receivers attached to a host computer through serial or
	  USB ports, making all data on the location/course/velocity of
	  the sensors available to be queried on TCP port 2947 of the
	  host computer.

	  The D-Bus interface is included if dbus-glib is enabled.

	  http://www.catb.org/gpsd/

if BR2_PACKAGE_GPSD

config BR2_PACKAGE_GPSD_DEVICES
	string "Where to look for GPSes"
	default "/dev/ttyS1"

comment "Features"

config BR2_PACKAGE_GPSD_CLIENT_DEBUG
	bool "client debugging support"

config BR2_PACKAGE_GPSD_OLDSTYLE
	bool "oldstyle (pre-JSON) protocol support"

config BR2_PACKAGE_GPSD_PROFILING
	bool "profiling support"
	depends on BR2_TOOLCHAIN_USES_GLIBC
	depends on !BR2_aarch64
	# Needs glibc for ARC arc-2018.03-eng007+ for correct __mcount linking
	depends on !BR2_arc

comment "profiling support not available with uClibc-based toolchain"
	depends on !BR2_TOOLCHAIN_USES_GLIBC

config BR2_PACKAGE_GPSD_NTP_SHM
	bool "NTP time hinting support"

config BR2_PACKAGE_GPSD_PPS
	bool "PPS time syncing support"
	select BR2_PACKAGE_GPSD_NTP_SHM

config BR2_PACKAGE_GPSD_USER
	bool "GPSD privilege revocation user"

config BR2_PACKAGE_GPSD_USER_VALUE
	string "user to run as"
	default "nobody"
	depends on BR2_PACKAGE_GPSD_USER

config BR2_PACKAGE_GPSD_GROUP
	bool "GPSD privilege revocation group"

config BR2_PACKAGE_GPSD_GROUP_VALUE
	string "group to run as"
	default "nobody"
	depends on BR2_PACKAGE_GPSD_GROUP

config BR2_PACKAGE_GPSD_FIXED_PORT_SPEED
	bool "compile with fixed serial port speed"

config BR2_PACKAGE_GPSD_FIXED_PORT_SPEED_VALUE
	int "serial port speed"
	default "9600"
	depends on BR2_PACKAGE_GPSD_FIXED_PORT_SPEED

config BR2_PACKAGE_GPSD_MAX_CLIENT
	bool "compile with limited maximum clients"

config BR2_PACKAGE_GPSD_MAX_CLIENT_VALUE
	int "maximum number of clients"
	default "10"
	depends on BR2_PACKAGE_GPSD_MAX_CLIENT

config BR2_PACKAGE_GPSD_MAX_DEV
	bool "compile with maximum allowed devices"

config BR2_PACKAGE_GPSD_MAX_DEV_VALUE
	int "maximum allowed devices"
	default "2"
	depends on BR2_PACKAGE_GPSD_MAX_DEV

config BR2_PACKAGE_GPSD_RECONFIGURE
	bool "allow gpsd to change device settings"
	default y

config BR2_PACKAGE_GPSD_CONTROLSEND
	bool "allow gpsctl/gpsmon to change device settings"
	default y

config BR2_PACKAGE_GPSD_SQUELCH
	bool "squelch gpsd_report and gpsd_hexdump to save cpu"

comment "Protocols"

config BR2_PACKAGE_GPSD_AIVDM
	bool "Aivdm"
	help
	  Aivdm support

config BR2_PACKAGE_GPSD_ASHTECH
	bool "Ashtech"
	help
	  Ashtech support

config BR2_PACKAGE_GPSD_EARTHMATE
	bool "Earthmate"
	help
	  DeLorme EarthMate Zodiac support

config BR2_PACKAGE_GPSD_EVERMORE
	bool "EverMore"
	help
	  EverMore binary support

config BR2_PACKAGE_GPSD_FURY
	bool "Fury"
	help
	  Jackson Labs Fury and Firefly support

config BR2_PACKAGE_GPSD_FV18
	bool "FV-18"
	help
	  San Jose Navigation FV-18 support

config BR2_PACKAGE_GPSD_GARMIN
	bool "Garmin (kernel)"
	help
	  Garmin kernel driver support

config BR2_PACKAGE_GPSD_GARMIN_SIMPLE_TXT
	bool "Garmin (simple text)"
	help
	  Garmin Simple Text support

config BR2_PACKAGE_GPSD_GEOSTAR
	bool "Geostar"
	help
	  Geostar Protocol support

config BR2_PACKAGE_GPSD_GPSCLOCK
	bool "GPSClock"
	help
	  GPSClock support

config BR2_PACKAGE_GPSD_ISYNC
	bool "iSync"
	help
	  Spectratime iSync LNRClok/GRCLOK support

config BR2_PACKAGE_GPSD_ITRAX
	bool "iTrax"
	help
	  iTrax support

config BR2_PACKAGE_GPSD_MTK3301
	bool "MTK-3301"
	help
	  Mediatek MTK-3301 support

config BR2_PACKAGE_GPSD_NAVCOM
	bool "Navcom"
	help
	  Navcom binary support

config BR2_PACKAGE_GPSD_NMEA
	bool "NMEA"
	default y
	help
	  Generic NMEA support

config BR2_PACKAGE_GPSD_NMEA2000
	bool "NMEA2000"
	select BR2_PACKAGE_GPSD_NAVCOM
	select BR2_PACKAGE_GPSD_AIVDM
	help
	  NMEA2000/CAN support

config BR2_PACKAGE_GPSD_NTRIP
	bool "NTRIP"
	help
	  NTRIP support

config BR2_PACKAGE_GPSD_OCEANSERVER
	bool "OceanServer"
	help
	  OceanServer Digital Compass support

config BR2_PACKAGE_GPSD_ONCORE
	bool "OnCore"
	help
	  OnCore support

config BR2_PACKAGE_GPSD_RTCM104V2
	bool "RTCM104 v2"
	help
	  RTCM104 v2 support

config BR2_PACKAGE_GPSD_RTCM104V3
	bool "RTCM104 v3"
	help
	  RTCM104 v3 support

config BR2_PACKAGE_GPSD_SIRF
	bool "SiRF"
	help
	  SiRF binary support

config BR2_PACKAGE_GPSD_SUPERSTAR2
	bool "SuperStarII"
	help
	  Novatel SuperStarII binary support

config BR2_PACKAGE_GPSD_TRIMBLE_TSIP
	bool "Trimble TSIP"
	help
	  Trimble TSIP support

config BR2_PACKAGE_GPSD_TRIPMATE
	bool "TripMate"
	help
	  Delorme TripMate support

config BR2_PACKAGE_GPSD_TRUE_NORTH
	bool "True North Technologies"
	help
	  True North Technologies support

config BR2_PACKAGE_GPSD_UBX
	bool "UBX"
	help
	  uBlox UBX binary support

endif
