At least cgps needs the terminfo files to start. But other tools like
gpspipe work without it. Hence, only recommend it, but do not depend on it.
Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Changelog:
============
- Improve support for newer signal ids (L1/L2/L5, etc.).
- xgps add signal id names
- gpsrinex, support new signal ids. Add -g and --gnss options.
- Initial SPARTNv2 support. Disabled by default, terrible protocol.
- Many ubxtool updates for newer u-blox receivers.
- Update driver_ubx for newer u-blox receivers.
- Lexer() FFI interface is unused, and deprecated October 2025.
- xgps and xgpsspeed work under Wayland.
- Add support for Qt6.
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The `gpsmon` tool is really deprecated now, after years of its use being
discouraged. The `cgps` tool can be used as a replacement, with the
added benefit that it's more power-efficient because it doesn't reparse
with a slightly different parses like `gpsmon` did.
Drop patch that was applied upstream in https://gitlab.com/gpsd/gpsd/-/merge_requests/406
Upstream changelog:
3.26.1: 17 May 2025
Increment libgps version
Update Debian Trixie in build.adoc
Fix buffer overrun in cgps.
Make gpsmon deprecation slightly more obvious.
Fix some *BSD compiler warnings
Fix numerous typos.
3.26: 11 May 2025
Handle NTRIPv2 that comes in "chunks".
Add many UBX decodes. Mostly in ubxtool, some in gpsd.
Improve TSIP and UBX initialization.
Gather Antenna Status (ant_stat) and Jamming (jam) and send to JSON.
Always build u-blox, RTCM104V2, RTCM104V3 drivers.
Add partial support for badly documented ALLYSTAR GNSS messages.
Add minimal support for Unicore GNSS messages.
Add minimal support for CASIC GNSS messages.
Add minimal support for buggy Inertial Sense GNSS messages.
Try to work better as non-root using non-standard "capabilities".
Add SUBSYSTEM=gnss rule to gpsd.rules
Moved ntploggps from NTPSec to GPSD and renamed to gpslogntp.
Fix many build, Coverity, and Codacy warnings.
Improved Python interface for the lexer.
Add support for new BeiDou PRNs and subframes.
Officially deprecate gpsmon.
Improve support for NMEA 4.11 (a stealthy moving target).
Remove Oceanserver IMU support. Never worked well.
Always with build ubx, NMEA 103, rtcm104v2 and rtcm104v3 support.
Add support for jamming detection.
Add Go client example.
Add support for RTCM3.2
Note: The new "chunk" code led to a short lived bug that led to
CVE-2023-43628, a buffer overrun. That bug never appeared in
any gpsd release.
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The python3-pyserial dependency was introduced in [1].
It is provided by the meta-python layer and so make it conditionally.
Fixes:
| NOTE: Resolving any missing task queue dependencies
| ERROR: Nothing RPROVIDES 'python3-pyserial' (but ../meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.25.bb RDEPENDS on or otherwise requires it)
| NOTE: Runtime target 'python3-pyserial' is unbuildable, removing...
| Missing or unbuildable dependency chain was: ['python3-pyserial']
| NOTE: Runtime target 'gpsd' is unbuildable, removing...
| Missing or unbuildable dependency chain was: ['gpsd', 'python3-pyserial']
[1] https://git.openembedded.org/meta-openembedded/commit/?id=1266c912afa0abf118eaa5d152a0641c87665fbd
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The python3-pyserial dependency was introduced in [1].
It is provided by the meta-python layer and so make it conditionally.
Fixes:
| NOTE: Resolving any missing task queue dependencies
| ERROR: Nothing RPROVIDES 'python3-pyserial' (but ../meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.25.bb RDEPENDS on or otherwise requires it)
| NOTE: Runtime target 'python3-pyserial' is unbuildable, removing...
| Missing or unbuildable dependency chain was: ['python3-pyserial']
| NOTE: Runtime target 'gpsd' is unbuildable, removing...
| Missing or unbuildable dependency chain was: ['gpsd', 'python3-pyserial']
[1] https://git.openembedded.org/meta-openembedded/commit/?id=1266c912afa0abf118eaa5d152a0641c87665fbd
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Import the patch from pending MR to fix the way flags are being handled
by SConsript. Otherwise CXXFLAGS being added to CCFLAGS, masking test
results because of the -fvisibility-inlines-hidden warning turning into
error.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This new version installs /usr/share/snmp/mibs/gpsd/GPSD-MIB which is
packaged in a new package gpsd-snmp.
Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Replace references of WORKDIR with UNPACKDIR where it makes sense to do
so in preparation for changing the default value of UNPACKDIR.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
gpsd-machine-conf is an empty recipe that does not ship any files on the
rootfs. This recipe is targeted to be extended by a bbappend that
will provide the gpsd machine configuration.
In the case where gpsd-machine-conf is included into an image, and if no
layers is providing the machine configuration, the build fails with
the following error:
No match for argument: gpsd-machine-conf
Error: Unable to find a match: gpsd-machine-conf
This error is because no package was created for gpsd-machine-conf
since the recipe does not install any files.
This commit allows the creation of an empty package in order to avoid
the do_rootfs failure when this package is included into an image.
Signed-off-by: Fabien Parent <fabien.parent@linaro.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
3.24: 2022-04-22
NTRIP 2.0 now works. But still only plain HTML, not RTP, etc.
Remove ntrip option and NTRIP_ENABLE. Always build.
Remove passthrough option and PASSTHROUGH_ENABLE. Always build.
Remove nmea0183 option and NMEA0183_ENABLE. Always build.
Remove netfeed option and NETFEED_ENABLE. Always build.
gpsd will retry ntrip:// and tcp:// connections
cgps can expand to show more sats. Added --rtk option.
maidenhead() checks for input errors.
Better SHM logs.
PPS and TOFF JSON now include shm used, and real precision.
Add initial, untested, TSIPv1 support
split debug messages into different syslog() levels.
New ppscheck options, and can use /dev/ppsX devices.
First try at TSIPv1 protocol decodes.
Decode Quectel $PQVERNO for firmware version
Decode Skytrak PX1172RH_DS messages.
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The gps-utils-python package was introduced in commit 66721940 (gpsd:
split python utils from gps-utils), except it was never added to
PACKAGES, which resulted in the following error if anything depends on
gpsd:
ERROR: Nothing RPROVIDES 'gps-utils-python' (but .../gpsd_3.23.1.bb
RDEPENDS on or otherwise requires it)
Also remove a no longer relevant comment.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Neither gpsd nor significant part of gps-utils depend on python. However
installing gps-utils package would require installing python, which adds
about 17 MB to the image size. Split away gps-utils-python to allow
using gpsd/gps-utils in the systems with limited resources (or in the
initramfs).
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
If one adds some configuration that disables the creation of the Python
files, e.g., minimal=yes, then the installation fails when it tries to
copy the non-existent files. Avoid this by checking for their existence
before copying them.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
gpsd scons build system defaults CC to 'gcc', which prevents clang
toolchain to be used.
Export CC explicitly via environment to override default assignment in
scons.
Signed-off-by: Andrey Zhizhikin <andrey.z@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Avoid packaging 'gpsd' and 'gpsdctl' by gps-utils in configurations
where ${bindir}==${sbindir} (e.g. nativesdk). Additionally provide
${sbindir} to scons for this case.
Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
- ${libdir}/gps/*.py is already packaged by python3-pygps
- no files matches ${libdir}/gps/*.so
Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The gpsd project stopped shipping the libgpsd shared library in commmit
901bfe301956 (6 years ago).
Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Files for pkg-config are installed under ${libdir}/pkg-config which is
already set in bitbake.conf
Signed-off-by: Christian Eggers <ceggers@arri.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The Python library cannot be copied from the source code directory,
otherwise generated files like gps.py and packet.py are missing.
This is noticed when starting ubxtool which otherwise crashes:
Traceback (most recent call last):
File "/usr/bin/ubxtool", line 48, in <module>
import gps.ubx
File "/usr/lib/python3.10/site-packages/gps/ubx.py", line 244, in <module>
class ubx(object):
File "/usr/lib/python3.10/site-packages/gps/ubx.py", line 255, in ubx
verbosity = gps.VERB_NONE
AttributeError: module 'gps' has no attribute 'VERB_NONE'
Signed-off-by: Matthias Klein <matthias@extraklein.de>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
3.23.1: 2021-09-21
Improve ubx cycle detection.
Add quirks for Jackson Labs nonstandard NMEA
Change STATUS_NO_FIX to STATUS_UNK to avoid confusion with fix mode.
Change STATUS_FIX to STATUS_GPS to avoid confusion with fix mode.
Change STATUS_DGPS_FIX to STATUS_DGPS to avoid confusion with fix mode.
Split SOURCE_ACM from SOURCE_USB. ACM has no speeds.
Add speeds 1 mbps, 1.152 mbps, 1.5 mbps, and higher. When libc supports them.
Improve autobaud.
Add new u-blox M10 messages.
Fix u-blox M6, M7 initialization issues.
Various ubxtool and gpxlogger updates.
Add mtk3301_speed_switcher()
No API, ABI changes.
Fallback to "python3" if "python" not found.
0001-SConscript-Correct-the-installation-of-gpsd.hotplug.patch
removed since it is included in 3.23.1
Signed-off-by: Zheng Ruoqin <zhengrq.fnst@fujitsu.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
gpsd.hotplug is only needed if systemd is not used, in which case it
will be installed by scons.
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
With the update to 3.23 (commit 87f3070f), the recipe was changed to
incorrectly install the gpsd.rules.in file instead of gpsd.rules. It
also missed that a new template string (@RUNDIR@) was introduced in the
systemd files, making them unusable.
Instead of trying to keep up with upstream changes, let scons do the job
and install the udev and systemd files by using the "udev-install"
production instead of "install".
In addition to the correct files being installed,
"/etc/udev/rules.d/gpsd.rules" is now "/lib/udev/rules.d/25-gpsd.rules".
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This is the result of automated script (0.9.1) conversion:
oe-core/scripts/contrib/convert-overrides.py .
converting the metadata to use ":" as the override character instead of "_".
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
This patch is backport from 821c149d486c0e67c1bd35d7c044ede9348aeb8d of
upstream to fix the broken d-bus message time
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The current init script can not start/stop gpsd daemon with the
following errors:
gpsd: line 48: /lib/init/vars.sh: No such file or directory
gpsd: line 52: /lib/lsb/init-functions: No such file or directory
Add a new init script to fix the issue.
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Explicitly add ${CC} as linker, for it to understand -Wl option.
Signed-off-by: Sean Nyekjaer <sean@geanix.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Revert "SConstruct: Add test for sizeof(time_t), result in SIZEOF_TIME_T."
Do not cross-compile a small for it to be executed on the host.
Signed-off-by: Sean Nyekjaer <sean@geanix.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This change makes the parsing go though, we still might have build
issues, which will be reported in world builds seprately
Signed-off-by: Khem Raj <raj.khem@gmail.com>