Commit Graph
123 Commits
Author SHA1 Message Date
Yann E. MORIN fcbe9c41de package/gpsd: python support needs pyserial
Usually, ubxtool, a python-based tool to drive u-blox devices, connects
to a gpsd instance and delegates to it the responsibility to write to
and read from the actual device. This is sane, because a serial device
can only be opened once, and if gpsd is running, it has that device
open.

However, in some cases, ubxtool can be used to directly talk to the
device, to pre-configure it before gpsd runs, or even in the absence of
gpsd altogether. This is not used very often, except when setting up an
RTK base, where gpsd is not needed.

In that case, ubxtool will directly talk to the serial device. It uses
the pyserial python module. Since this is not the traditional way to
talk to the device, failure to import the module is ignored, and the
error reporting is deferred until it is actually needed, which is why we
did not catch the issue earlier. See [1] and [2].

Fixes: f3ef0723cf (package/gpsd: enable python support and modules)

[1] https://gitlab.com/gpsd/gpsd/-/blob/release-3.25/clients/ubxtool.py.in#L47
[2] https://gitlab.com/gpsd/gpsd/-/blob/release-3.25/gps/gps.py.in#L36

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
[Julien: add link to described code portion]
Signed-off-by: Julien Olivain <ju.o@free.fr>
(cherry picked from commit 5d2f3737a1)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2025-01-18 12:41:04 +01:00
Yann E. MORIN f6aa6d1a5f package/gpsd: add option to enable/disable the daemon
Some scenarii, like building an RTK base, does not require a gpsd
daemon, but just a few python based tools (e.g. the python scripts
to configure a GNSS device).

Add an option to enable or disable building and instaling the daemon.
We make it enabled by default, for legacy purposes.

When the daemon is installed, it also installs a few ancillary helpers,
which need some of the clients (e.g. the udev rule will use gpsdctl), so
ensure they are enabled with the daemon.

Speaking of the udev rule: without the daemon, it does not need to be
installed, so only try to fix its mode when the daemomn is installed.

Similarly for systemd, no need to install the drop-in when the daemon is
not installed. And for sysv init, no need for a startup script without
the daemon either.

Now that everything is optional, daemon, clients, and python stuff, we
need to ensure that at least something is installed. The obvious
solution would be to ensure that the daemon is installed, but that
causes conflicts in the Kconfig depencies (elided for readability):

    config BR2_PACAKGE_GPSD
        bool "gpsd:
        select BR2_PACKAGE_GPSD_DAEMON if ! BR2_PACKAGE_GPSD_CLIENTS \
                                       && ! BR2_PACKAGE_GPSD_PYTHON

    config BR2_PACKAGE_GPSD_DAEMON
        bool "daemon"
        select BR2_PACKAGE_GPSD_CLIENTS

would cause errors like:

    package/gpsd/Config.in:27:error: recursive dependency detected!
    package/gpsd/Config.in:27:      symbol BR2_PACKAGE_GPSD_DAEMON is selected by BR2_PACKAGE_GPSD_CLIENTS
    package/gpsd/Config.in:226:     symbol BR2_PACKAGE_GPSD_CLIENTS is selected by BR2_PACKAGE_GPSD_DAEMON

So we chose the next best option: ensure that the clients get built, if
nothing else does.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
Reviewed-by: Jan Havran <havran.jan@email.cz>
Tested-by: Jan Havran <havran.jan@email.cz>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-02 23:34:55 +02:00
Yann E. MORIN ef35d60e1a package/gpsd: add option to enable clients
In some cases, the clients are useless on the target, e.g. when there is
no need to adjust the gpsd daemon at runtime.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-02 23:32:21 +02:00
Yann E. MORIN 5cd3797e9b package/gpsd: move python option later
It's in the middle of options that are specific to the daemon, while
it itself is not specific to the daemon. We're going to add an option
to enable/disable the daemon soon, so that python option would get
hidden away.

Move it further down, out of scope of the daemon-related options.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-02 23:31:51 +02:00
Yann E. MORIN b88d2b51a4 package/gpsd: fix comment about wchar requirement
The comment does not follow the coding style, so update it appropriately.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-02 23:31:08 +02:00
Yann E. MORIN 9696d27756 package/gpsd: condition python stuff to the proper kconfig option
Currently, we have a Kconfig symbol to enable the python support in
gpsd, but the condition at configure time is based on whether the python
package is enabled. So, if a user does not enable python support in
gpsd, they still get it.

Switch to using the proper symbol.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd@kuhls.net>
Reviewed-by: Jan Havran <havran.jan@email.cz>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-02 23:30:58 +02:00
Yann E. MORIN c19cca0452 package: switch to _CPE_ID_VALID
Now that we document _CPE_ID_VALID, and that it shall be used instead of
setting a default value to one of the other _CPE_ID_* variables, change
all of the existing packages to use it, to avoid any error when we later
extend check-package to validate the sanity ofthe _CPE_ID_* variables.

Mechanical change done within the reference container, running the new
check in check-package, to report the CPE_ID errors:

    $ make check-package 2>/dev/null \
    |awk '{
            split($(1), a, ":"); fname = a[1]
            split($(2), a, "'\''"); val = a[2]
            new_var = $(8); gsub("_CPE_ID_.*", "_CPE_ID_VALID", new_var)
            printf("%s %s %s %s\n", fname, $(8), val, new_var)
    }' \
    |while read fname var val new_var; do
        sed -r -i -e "s/${var}[[:space:]]*=[[:space:]]*${val}/${new_var} = YES/" "${fname}"
    done

    $ git diff -I'CPE_ID_(VENDOR|VALID)'
    [empty]

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-02-11 16:30:06 +01:00
Fabrice Fontaine 3c7fece853 package/gpsd: bump to version 3.25
Drop patch (not needed anymore)

https://gitlab.com/gpsd/gpsd/-/blob/release-3.25/NEWS

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Tested-by: Yann E. MORIN <yann.morin@orange.com>
Acked-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2023-02-06 11:01:01 +01:00
Yann E. MORIN 2c9ef36242 package/gpsd: actually wait for after chrony
We use gpsd's upstream systemd service unit files, which define a
dependency on chronyd.service. And indeed, upstream chrony does
provide an example service unit file chronyd.service.

However, in Buildroot, we are not using chrony's upstream unit, we are
providing our own, much simplified as compared to upstream. We install
that unit file as chrony.service. Notice that subtle difference in the
name: upstream's is chronyd, with a trailing 'd', while ours just
chrony, without the trailing 'd'.

As a consequence, in a Buildroot-built system, gpsd does not wait for
after chrony is started, which causes all kind of mayhem when gpsd
actually needs to talk to chrony.

We have multiple options:
 1. use chrony's upstream unit file;
 2  rename the chrony service file as installed by Buildroot, to match
    what chrony would actually do;
 3. tweak gpsd's unit file to refer to chrony.service, not
    chronyd.service;
 4. leverage systemd's flexibility in how units are defined, and provide
    a drop-in to complement gpsd's unit to also wait for chrony.service.

For 1. it is totally unknown why we do have our unit file to begin with,
rather than use upstream's. Since upstream's is much more complex than
ours, using it might have unforetold consequences.

Going with 2. seems the easiest at first sight, but then it would break
systems where users provide their own drop-ins for chrony, as they would
no longer match.

3. is relatively easy, but running sed is not entirely nice. Besides, it
semantically should be a post-install hook, rather than a systemd-init
command, but again that makes things a bit more ugly. Also, some people
may have their own gpsd.service in an overlay or whatever, which would
break our fixup.

Solution 4. is pretty straightforward, although it is not ideal either.

To be noted: some distributions, like Ubuntu 20.04 at least, do install
the chrony unit file as chrony.service, like Buildroot does. However,
there does not appear to be any fixup in gpsd for this discrepancy, as
their gpsd install still refers to chronyd.service. So that does not
help us decide what to do.

So, eventually, we decided to go with solution 4, which has the least
impact on the system, and keeps the status-quo for all other use-cases.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Cc: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-10-21 20:58:22 +02:00
Yann E. MORIN b3b962c935 package/gpsd: drop legacy cleanup
Since gpsd-3.22, the systemd service files no longer contain hard-coded
paths to /usr/local/, but use @SBINDIR@ which is replaced appropriately
at build time, and contains the correct path.

Drop the legacy fixup now.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-10-21 20:58:22 +02:00
Yann E. MORIN 05595cbeac package/gpsd: bump to 3.24
In 3.24, the NTRIP and NMEA0183 drivers are now always enabled, so the
configure options ntrip and nmea0183 have been removed (upstream commits
f8cf4c922 and 838220fee respectively).

As a consequence, drop the options in menuconfig. We do not need to add
legacy support for those options. Indeed, users who had those enabled
will still get the feature, and those who did not will get them, in both
cases without loss of feature.

Finally, we need to fix a runtime issue that makes the kernel segfault
(yeah, that much), because upstream has been yoda-ifying their code, and
they actually borked a comparison. The issue has been fixed upstream,
but that is in a patch tha cobbles up many changes and brings new stuff,
so we just fix the issue with an unupstreamable patch (which we can drop
when we bump when upstream tags a newer release and we update).

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-09-17 11:56:25 +02:00
Yann E. MORIN a99f1ee0f6 package/gpsd: remove obsolete config option
The oldstyle option has been removed a while ago now:
    2015-02-22 a5a123b4f3b0 Feature removal - delete last remnants of
                            old pre-JSON protocol from libgps.

Drop it from Buildroot now.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-09-17 11:55:17 +02:00
Peter Korsgaard e643be1bfc package/gpsd: drop python2 support
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2022-02-09 22:08:05 +01:00
Thomas Petazzoni c240410d4b package/{gpsd,benejson}: drop host-python3 dependency
These packages needed to depend on host-python3 because their Scons
machinery was written in python3, but host-scons itself was depending
on host-python. Now that host-scons depends on host-python3, the
packages that use host-scons no longer have to carry a host-python3
dependency.

The other package using scons, mongodb, does not have a direct
dependency on host-python3, but on a number of host Python 3.x modules
which are needed during the build, so no changes is necessary there.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-01-08 12:04:14 +01:00
Thomas Petazzoni 726209fc79 package/scons: bring back Python interpreter call in SCONS variable
Back in commit
f72be49830 ("package/scons: remove
python from SCONS"), we changed the SCONS variable to not explicitly
invoke the Python interpreter, because some scons-based packages used
python2, some python3.

Now that the 3 remaining packages using scons (gpsd, mongodb and
benejson) all use python3, we can bring back the python3 interpreter
call into the SCONS variable, and slightly simplify those packages.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2022-01-08 12:04:14 +01:00
James Hilliard 8a21eec954 package/gpsd: bump to version 3.23.1
Fixes:
https://us-cert.cisa.gov/ncas/current-activity/2021/10/21/gps-daemon-gpsd-rollover-bug

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-10-23 11:49:07 +02:00
Fabrice Fontaine 922cd6f64c package/gpsd: fix workaround for gcc bug 68485
Workaround for gcc bug 68485 doesn't work anymore since bump to version
3.21 in commit 5b3e721399 because CXXFLAGS
is appended after CFLAGS and does not contain -O0:

/tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o rtcm2_json.os -c --sysroot=/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot -pthread -Wall -Wcast-align -Wextra -Wimplicit-fallthrough -Wmissing-declarations -Wmissing-prototypes -Wno-missing-field-initializers -Wno-uninitialized -Wpointer-arith -Wreturn-type -Wstrict-prototypes -Wvla -O0 -Os -g0 -pthread -fPIC -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/dbus-1.0 -I/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/dbus-1.0/include rtcm2_json.c
during RTL pass: reload
rtcm2_json.c: In function ‘json_rtcm2_read’:
rtcm2_json.c:267:1: internal compiler error: in gen_reg_rtx, at emit-rtl.c:1155
  267 | }
      | ^

It should be noted that GPSD_CXXFLAGS was added 5 years ago with commit
b4c050e9af but was not actually used in
that commit or any later.

Fixes:
 - http://autobuild.buildroot.org/results/fab33f25b08fa218af91640fdbd8c0dcf1d07228

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2021-08-03 23:18:45 +02:00
Sergey Matyukevich f3ef0723cf package/gpsd: enable python support and modules
Add option that enables gpsd python support including modules, tools,
and gpsfake test harness. If python is enabled then install python
modules unconditionally. Note that gpsd python modules run compatibly
under Python 2 and 3.x for x >= 2. So enable gpsd python support when
any Python version is enabled in board configuration. If no Python is
enabled, but gpsd Python support is requested, then select Python 3.

Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
[yann.morin.1998@free.fr: fix check-package]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-07-28 21:24:52 +02:00
Olivier Dautricourt 5b3e721399 package/gpsd: bump version to 3.21
Update gpsd to latest release v3.21:
- bump version
- update checksums
- remove patch for v3.20: it is not needed for v3.21
- remove obsolete options and add them to Config.in.legacy

Signed-off-by: Olivier Dautricourt <olivier.dautricourt@orolia.com>
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-07-28 21:24:52 +02:00
Fabrice Fontaine 6267c9b8fd package/gpsd: add SELinux module
Support for gpsd is added by the services/gpsd module in the SELinux
refpolicy.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2021-07-26 22:08:14 +02:00
Fabrice Fontaine b72416bc6c package/gpsd: add GPSD_CPE_ID_VENDOR
cpe:2.3:a:gpsd_project:gpsd is a valid CPE identifier for this package:

  https://nvd.nist.gov/products/cpe/search/results?namingFormat=2.3&keyword=cpe%3A2.3%3Aa%3Agpsd_project%3Agpsd

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-03-21 11:26:06 +01:00
Robert Hancock f32cf8e752 package/gpsd: bump version to 3.20
Removes BR2_PACKAGE_GPSD_PPS config option, since PPS functionality is
no longer optional and always enabled in gpsd's SCons configuration.

Removed passing ntpshm=y to SCons since that feature is also no longer
optional.

Added a patch adapted from changes merged upstream post-3.20 to fix a
build failure during cross-compilation when checking sizeof(time_t)
and where shared libraries were being linked with ld rather than g++.

Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-07-14 10:01:05 +02:00
Fabrice Fontaine 275dbb3add package/gpsd: drop patch
This patch is not needed since version 3.19 and
https://gitlab.com/gpsd/gpsd/-/commit/e3ec42e08a08af377499551d0528fc6ddf74cc12

So drop this patch and set CCFLAGS

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[yann.morin.1998@free.fr: s/GPS_CFLAGS/GPSD_CFLAGS/ ]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2020-06-21 22:47:50 +02:00
Fabrice Fontaine 61a813339a package/bluez_utils: drop package
BlueZ 4.x is deprecated since a long time (BlueZ 5.x has been released
in 2012) so drop it.

For cwiid, sconeserver and ussp-push, replace bluez_utils by
bluez5_utils. All other packages already support bluez5_utils so just
drop bluez_utils.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2020-02-03 22:55:08 +01:00
Fabrice Fontaine 81321c62c7 package/gpsd: add bluez5_utils optional dependency
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2020-01-11 15:29:04 +01:00
Thomas Petazzoni c727b23cdf package/gpsd: remove bogus select of BR2_PACKAGE_GPSD_NTP_SHM
In commit 57f85e52a7 ("package/gpsd:
unconditionally enable NTP time hinting support"), the option
BR2_PACKAGE_GPSD_NTP_SHM was removed, because NTP time hinting support
is now enabled unconditionally.

However, in one place, a select of this option was kept, which is
obviously no longer needed.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-12-13 21:05:06 +01:00
Titouan Christophe 1df29189e8 package/gpsd: perform SCons build with Python3
Signed-off-by: Titouan Christophe <titouan.christophe@railnova.eu>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-10-30 00:38:14 +01:00
Robert Hancock 690222d239 package/gpsd: Fix systemd service installation and paths
Fix several issues with systemd service file installation for gpsd:

- systemd support in the gpsd build was defaulting to enabled or not
based on whether the host system had systemd directories present. Set
this explicitly based on whether BR2_INIT_SYSTEMD is set.

- The installed systemd service files referenced paths in /usr/local when
the actual binaries are installed in /usr. Replace /usr/local with /usr
in the installed service files.

- When BR2_PACKAGE_HAS_UDEV was enabled, all of the binaries were
re-installed again, along with the udev rules, as part of the
post-install hooks. This overwrites the service files that were just
fixed up. Since udev-install implies install, we can just call
udev-install.

Signed-off-by: Robert Hancock <hancock@sedsystems.ca>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-10-27 20:27:03 +01:00
Bernd Kuhls 57f85e52a7 package/gpsd: unconditionally enable NTP time hinting support
Mandatory LEAP* defines are only enabled when TIMEHINT_ENABLE is
enabled: https://gitlab.com/gpsd/gpsd/blob/master/gpsd.h#L293

And TIMEHINT_ENABLE is only enabled when NTPSHM_ENABLE is enabled:
https://gitlab.com/gpsd/gpsd/blob/master/gpsd.h#L109

Upstream has entirely dropped the TIMEHINT_ENABLE option:

  https://gitlab.com/gpsd/gpsd/commit/8546be5f1eee36fd3fc66f09f2adfc18814d574c

So, for the time being, we simply enable it unconditionally.

Fixes:

  http://autobuild.buildroot.net/results/44639b8fe407bee30ac96ab54b8037439f3dac88/

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
[Thomas: drop Config.in.legacy, improve commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-07 16:30:47 +02:00
Bernd Kuhls 5692ffca98 package/gpsd: add whitespaces
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-06 22:24:53 +02:00
Bernd Kuhls fac4ec44de package/gpsd: bump version to 3.19
Removed patches applied upstream:
https://gitlab.com/gpsd/gpsd/commit/02d21faebec245e1526449fb54e7078914d75db7
https://gitlab.com/gpsd/gpsd/commit/d685ab05952d7eadf012fc054032f0190cf2abda
https://gitlab.com/gpsd/gpsd/commit/bfc7d136fb78fd20875efceb949c2e537e5435ee

Project moved to gitlab, updated project URL.

Updated license hash and changed license to BSD-2-Clause after upstream
commit:
https://gitlab.com/gpsd/gpsd/commit/2a286af6cf4f7fd469bf6bea644a7416c9631cde

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-08-04 18:51:39 +02:00
Giulio Benetti 74e56b104f package/gpsd: use BR2_TOOLCHAIN_HAS_GCC_BUG_68485 option
The workaround for gcc's ICE works ok, but it's used if
BR2_microblaze=y with a local comment. Let's use
BR2_TOOLCHAIN_HAS_GCC_BUG_68485 instead to avoid repeating ICE bug
comment for every package affected by it.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-06-19 21:49:41 +02:00
Fabrice Fontaine 0b2a2fc13e package/gpsd: fix isync build without nmea
Upstream suggested to move the definition of NMEA_DOLLAR out of the
ifdef.

Fixes:
 - http://autobuild.buildroot.org/results/7757ff82623eb5db8cbd9cdf69baf308fd0b0666

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-06-10 00:28:33 +02:00
Peter Korsgaard f590097045 Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-06-02 22:11:20 +02:00
Fabrice Fontaine 9386d72e74 package/gpsd: bump to version 3.18.1
- Remove second patch (already in version)
- Add a patch to fix build without man pages
- Add a patch to remove C99-style loop

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-05-26 15:03:39 +02:00
Fabrice Fontaine 6f7a15cbe5 package/gpsd: add skytraq option
skytraq support has been added in version 3.17 with
https://git.savannah.gnu.org/cgit/gpsd.git/commit/SConstruct?id=1456c9f50e718a394f2b633cf0773f3fd792cdaa

Allow the user to enable/disable it through an option and disable it
by default.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-05-26 14:50:08 +02:00
Fabrice Fontaine 87cc11688d package/gpsd: fix BR2_PACKAGE_GPSD_MAX_{CLIENT, DEV} options
limited_max_clients and limited_max_devices have been renamed in 3.12
as max_clients and max_devices, respectively.

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2019-05-25 23:13:36 +02:00
Fabrice Fontaine f72be49830 package/scons: remove python from SCONS
Remove $(HOST_DIR)/bin/python from SCONS variable to allow each scons
package to select their python interpreter. Indeed, most of the scons
packages (alljoyn, benejson, gpsd) only supports python2

Fixes:
 - http://autobuild.buildroot.org/results/b45f9fb69615b80758adeff4571e170c3bd9356b
 - http://autobuild.buildroot.org/results/13144a7ebd64ef7889312053f06a14047eea232d

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-04-01 22:46:38 +02:00
Peter Korsgaard 0f32ed723e package/gpsd: remove qt support
Now that Qt4 is removed, the support in gpsd can be removed as well.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2019-02-06 16:31:06 +01:00
Fabrice Fontaine c0deed8eed gpsd: disable documentation
Fixes:
 - http://autobuild.buildroot.org/results/cbdb4cc34080714082f044fde7e069e6ab5a0e8e

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-10-27 22:59:15 +02:00
Baruch Siach ae2a91322a gpsd: fix greis driver build with reconfigure disabled
Add a patch fixing undefined function build failure when reconfigure
support is disabled.

Fixes:
http://autobuild.buildroot.net/results/a13/a13a5d852c83cd1fc9f2d1fc2b7302db515278b8/
http://autobuild.buildroot.net/results/185/18599ea12a35b9715a67c1f4e5c4e56906235c94/
http://autobuild.buildroot.net/results/c00/c00d22a6dcadb82a19afab6eacea654d3c41b4c5/

Cc: Zoltan Gyarmati <zgyarmati@zgyarmati.de>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-10-09 21:37:32 +02:00
Zoltan Gyarmati a098aa2dbe gpsd: upgrade to 3.18
Removing previously upstreamed build fix patch and add config
option for the newly introduced Greis driver

Signed-off-by: Zoltan Gyarmati <zgyarmati@zgyarmati.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-10-08 17:42:33 +02:00
Zoltan Gyarmati 937a2cf5a9 package/gpsd: disable profiling support on ARC
With the currently used ARC glibc version the profiling build fails with
linking error to __mcount. The ARC glibc version arc-2018.03-eng007+
fixes this, therefore when glibc is bumped, this restriction can be
removed.

Fixes:
    http://autobuild.buildroot.net/results/88870f5bf4aff557d8eac4e1cc5d3e397e607af0/

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-02-21 21:29:25 +01:00
Zoltan Gyarmati 0b4bbf6e08 package/gpsd: add config option for Spectratime iSync and build fix patch
As in the inital 3.17 version bump patch the iSync config option was not
added, the iSync driver was implicitly enabled in the gpsd config as default,
and due to a bug in the gpsd build setup, this caused several autobuild issues
which are fixed by this. This commit adds both the Buildroot config option and
the gpsd patch which was also sent to and accepted in upstream.

Fixes:
    http://autobuild.buildroot.net/results/555b4bdd1707aa21e6d3014e30b635c96c5efffc
    http://autobuild.buildroot.net/results/cfc14a2c471c63ecc4c95c12b8e00ed7656acfd2
    http://autobuild.buildroot.net/results/2104e15526bd6f467f0d56dee10b5fa46e2c71dd
    http://autobuild.buildroot.net/results/610b3f898b396c1def682b809482408c2c4555bc
    ... and many more.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-04 23:45:40 +01:00
Zoltan Gyarmati 37ebd3b782 package/gpsd: upgrade to 3.17, remove obsolete patch
The upstream patch which disables the build-time systemctl call made it into
this release so removing it here. Also adding hash for the COPYING file.

Signed-off-by: Zoltan Gyarmati <mr.zoltan.gyarmati@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-01-29 14:40:54 +01:00
Waldemar Brodkorb e6d0177f53 gpsd: fix build for microblaze architecture
Disable O2 and add O0. The suggested flags in the gcc report
are not enough for gcc >= 6.

Fixes:

  http://autobuild.buildroot.net/results/3686cd3f3e7b6aee84f4377bd2dded1115321fb3/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
[Thomas: use Git to format the patch, improve patch description.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-08-14 23:29:50 +02:00
Adam Duskett be9d731edf package/g*: fix wrapping of Config.in help text
The check-package script when ran gives warnings on text wrapping
on all of these Config files.  This patch cleans up all warnings
related to the text wrapping for the Config files starting with
the letter g in the package directory.

The appropriate indentation is: <tab><2 spaces><62 chars>
See http://nightly.buildroot.org/#writing-rules-config-in for more
information.

Signed-off-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-31 19:09:20 +02:00
Yann E. MORIN 0d0fcfa443 package/gpsd: do not interact with systemd on install
When building on a systemd-based host for a systemd-based target, gpsd's
buildsystem will try to tell systemd to reload the its configuration and
recreate the entire dependency tree of services.

Of course, this can not work when run as a user:
    >>> gpsd 3.16 Installing to target
    ==== AUTHENTICATING FOR org.freedesktop.systemd1.reload-daemon ===
    Authentication is required to reload the systemd state.
    Authenticating as: root
    Password:

In fact, this does not even mean anything in cross-compilation.

Fortunately, upstream has already fixed their sin, so we backport it
(tweaked to apply onto 3.16).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-05-13 14:58:11 +02:00
Rahul Bedarkar 9f59b378a3 boot, package: use SPDX short identifier for BSD-3c
We want to use SPDX identifier for license string as much as possible.
SPDX short identifier for BSD-3c is BSD-3-Clause.

This change is done using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/BSD-3c/BSD-3-Clause/g'

Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-01 15:26:57 +02:00
Alexey Brodkin b4c050e9af gpsd: Fix building with gcc 6.x
When building C++ parts of gpsd (for example Qt bindings) with gcc 6.x following
failure happens, see [1]:
------------------------------>8-------------------------------
<command-line>:0:0: warning: "_LARGEFILE_SOURCE" redefined
<command-line>:0:0: note: this is the location of the previous definition
In file included from clock_gettime.c:10:0:
compiler.h: In function 'void memory_barrier()':
compiler.h:93:25: error: 'memory_order_seq_cst' was not declared in this scope
     atomic_thread_fence(memory_order_seq_cst);
                         ^~~~~~~~~~~~~~~~~~~~
compiler.h:93:25: note: suggested alternative:
In file included from .../output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.2.1/atomic:41:0,
                 from compiler.h:75,
                 from clock_gettime.c:10:
.../output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.2.1/bits/atomic_base.h:62:7: note:   'memory_order_seq_cst'
       memory_order_seq_cst
       ^~~~~~~~~~~~~~~~~~~~
In file included from clock_gettime.c:10:0:
compiler.h:93:45: error: 'atomic_thread_fence' was not declared in this scope
     atomic_thread_fence(memory_order_seq_cst);
                                             ^
compiler.h:93:45: note: suggested alternative:
In file included from .../output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.2.1/atomic:41:0,
                 from compiler.h:75,
                 from clock_gettime.c:10:
.../output/host/usr/arc-buildroot-linux-uclibc/include/c++/6.2.1/bits/atomic_base.h:101:3: note:   'std::atomic_thread_fence'
   atomic_thread_fence(memory_order __m) noexcept
   ^~~~~~~~~~~~~~~~~~~
scons: *** [qt-clock_gettime.os] Error 1
scons: building terminated because of errors.
------------------------------>8-------------------------------

As discussed on gpsd mailng list here [2] the only work-around as of today is to
add "-std=gnu++98" to both CFLAGS and CXXFLAGS which we implement here.

Fixes:
http://autobuild.buildroot.net/results/e8593a8ebf2f05cc93235a8129a2ba8b839d6d90
http://autobuild.buildroot.net/results/ff766f4f514c9cb4891873167f4e9b7870051883
http://autobuild.buildroot.net/results/1a4/1a4dbd9ee5e0c7255843228731beab030ca005ca
http://autobuild.buildroot.net/results/1a4/1a4dbd9ee5e0c7255843228731beab030ca005ca
and many others, see http://autobuild.buildroot.net/?reason=gpsd-3.16

[1] http://autobuild.buildroot.net/results/e85/e8593a8ebf2f05cc93235a8129a2ba8b839d6d90/build-end.log
[2] http://lists.nongnu.org/archive/html/gpsd-dev/2016-09/msg00082.html

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
Cc: Sergio Prado <sergio.prado@e-labworks.com>
Cc: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-25 17:45:26 +01:00