| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Don't force _POSIX_C_SOURCE 200112L, just make it a minimum.
|
|
|
|
| |
Signed-off-by: Gary E. Miller <gem@rellim.com>
|
| |
|
|
|
|
|
|
|
| |
Now pass an optional message buffer to gps_read(). Finally
the JSON display in cgps works.
Thanks to Virgin Orbit for their support fixing this bug.
|
| |
|
|
|
|
|
| |
If this turn out to work, we may have to add a timeout member to the
device data structure.
|
|
|
|
|
|
|
| |
Prevent message:
(null) identified as a unknown, at 0 baud.
which occurs in the control stream when the output
is stdout (-c option).
|
|
|
|
|
|
|
|
|
| |
Ensure consistent marking of '(void)' for most normal usage of fprintf()
TESTED:
'scons build-all check' passes
Signed-off-by: Fred Wright <fw@fwright.net>
|
|
|
|
|
| |
gpsd now compiles, and runs scons check, with no warnings on
FreeBSD.
|
|
|
|
|
| |
Sad, C99 did not actually standardize the defines to invoke
the standard.
|
|
|
|
| |
vsnprintf() and strlcmp() are happier now.
|
|
|
|
| |
XOPEN_SOURCE 500 means X/Open 1995. Seems saef enough.
|
|
|
|
| |
I sure hope I did not drop a zero anywhere...
|
|
|
|
| |
Seems to make gpsctl work better.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit d1965788249d7e22cdde4021d452cf0dc6c6b9bd.
This breaks my build on Gentoo running gcc 4.9.2
libgps_shm.c: In function 'int gps_shm_read(gps_data_t*)':
libgps_shm.c:122:12: error: no match for 'operator=' (operand types are
'gps_data_t' and 'volatile gps_data_t')
noclobber = shared->gpsdata;
^
libgps_shm.c:122:12: note: candidate is:
In file included from gpsd.h:350:0,
from libgps_shm.c:30:
gps.h:1918:8: note: gps_data_t& gps_data_t::operator=(const gps_data_t&)
struct gps_data_t {
^
gps.h:1918:8: note: no known conversion for argument 1 from 'volatile
gps_data_t' to 'const gps_data_t&'
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The proximate cause was that we've been seing emission of error
messages that were randomly and disturbingly variable across different
environments - notably Raspbian and Gentoo splint gave nontrivially
different results than Ubuntu 14.10 splint. And this was *not* due to
Ubuntu patches! A pristine splint built from the 3.1.2 tarball on
Ubuntu didn't match the Raspbian and Gentoo results either.
But this has been coming for a while. Easy access to more modern
static analyzers such as coverity, scan-build and cppcheck has been
decreasing the utility of splint, which is unmaintained and somewhat
buggy and not easy to use.
Only file not cleaned is ppsthread.c, because Gary has been working
on it during this cleanup.
All regression tests pass. PPS observed live on GR601-W.
|
| |
|
|
|
|
| |
gpsd is now splint clean again.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is done so we can add a "log" hook to the pps_thread_t
structure (this is not done yet) and harmonize with the name of the
outer logging function. If that name had been left as gpsd_report()
there would have been scope for bad confusion with the report_hook
member.
Also, remove two stray duplicative printf calls from the NMEA2000 driver
(drivers shouldn't have printfs!) and fix one typo.
This is a step towards factoring out ntplib. For that to happen, the
PPS thread code needs to be decoupled from the core session structure.
No logic changes. Object compatibility preserved. All regression tests pass.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
|
|
| |
Also, ensure this always happens within the regression-test driver.
All regression tests pass.
|
| |
|
| |
|
| |
|
|
|
|
| |
All regression tests pass.
|
| |
|
|
|
|
|
|
| |
Don't use constant/expression from an array's definition when referring
to its size. Eliminates redundancy and avoids problems when array size
changes. The change doesn't affect generated code.
|
| |
|
|
|
|
|
| |
All regression tests pass with default options (GPS tests are disabled with
minimal on, because socket_export is off).
|
|
|
|
| |
All regression tests pass.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
| |
Some cleanup and testing is still required.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
...with calls to gps_notify(), which indirects to its output method
through a slot in an errout structure. Usually the errout structure
lives inside the session context, but because struct errout_t is its
own thing this does not have to be the case. One large clique of
gpsd_notify() calls, in packet.c and isgps.c, looks at a struct
errout_t copy in a lexer control block
This change is not complete. Remnant gpsd_report calls need to be changed,
and gpsmon needs to be tweaked so that the struct_error_t in its context
is a non-defaukt hook updating the cuses display rather than simply
dumping to stderr. Also the report label functionality needs to be added.
All regression tests pass.
|
|
|
|
|
|
| |
A major step towards eliminating reverse linkage.
All regression tests pass.
|
| |
|
|
|
|
| |
All regtession tests pass. gpsmon works live on GR601-W (with PPS).
|
| |
|
|
|
|
|
|
|
|
| |
This came up in connection with Android. According to SuS this shouln't be
necessary if sys/time.h was included, but oh well. While we;re at it, rearrange
some includes for more consistent order.
All regression tests pass.
|
|
|
|
| |
All regression tests pass.
|
|
|
|
| |
Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
|
|
|
|
|
|
|
|
| |
...actually revealed a bug - device-shutdown messages getting lost on the
way out to the test clients. This set of changes mostly fixes it. Some
glitches remain; this state of things passes all regression tests but
attempting to get rid of what now ought to be unnecessary code in fake.py
does not pass. To be continued...
|
| |
|
| |
|
|
|
|
| |
This degree of linger after packet sync is sufficient on a BU355 (SiRF-III).
|