1. 04 Aug, 2020 1 commit
  2. 03 Aug, 2020 4 commits
    • Gary E. Miller's avatar
      Revert "SConstruct: Make python_shebang more convenient." · c68d3d2c
      Gary E. Miller authored
      This reverts commit e60579c4.
      
      Many problems with it.
      
      It imposes the constraint that the python_shebang must start with a
      os.path.sep, a slash on Linux.  This prevents the use of many
      valid shebangs.
      
      Shebangs are defined in man execve(2).  They may start with white
      space and the example at the top of the man page does so:
      
          #! interpreter [optional-arg]
      
      The man page later says:
      
          "The interpreter must be a valid pathname for an executable which is
          not itself a script."
      
      Nothing about it having to be an absolute path.
      
      It also breaks shebangs with single quotes, double quotes, or Winblows
      style:
      
          #!"C:\Python33\python.exe"
      
      PEP 397 (https://www.python.org/dev/peps/pep-0397/)  is also on point.
      Its first example uses white space, like this:
      
          #! interpreter [optional-arg]
      
      PEP 397 also calls out as valid:
      
          #!python
      
      So the patch that enforces the shabang to start with os.path.sep, or
      have /usr/bin/env appended, does not conform to existing practice or
      PEP 397,
      c68d3d2c
    • Ladislav Michl's avatar
    • Andreas B's avatar
      NMEA.adoc: fix formatting · c605812b
      Andreas B authored
      c605812b
    • Fred Wright's avatar
      SConstruct: Add workaround for SCons 2.3.0 symlink bug. · b009af22
      Fred Wright authored
      The versioned library feature was just added in SCons 2.3.0, but it
      had a bug where it was unable to overwrite existing symlinks.  This
      was fixed in 2.3.2, but we allow 2.3.0.
      
      The bug affected both rebuilds, which overwrite symlinks in the build
      directory, and installs, where it conspires with another (still
      current) bug that fails to remove library symlinks when uninstalling.
      
      The fix is to monkey-patch os.symlink to remove the old symlink if
      needed.  This is only applied when the SCons version is 2.3.0 or
      2.3.1.
      
      TESTED:
      Symlink overwrites now work with SCons 2.3.0 on Ubuntu 14.
      Also verified that os.symlink is not patched in SCons 3.1.2.
      b009af22
  3. 02 Aug, 2020 2 commits
    • Fred Wright's avatar
      SConstruct: Make python_shebang more convenient. · e60579c4
      Fred Wright authored
      This now allows specifying just the program name, as an alternative to
      the full path.  Values without a leading slash automatically have
      "/usr/bin/env " prepended.  The default is now simply 'python', which
      has the same result as before, but with a better example in the help
      text.
      
      It's not clear that making python_shebang and target_python
      independent is either useful or convenient, but that issue isn't
      addressed here.  At least it's now valid to set them to the same
      value in all cases.
      
      TESTED:
      Default, program, and path cases behave as expected.
      e60579c4
    • Fred Wright's avatar
      SConstruct: Add automatic pdb breakpoint. · d4252db4
      Fred Wright authored
      This makes debugging with pdb easier, while having no effect when
      pdb isn't loaded.
      
      TESTED:
      Breaks as intended when invoked with "scons --debug=pdb".
      d4252db4
  4. 01 Aug, 2020 1 commit
  5. 31 Jul, 2020 3 commits
  6. 30 Jul, 2020 4 commits
  7. 29 Jul, 2020 4 commits
  8. 28 Jul, 2020 3 commits
  9. 24 Jul, 2020 1 commit
  10. 21 Jul, 2020 2 commits
    • Fred Wright's avatar
      gpsctl: Fix crash from uninitialized report_mutex. · 0da4898e
      Fred Wright authored
      The gps_context_init() was happening way too late.  One of its
      functions is to initialize report_mutex, which is necessary before any
      logging calls.
      
      TESTED:
      No longer crashes from gpsd_acquire_reporting_lock() when used without
      a running gpsd and without -f.
      0da4898e
    • Fred Wright's avatar
      libgpsd_core: Fix reporting_lock error messages. · 7d5a6dbe
      Fred Wright authored
      The pthread_mutex_[un]lock functions return the error code directly,
      rather than in errno.
      
      TESTED:
      Message from failure in gpsctl is now reasonable.
      7d5a6dbe
  11. 20 Jul, 2020 5 commits
  12. 18 Jul, 2020 4 commits
  13. 17 Jul, 2020 2 commits
    • Gary E. Miller's avatar
      tests/test_*c: More FALLTHOUGH fixes. · 1cd822ef
      Gary E. Miller authored
      1cd822ef
    • Fred Wright's avatar
      Fix problems with new FALLTHROUGH. · 253416d9
      Fred Wright authored
      At least one Clang 6 version (from Xcode 6 on the Mac) advertises
      'fallthrough' as an attribute but screws up if you try to use it.  It
      isn't *all* Clang 6 builds, since the MacPorts Clang 6 reports
      'fallthrough' as unavailable (as do several later versions).  This fix
      limits the use of the attribute with Clang to versions later than 6.
      
      There were also six sources using the FALLTHROUGH macro without
      including compiler.h.
      
      TESTED:
      Ran "build-all check" with default compilers on macOS 10.5-10.15
      (including 10.5 PPC), Ubuntu 14, CentOS 7, Fedora 25, FreeBSD 10.3,
      OpenBSD 5.6 (32- and 64-bit), and NetBSD 6.1.5.
      On OSX 10.9, built with gcc 4.5, 4.7, 4.8, 4.9, 5, 6, 7, 8, 9, and 10,
      and with clang 3.3, 3.4, 3.7, 5, 6, 7, 8, 9, and 10.
      253416d9
  14. 16 Jul, 2020 4 commits