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>
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>
- 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>
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>
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>
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>
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>
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>
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>
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/e8593a8ebf2f05cc93235a8129a2ba8b839d6d90http://autobuild.buildroot.net/results/ff766f4f514c9cb4891873167f4e9b7870051883http://autobuild.buildroot.net/results/1a4/1a4dbd9ee5e0c7255843228731beab030ca005cahttp://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>
GCC 5.X generates an ICE when compiling gpsd for microblaze due
to optimizations, so lets disable it for now to works around
this problem.
A bug was reported to the gcc bug tracker:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68485
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
GPSD has the ability to support KPPS. Its enablement is determined
primarily from the existence of `sys/timepps.h`. This file is provided
from the pps-tools package. Adjusting GPSD's Makefile to depend on the
pps-tools package if a developer has included pps-tools as part of a
build.
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fix (works around) bug #6872https://bugs.busybox.net/show_bug.cgi?id=6872
The gpsd package was disabled due to an internal compiler error for
the microblaze architecture in the following commit:
http://git.buildroot.net/buildroot/commit/?id=d517415bcda380336f4a27bf248cef4d81791c9e
The problem is due to an specific GCC optimization flag
(-fexpensive-optimizations), so disabling it we can work around this
problem and compile gpsd for the microblaze architecture.
Signed-off-by: Sergio Prado <sergio.prado@e-labworks.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Adjust a generated udev rule file (25-gpsd.rules) to have user write
permissions. This is to prevent rebuild issues when the gpsd package
fails to re-install on a target (since the `cp` of the rule file will
fail due to permissions).
[Thomas: minor tweaks to code comments and commit title.]
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The following handles the GPSd SCons change for the explicit
configuration of the NMEA 0183 protocol. The protocol configuration
change was introduced in 3.12. Developer's who transitioned to
Buildroot's GPSd 3.15 had NMEA 0183 implicitly enabled by default. This
change allows NMEA 0183 to be explicitly disabled again.
See:
http://git.savannah.gnu.org/cgit/gpsd.git/commit/SConstruct?id=8f20d7b2d1ece8f3205ca038726c77daa5234c0c
Signed-off-by: James Knight <james.knight@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Drop upstream patches #1 and #3. Drop the no longer needed patch #2.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Now that IPv6 is mandatory remove package dependencies and conditionals
for it.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit doesn't touch infra packages.
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
No need to duplicate the host-pkgconf dependency on the Qt case, we
already depend on it in the general case.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Also makes the installation of the init script unconditional.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This patch converts udev to a virtual package. For the moment, there is only
one provider for the udev features: eudev.
Packages meant to provide udev-like features must select the symbol
BR2_PACKAGE_HAS_UDEV.
Packages depending on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV or
BR2_PACKAGE_UDEV have been converted to use the new symbol.
[Peter: move legacy symbols under 2014.05]
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The 3.11 release of gpsd still hasn't materialised. For now, bump the Git
snapshot again, removing local patches that have now been merged upstream.
Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The 3.11 release of gpsd is imminent; in the meantime, backport some patches
from upstream to fix some of the autobuild failures.
Also bump to the most recent Git snapshot.
Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
For gpsd 3.10, the ubx scons option has been renamed to ublox. Update our
makefile accordingly.
Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since the gpsd version bump from 3.9 to 3.10, gpsd has been generating a lot
of autobuild failures. See, for example, the following.
http://autobuild.buildroot.net/results/c8f/c8f2eed70cfbdcb7e7af820977aa531b59f0575a/
A 3.11 release is expected shortly; in the interim, switch to a recent Git
snapshot in which the most serious build problems appear to have been fixed.
Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Version 3.8 of gpsd has been released, which includes some patches sent
upstream by Thomas Petazzoni. This patch bumps the gpsd package version,
and removes the upstreamed patches.
Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that ncurses has been bumped to 5.9, it installs .pc files for
pkg-config, which allows gpsd to find it properly without the need to
specify a custom location for ncurses5-config.
Since gpsd now uses pkg-config to find the ncurses library, we also
add host-pkg-config in the dependencies.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The Python support is not cross-compile friendly (uses host compiler,
installs in wrong location, etc.) and nobody needs it at the moment,
so leave that to the first person who will need Python support for
gpsd.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
prefix should always be /usr, and destdir must be passed as DESTDIR,
and in the environment, not as a scons argument. Finally, we pass the
sysroot= argument to scons so that it doesn't add -L/usr/lib
parameters when compiling.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
It currently fails to build with:
libgpsd_core.c: In function 'gpsd_poll':
libgpsd_core.c:881: error: 'const struct gps_type_t' has no member named 'min_cycle'
libgpsd_core.c:884: error: 'const struct gps_type_t' has no member named 'min_cycle'
and is probably not a very important feature for normal users of gpsd.
The build problem has been reported to the gpsd-users mailing list.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>