| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
scons 3.0.5 wants config.env, instead of env, or bare keyword, so
that options get stored in the config.
|
| |
|
|
|
|
| |
Sigh, some configuration done after the end point...
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Changes to env between Configure() and Finish() get lost.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows the absence of the PySerial ('serial') module, as long as
the -f option is not used. This not only avoids the PySerial
dependency for informational options like -h and -V, but also allows
full functionality in the "via gpsd" mode.
The 'gps_io' class was taking the 'serial' module (mistakenly referred
to as a class as an init argument, but wasn't making any use of that
flexibility. Since fully supporting that would complicate the error
message, it's simply removed instead.
The zerk changes are untested, due to the lack of appropriate
hardware. However, they are identical to the changes in the
corresponding code in ubxtool, which is tested.
The manpages are updated to mention the pyserial dependency for -f.
The install of ubxtool and zerk is no longer conditional on PySerial.
TESTED:
Tested ubxtool with PySerial 2.7, 3.0, 3.4, and none at all, verifying
that -f works with all three versions, and other modes work without.
Also tested with Python 3.4-3.7 (PySerial 3.4 only).
|
|
|
|
|
| |
env is not the playground it once was. scons 3.0.5 still broken
with gpsd...
|
|
|
|
| |
env is no longer the open playground that it used to be...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Shared libraries on OSX need to have their IDs set to their full paths
in order to get the proper paths into executables. Ideally, SCons
would take care of this, but doesn't. It's necessary to use the OSX
install_name_tool on an installed library to fix that.
This adds code to do that, verifying that install_name_tool actually
exists, and falling back to installing without it (the former
behavior) otherwise. However, the CheckProg function didn't exist in
some old versions of SCons, so if it's missing (on OSX), the code just
assumes that the tool is present and hopes for the best. The version
of SCons provided by MacPorts is known to have CheckProg.
TESTED:
Ran installs on OSX 10.9, 10.13, and 10.5 (PPC), as well as Ubuntu
14.04. Verified that the tool is used and has the intended effect
when present on OSX. Verified that the install works without using it
on OSX without it, as well as Linux without it, including when a dummy
version is present on Linux. Did *not* test with an old SCons.
|
|
|
|
|
|
| |
No point configuring for timeservice if no PPS is possible.
More documentation on what timeservice=yes actually does.
|
|
|
|
| |
deg_to_s() needs to do better rounding.
|
|
|
|
| |
Bug and test case by: Stephen Moshier <steve@moshier.net>
|
|
|
|
| |
Remove: .sconf_temp, .scons-option-cache, and config.log
|
|
|
|
|
|
|
|
| |
This tells the cc to check implicit fallthrought between cases.
The magic comment: /* FALLTHROUGH */ suppressed the warning.
Supported by osX, unlike __attribute__ ((fallthough)) which is a
gnu-ism.
|
|
|
|
|
| |
Many places in the code include sys/select.h with no guard for
a long time and no problem reports. So kill it off.
|
|
|
|
|
|
|
|
|
| |
The test programs used for some of the configure checks use dummy
main() functions which ignore argc and argv. Adding void casts keeps
these from giving warnings in config.log.
TESTED:
Build still works, and relevant warnings in config.log are gone.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code to restore the old CFLAGS when an option test failed was
sometimes a victim of Python's "list by reference rather than value"
issue. The effect was that the removal of the failing option
sometimes didn't work. The bug was only observed when the build was
being run by MacPorts, for some unknown reason. This has apparently
been broken ever since the introduction of CheckCompilerOption(),
though it didn't cause trouble until "Wvla" was added to the option
list, where it broke builds on OSX 10.5 and 10.6, whose compilers
don't support the option.
The fix is simply to use the "[:]" construct to copy the list.
TESTED:
Tested both "bare" build and MacPorts "destroot" on MacPro 10.9, and
VMs for macOS 10.5-10.13. Failures on 10.5 and 10.6 are now gone.
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default, zip follows symlinks rather than storing them as links in
the archive. This resulted in redundant copies of the 'gps'
subdirectory, which not only wasted space, but also wouldn't actually
work in practice since they wouldn't get populated with the build
products. Adding the 'y' option to the zip invocation fixes this.
TESTED:
Verified that the resulting zip archive has the expected symlinks, and
that the content matches the repo.
|
|
|
|
|
|
|
|
|
|
| |
The --transform pattern was prepending gpsd-<version> to the targets
of the relative symlinks, which is completely wrong. Fortunately, the
'S' flag in --transform is available to suppress that behavior.
TESTED:
Verified that the new tarball has correct symlinks, and no unexpected
differences from the old one.
|
| |
|
| |
|
| |
|
|
|
|
| |
More fallout from moving man pages to man/
|
|
|
|
|
| |
xsltproc never output on stdout. So the redirect did nothing, and
was overwritten by the output of xsltproc.
|
|
|
|
|
|
|
|
|
|
| |
On some older plaforms, clock_gettime() is contained in librt, thus
requiring linking with it. A mechanism already exists for doing this
where needed, but it was missing from the recipe for test_mktime.
TESTED:
On a BeagleBone running Debian 7, test_mktime now builds successfully.
It still needs another fix for platforms with a 32-bit time_t.
|
| |
|
|
|
|
| |
part of cleaning up the root directory.
|
|
|
|
| |
To make it clear these are asciidoc files, not plain text.
|
|
|
|
|
|
|
|
|
|
|
| |
The programs using the compiled Python extensions weren't specifying
the extensions as dependencies. This sometimes caused flaky failures
due to (parallel) build timing, and also caused "scons python-versions"
from scratch to fail consistently. Since the dependencies aren't
discovered automatically, they need to be added explicitly.
TESTED:
"scons python-versions" now succeeds when run from a clean state.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Although in-tree testing is sometimes able to find the Python
libraries via program-relative addressing, later Python versions name
compiled extensions in a version-dependent manner. This means that
programs need to run with the specific version of Python that the
extensions were compiled for. This change invokes the "target_python"
explicitly for the version checks, rather than using the
system-default Python. This is the same approach that is taken by all
other Python-based tests.
TESTED:
The 'python-versions' test now passes with "target_python=python3.7",
while the system-default Python is 2.7. This is after already
building the extensions; another commit will add the missing
dependencies.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Cuts the clutter a bit in the top level directory.
|
| |
|
| |
|
|
|
|
|
|
| |
The rawdata_t structure was written into, but never read from. So
a change to it is low impact. Reorder it to simplify pointer
arithmetic. In preparation for more changes.
|
| |
|
| |
|
| |
|
|
|
|
| |
Never did anything. Now it test compiles python bits.
|
| |
|
| |
|