<pre style='margin:0'>
Michael Dickens (michaelld) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/9edd71db6b7dae698851dffa4943e860d2133ef4">https://github.com/macports/macports-ports/commit/9edd71db6b7dae698851dffa4943e860d2133ef4</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 9edd71db6b7dae698851dffa4943e860d2133ef4
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Sat Nov 24 16:34:27 2018 -0800

<span style='display:block; white-space:pre;color:#404040;'>    gpsd: update to 3.18
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    As well as updating the version, this also promotes the Python version
</span><span style='display:block; white-space:pre;color:#404040;'>    selection logic to be included in the main port.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Since there are two new programs (ubxtool and zerk) which use
</span><span style='display:block; white-space:pre;color:#404040;'>    py-serial, that is now an additional dependency.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Python dependencies which are only needed "for real" at run time are
</span><span style='display:block; white-space:pre;color:#404040;'>    now classified as "lib", because the build procedure checks for their
</span><span style='display:block; white-space:pre;color:#404040;'>    presence and disables related features if they're missing.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    The upstream code as patched by the port can also be seen at:
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>        https://github.com/fhgwright/gpsd/tree/macports-3.18
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    For this version, the -devel subport is also pointing to the 3.18
</span><span style='display:block; white-space:pre;color:#404040;'>    release sources, since a 3.18.1 version is upcoming.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    The Portfile comments referring to ptys not working in the sandbox
</span><span style='display:block; white-space:pre;color:#404040;'>    have been removed.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This also adds myself as a maintainer.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    TESTED:
</span><span style='display:block; white-space:pre;color:#404040;'>    Used "port test" and "port install" as the primary test, with the
</span><span style='display:block; white-space:pre;color:#404040;'>    default variants, all binary variants with the default python27, each
</span><span style='display:block; white-space:pre;color:#404040;'>    single binary variant with the default python27, and all binary
</span><span style='display:block; white-space:pre;color:#404040;'>    variants with each non-default python.  Ran this on a MacPro/10.9, a
</span><span style='display:block; white-space:pre;color:#404040;'>    MacPro/10.14, a MacBook Pro/10.9, a PowerBook G4/10.5, and VMs for all
</span><span style='display:block; white-space:pre;color:#404040;'>    10.5-10.13 versions, except that, due to test flakiness on the
</span><span style='display:block; white-space:pre;color:#404040;'>    PowerBook, "port test" was skipped in most PowerBook cases.  This was
</span><span style='display:block; white-space:pre;color:#404040;'>    all done for both the normal and -devel ports.
</span>---
 net/gpsd/Portfile                          | 201 +++++++++---------
 net/gpsd/files/patch-SConstruct.diff       |  64 ++++--
 net/gpsd/files/patch-fix_policy_t.diff     | 128 ------------
 net/gpsd/files/patch-fix_py_exe.devel.diff | 313 -----------------------------
 net/gpsd/files/patch-pyserial.diff         |  64 ++++++
 5 files changed, 204 insertions(+), 566 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gpsd/Portfile b/net/gpsd/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index f6b10d6..a04a39f 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/gpsd/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/gpsd/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,8 @@ name                    gpsd
</span> 
 license                 BSD
 categories              net
<span style='display:block; white-space:pre;background:#ffe0e0;'>-maintainers             {ryandesign @ryandesign} {michaelld @michaelld} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers             {ryandesign @ryandesign} {michaelld @michaelld} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        {fwright.net:fw @fhgwright} openmaintainer
</span> platforms               darwin
 
 description             GPS service daemon
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -27,46 +28,23 @@ if {${subport} eq ${name}} {
</span>     # release
     conflicts           gpsd-devel
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    version             3.17
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    revision            2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    checksums           rmd160 7aeacd58b7374b392e691fc470dc9a644169ba8a \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256 68e0dbecfb5831997f8b3d6ba48aed812eb465d8c0089420ab68f9ce4d85e77a \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size   8755304
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version             3.18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums           rmd160  8499ad1637bf6dbf6b7349d74b0dd6317771e87b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  48521f5158f5fda4c88a6f75e8bfc1ee67e999e3fc095e4a06cb8c2af56712f4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    9020649
</span> 
     master_sites        savannah
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # change API to avoid conflict with mach's policy_t
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # gps policy_t -> gps_policy_t.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # this change does not seem to conflict with dependent ports
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    patchfiles-append   patch-fix_policy_t.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # NOTE: The 3.18 tarball doesn't quite match the release-3.18 sources.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # This is a combination of a recurring problem clobbering the 'gps'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # symlinks in the contrib/ and devtools/, and an irrelevant post-release
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # change in SConstruct.  Since none of these affects the installed port,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # these errors are left as is.  Note, however, that attempts to directly
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # use Python programs in thsese subdirectories from the work directory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # may not work.
</span> 
     patchfiles-append   patch-SConstruct.diff
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # GPSD requires Python 2.6, 2.7, or 3.2+, but for now we just base
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # it on 2.7.  The Python Portgroup breaks the C installs, so we
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # can't use it until the port is split up between the C/C++ and
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Python code.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_run             port:python27
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.python        ${prefix}/bin/python2.7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${destroot}${prefix}/bin/gegps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${destroot}${prefix}/bin/gpscat
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${destroot}${prefix}/bin/gpsfake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${destroot}${prefix}/bin/gpsprof
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {[variant_isset xgps]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                ${destroot}${prefix}/bin/xgps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                ${destroot}${prefix}/bin/xgpsspeed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        system -W ${destroot}${prefix}/lib "install_name_tool -id ${prefix}/lib/libgps.dylib libgps.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append   patch-pyserial.diff
</span> 
     livecheck.type          regex
     livecheck.url           https://download.savannah.gnu.org/releases/gpsd/
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -77,87 +55,74 @@ if {${subport} eq ${name}} {
</span>     # devel
     conflicts           gpsd
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    version             20180919
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set commit          bbc75abc4f34b5bca4c0842986dffbf952d0077a
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    checksums           rmd160 aee030971a9fb559f5285a61fab536ac906fdc3a \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256 e603aefd549f2a93576f1fbc39491073c32052955258eb180d9505654c7ece3a \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size   9770512
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version             20181002
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set commit          81fb3d613b78f0cadcb57194dedf4ad2146ef0eb
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums           rmd160  27b14026f348829a8879072d85a5dabc571461c1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  426643084abb9b390b0a238616ff24bfe1072db00f6bbb8a4c1ff629c1174166 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    9779700
</span> 
     master_sites        http://git.savannah.gnu.org/cgit/gpsd.git/snapshot
     distname            ${name}-${commit}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # GPSD requires Python 2.6, 2.7, or 3.2+; don't use 2.6, 3.2, or
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # 3.3, since we're weaning MP off of them.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append   patch-SConstruct.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles-append   patch-pyserial.diff
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set pythons_suffixes {27 34 35 36 37}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.type          regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.version       ${commit}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.url           http://git.savannah.gnu.org/cgit/gpsd.git
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    livecheck.regex         "id=(\[0-9a-f\]*)'>HEAD"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set pythons_ports {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        lappend pythons_ports python${s}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# GPSD requires Python 2.6, 2.7, or 3.2+; don't use 2.6, 3.2, or
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# 3.3, since we're weaning MP off of them.
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set p python${s}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set v [string index ${s} 0].[string index ${s} 1]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set i [lsearch -exact ${pythons_ports} ${p}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        set c [lreplace ${pythons_ports} ${i} ${i}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        variant ${p} description "Build ${name} to use Python ${v}" conflicts {*}${c} ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pythons_suffixes {27 34 35 36 37}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # default to +python27
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set selected_python_ver_no_dot "27"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {[variant_isset python${s}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            set selected_python_ver_no_dot ${s}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    default_variants +python${selected_python_ver_no_dot}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # make sure -python27 isn't specified alone
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set selected_python_ver_no_dot ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        if {[variant_isset python${s}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            set selected_python_ver_no_dot ${s}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${selected_python_ver_no_dot} eq ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ui_error "\n\nYou must select one of the Python variants: +python27, +python34, +python35, +python36, or +python37.\n"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    return -code error "Invalid Python variant selection"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pythons_ports {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    lappend pythons_ports python${s}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set selected_python_ver_with_dot [join [split ${selected_python_ver_no_dot} ""] .]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_run-append      port:python${selected_python_ver_no_dot}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.python        ${prefix}/bin/python${selected_python_ver_with_dot}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # fix Python executable to use
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    patchfiles-append patch-fix_py_exe.devel.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    patch.pre_args -p1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        foreach tf \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            {SConstruct contrib/ntpshmviz contrib/ubxtool \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             contrib/webgps.py contrib/zerk devtools/ais.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             devtools/aivdmtable devtools/cycle_analyzer \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             devtools/flocktest devtools/identify_failing_build_options.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             devtools/regress-builder devtools/regressdiff devtools/sizes \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             devtools/striplog devtools/tablegen.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             devtools/test_json_validity.py devtools/uninstall_cleanup.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             gegps gps/gps.py gpscat gpsfake gpsprof jsongen.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             leapsecond.py maskaudit.py test_maidenhead.py test_misc.py \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             valgrind-audit.py www/gps_report.cgi.in \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             xgps xgpsspeed} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                reinplace "s|@MP_PY_EXE@|${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ${worksrcpath}/${tf}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set p python${s}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set v [string index ${s} 0].[string index ${s} 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set i [lsearch -exact ${pythons_ports} ${p}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set c [lreplace ${pythons_ports} ${i} ${i}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    variant ${p} description "Build ${name} to use Python ${v}" conflicts {*}${c} ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# default to +python27
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pyver_no_dot "27"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[variant_isset python${s}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set pyver_no_dot ${s}
</span>     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+default_variants +python${pyver_no_dot}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    livecheck.type          regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    livecheck.version       ${commit}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    livecheck.url           http://git.savannah.gnu.org/cgit/gpsd.git
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    livecheck.regex         "id=(\[0-9a-f\]*)'>HEAD"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# make sure -python27 isn't specified alone
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pyver_no_dot ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach s ${pythons_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[variant_isset python${s}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set pyver_no_dot ${s}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${pyver_no_dot} eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ui_error "\n\nYou must select one of the Python variants (+pythonXY).\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+return -code error "Invalid Python variant selection"
</span> }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+set pyver_dotted [join [split ${pyver_no_dot} ""] .]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# NOTE:  All Python dependencies which are conceptually depends_run actually
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# need to be depends_lib, since the build procedure references them, usually
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# just to verify theire existence.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append      port:python${pyver_no_dot} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        port:py${pyver_no_dot}-serial
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.python        ${prefix}/bin/python${pyver_dotted}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> depends_lib-append      port:ncurses
 depends_build-append    port:scons port:pkgconfig
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -193,11 +158,6 @@ build.env-append        CC="${configure.cc} [get_canonical_archflags cc]" \
</span> # extra_env in macports.conf.  In all cases, the WRITE_PAD value in use is
 # reported by the test framework and is visible with -v.
 #
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Note also that the MacPorts sandbox doesn't allow ptys, so the daemon tests
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# report "gpsfake: ptys not available, falling back to UDP.", but still work.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# This can be worked around by running "scons testregress" directly in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# ${worksrcpath}, rather than running it via "port test".
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span> # The test phase duplicates the arguments and environment (except WRITE_PAD)
 # from the build phase, mainly to avoid gratuitous rebuilds between the phases.
 #
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -219,15 +179,32 @@ if { [info exists ::env(WRITE_PAD)] } {
</span> destroot.args           {*}${build.args}
 destroot.env-append     {*}${destroot.destdir} {*}${build.env}
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Rewrite shebang lines of Python programs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set python_progs {gegps gpscat gpsfake gpsprof ubxtool zerk}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {[variant_isset xgps]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        lappend python_progs xgps xgpsspeed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach pp ${python_progs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|#!/usr/bin/env python|#!${configure.python}|" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${destroot}${prefix}/bin/${pp}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    system -W ${destroot}${prefix}/lib "install_name_tool -id \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${prefix}/lib/libgps.dylib libgps.dylib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Although GPSD has successfully been built with Qt5 at one time, that build
 # is currently broken.  Until the build issue is sorted out, Qt support is
 # limited to Qt4.
 #
 variant qt description {Build Qt4 bindings} {
     PortGroup               qt4 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # The following two lines are a workaround for #50347
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # The following three lines are a workaround for #50347
</span>     build.env-append        PKG_CONFIG_PATH=${qt_pkg_config_dir}
     test.env-append         PKG_CONFIG_PATH=${qt_pkg_config_dir}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.env-append     PKG_CONFIG_PATH=${qt_pkg_config_dir}
</span> 
     build.args-delete       qt=no
     build.args-append       qt=yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -260,7 +237,9 @@ variant dbus description {Include support for DBUS} {
</span> 
 variant xgps \
 description {Include xgps/xgpsspeed X11 clients (dependency-intensive)} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_run-append      port:py27-cairo port:py27-gobject3 port:gtk3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:py${pyver_no_dot}-cairo \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:py${pyver_no_dot}-gobject3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            port:gtk3
</span>     build.args-delete       xgps=no
     build.args-append       xgps=yes
     test.args-delete        xgps=no
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gpsd/files/patch-SConstruct.diff b/net/gpsd/files/patch-SConstruct.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 808f204..b466fc4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/gpsd/files/patch-SConstruct.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/gpsd/files/patch-SConstruct.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,14 +1,50 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- SConstruct.orig        2017-09-09 22:53:14.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ SConstruct     2017-09-09 22:43:30.000000000 -0700
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1762,8 +1762,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     # Theres's an internal error in astroid that requires we disable some
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     # auditing. This is irritating as hell but there's no help for it short
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     # of an upstream fix.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    checkable.remove("xgps")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    checkable.remove("xgpsspeed")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if env['xgps']:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        checkable.remove("xgps")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        checkable.remove("xgpsspeed")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     pylint = Utility(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         "pylint", ["jsongen.py", "maskaudit.py", python_built_extensions],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         ['''pylint --rcfile=/dev/null --dummy-variables-rgx='^_' '''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- SConstruct.orig        2018-10-02 17:05:28.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ SConstruct     2018-11-17 18:45:31.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -383,7 +383,8 @@ for key, value in os.environ.items():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Placeholder so we can kluge together something like VPATH builds.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # $SRCDIR replaces occurrences for $(srcdir) in the autotools build.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-env['SRCDIR'] = '.'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# scons can get confused if this is not a full path
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++env['SRCDIR'] = os.getcwd()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We may need to force slow regression tests to get around race
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # conditions in the pty layer, especially on a loaded machine.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1366,6 +1367,7 @@ if not env['python']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     python_progs = []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     python_progs = ["gegps", "gpscat", "gpsfake", "gpsprof", "ubxtool", "zerk"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    python_deps = {'gpscat': 'packet'}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if env['xgps']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # check for pycairo
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1388,6 +1390,8 @@ else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if env['xgps']:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         python_progs.extend(["xgps", "xgpsspeed"])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        python_deps['xgps'] = 'clienthelpers'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     python_modules = Glob('gps/*.py')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Build Python binding
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1471,6 +1475,11 @@ else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         python_compiled_libs[ext] = python_env.SharedLibrary(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             ext, python_objects[ext])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Make sure we know about compiled dependencies
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for prog, dep in python_deps.items():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        env.Depends(prog, python_compiled_libs['gps' + os.sep + dep])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Make PEP 241 Metadata 1.0.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # Why not PEP 314 (V1.1) or PEP 345 (V1.2)?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # V1.2 and V1.2 require a Download-URL to an installable binary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1906,7 +1915,7 @@ if python_progs:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     verenv = env['ENV'].copy()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     verenv['DISPLAY'] = ''  # Avoid launching X11 in X11 progs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     for prog in python_progs:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        vchk += '$SRCDIR/%s -V\n' % prog
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        vchk += '$PYTHON $SRCDIR/%s -V\n' % prog
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     python_versions = Utility('python-versions', [python_progs], vchk,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                               ENV=verenv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gpsd/files/patch-fix_policy_t.diff b/net/gpsd/files/patch-fix_policy_t.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index d6ce96a..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/gpsd/files/patch-fix_policy_t.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,128 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gps.h.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gps.h
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1902,7 +1902,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int driver_mode;              /* is driver in native mode or not? */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- };
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--struct policy_t {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+struct gps_policy_t {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     bool watcher;                 /* is watcher mode on? */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     bool json;                            /* requesting JSON? */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     bool nmea;                            /* requesting dumping as NMEA? */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2038,7 +2038,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     struct devconfig_t dev;       /* device that shipped last update */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    struct policy_t policy;       /* our listening policy */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    struct gps_policy_t policy;   /* our listening policy */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     struct {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   timestamp_t time;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gps_json.h.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gps_json.h
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -15,19 +15,19 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_data_report(const gps_mask_t,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 const struct gps_device_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                const struct policy_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                const struct gps_policy_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- char *json_stringify(char *, size_t, const char *);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_tpv_dump(const struct gps_device_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--             const struct policy_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+             const struct gps_policy_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_noise_dump(const struct gps_data_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_sky_dump(const struct gps_data_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_att_dump(const struct gps_data_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_oscillator_dump(const struct gps_data_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_subframe_dump(const struct gps_data_t *, char buf[], size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_device_dump(const struct gps_device_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--void json_watch_dump(const struct policy_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--int json_watch_read(const char *, struct policy_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+void json_watch_dump(const struct gps_policy_t *, char *, size_t);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+int json_watch_read(const char *, struct gps_policy_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-               const char **);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int json_device_read(const char *, struct devconfig_t *,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                const char **);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gpsd.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gpsd.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -519,7 +519,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int fd;                       /* client file descriptor. -1 if unused */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     time_t active;                /* when subscriber last polled for data */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    struct policy_t policy;       /* configurable bits */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    struct gps_policy_t policy;   /* configurable bits */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     pthread_mutex_t mutex;        /* serialize access to fd */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- };
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gpsd_json.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gpsd_json.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -133,7 +133,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_tpv_dump(const struct gps_device_t *session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--             const struct policy_t *policy CONDITIONALLY_UNUSED,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+             const struct gps_policy_t *policy CONDITIONALLY_UNUSED,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-              char *reply, size_t replylen)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     const struct gps_data_t *gpsdata = &session->gpsdata;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -372,7 +372,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     (void)strlcat(reply, "}\r\n", replylen);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--void json_watch_dump(const struct policy_t *ccp,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+void json_watch_dump(const struct gps_policy_t *ccp,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                char *reply, size_t replylen)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     (void)snprintf(reply, replylen,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -3397,7 +3397,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- void json_data_report(const gps_mask_t changed,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            const struct gps_device_t *session,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--           const struct policy_t *policy,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+           const struct gps_policy_t *policy,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            char *buf, size_t buflen)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* report a session state in JSON */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- gpsdecode.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ gpsdecode.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -551,7 +551,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* sensor data on fpin to dump format on fpout */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     struct gps_device_t session;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    struct policy_t policy;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    struct gps_policy_t policy;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     size_t minima[PACKET_TYPES+1];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #if defined(SOCKET_EXPORT_ENABLE) || defined(AIVDM_ENABLE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     char buf[GPS_JSON_RESPONSE_MAX * 4];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -649,7 +649,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- /* JSON format on fpin to JSON on fpout - idempotency test */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     char inbuf[BUFSIZ];
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    struct policy_t policy;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    struct gps_policy_t policy;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     struct gps_device_t session;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int lineno = 0;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- shared_json.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ shared_json.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -74,7 +74,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- int json_watch_read(const char *buf,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--              struct policy_t *ccp,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+              struct gps_policy_t *ccp,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-               const char **endptr)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     bool dummy_pps_flag;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- test_libgps.c.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ test_libgps.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -64,7 +64,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            sizeof(struct gps_data_t), sizeof(struct rtcm2_t),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            sizeof(struct rtcm3_t), sizeof(struct ais_t),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            sizeof(struct attitude_t), sizeof(struct rawdata_t),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--           sizeof(collect.devices), sizeof(struct policy_t),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+           sizeof(collect.devices), sizeof(struct gps_policy_t),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            sizeof(struct version_t), sizeof(struct gst_t));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       exit(EXIT_SUCCESS);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #ifdef CLIENTDEBUG_ENABLE
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gpsd/files/patch-fix_py_exe.devel.diff b/net/gpsd/files/patch-fix_py_exe.devel.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 9ccdb59..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/gpsd/files/patch-fix_py_exe.devel.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,313 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/SConstruct b/SConstruct
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index d3dec09..93a1528 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/SConstruct
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/SConstruct
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -349,7 +349,7 @@ for (name, default, help) in pathopts:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     env[name] = env.subst(env[name])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- env['VERSION'] = gpsd_version
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--env['SC_PYTHON'] = sys.executable  # Path to SCons Python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+env['SC_PYTHON'] = '@MP_PY_EXE@'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Set defaults from environment.  Note that scons doesn't cope well
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # with multi-word CPPFLAGS/LDFLAGS/SHLINKFLAGS values; you'll have to
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/contrib/ntpshmviz b/contrib/ntpshmviz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index fee7f92..90ff8d3 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/contrib/ntpshmviz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/contrib/ntpshmviz
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # ntpshmviz - graph the drift of NTP servers
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Written by Keane Wolter <daemoneye2@gmail.com>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/contrib/ubxtool b/contrib/ubxtool
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index d8999ae..7a8d95e 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/contrib/ubxtool
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/contrib/ubxtool
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # -*- coding: UTF-8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- '''
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ubxtool -- u-blox configurator and packet decoder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/contrib/webgps.py b/contrib/webgps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 93576ad..9a0e63a 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/contrib/webgps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/contrib/webgps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # encoding: utf-8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- """webgps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/contrib/zerk b/contrib/zerk
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index ff0a0b1..529714e 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/contrib/zerk
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/contrib/zerk
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # -*- coding: UTF-8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- '''
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- zerk -- GREIS configurator and packet decoder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/ais.py b/devtools/ais.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index f269433..33d65ae 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/ais.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/ais.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # A Python AIVDM/AIVDO decoder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/aivdmtable b/devtools/aivdmtable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index c572070..f871be1 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/aivdmtable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/aivdmtable
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Generate an asciidoc table of the six-bit encoding used in AIVDM packets.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/cycle_analyzer b/devtools/cycle_analyzer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 53ddd51..60151e4 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/cycle_analyzer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/cycle_analyzer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # BSD terms apply: see the file COPYING in the distribution root for details.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/flocktest b/devtools/flocktest
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index d301ee7..85adf85 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/flocktest
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/flocktest
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # BSD terms apply: see the file COPYING in the distribution root for details.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/identify_failing_build_options.py b/devtools/identify_failing_build_options.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index ec10a84..c478695 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/identify_failing_build_options.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/identify_failing_build_options.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This code runs compatibly under Python 2 and 3.x for x >= 2.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Preserve this property!
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/regress-builder b/devtools/regress-builder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 67df358..f7adf8e 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/regress-builder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/regress-builder
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # BSD terms apply: see the file COPYING in the distribution root for details.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/regressdiff b/devtools/regressdiff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index fa658c1..1546f3d 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/regressdiff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/regressdiff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Walk through a pair of textfiles looking for where they begin to differ.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # May be useful for comparing logs when regression tests break.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/sizes b/devtools/sizes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b8afa6e..16af161 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/sizes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/sizes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # sizes -- explore the sizes of static gpsd binaries
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/striplog b/devtools/striplog
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 5c63dda..e49a672 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/striplog
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/striplog
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # striplog -- strip leading lines from logs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/tablegen.py b/devtools/tablegen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b8a3ed3..29058f2 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/tablegen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/tablegen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This tool is intended to automate away the drudgery in bring up support
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # for a new AIS message type.  It parses the tabular description of a message
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/test_json_validity.py b/devtools/test_json_validity.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 959bfe8..be636ac 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/test_json_validity.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/test_json_validity.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Christian Gagneraud - 2012
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Simple python script that will parse json dictionaries on its input,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/devtools/uninstall_cleanup.py b/devtools/uninstall_cleanup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index e78d412..991b5cd 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/devtools/uninstall_cleanup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/devtools/uninstall_cleanup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This code runs compatibly under Python 2 and 3.x for x >= 2.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Preserve this property!
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gegps b/gegps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index ae4956a..a1908af 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/gegps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/gegps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # -*- coding: utf-8 -*-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # usage: gegps [-i] [-d kmldir]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gps/gps.py b/gps/gps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 037796d..24d3bef 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/gps/gps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/gps/gps.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # -*- coding: utf-8 -*-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gpscat b/gpscat
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 01199f8..5aefc7d 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/gpscat
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/gpscat
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # SPDX-License-Identifier: BSD-2-clause
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gpsfake b/gpsfake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 5d6a798..3781073 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/gpsfake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/gpsfake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # gpsfake -- test harness for gpsd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/gpsprof b/gpsprof
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 03b7425..7fedca2 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/gpsprof
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/gpsprof
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # SPDX-License-Identifier: BSD-2-clause
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/jsongen.py b/jsongen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index db4b871..2a881de 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/jsongen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/jsongen.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # SPDX-License-Identifier: BSD-2-clause
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/leapsecond.py b/leapsecond.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b379379..3882e67 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/leapsecond.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/leapsecond.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Usage: leapsecond.py [-v] { [-h] | [-f filename] | [-g filename]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/maskaudit.py b/maskaudit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index ed81ae8..640f1aa 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/maskaudit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/maskaudit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This file is Copyright (c) 2010 by the GPSD project
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # SPDX-License-Identifier: BSD-2-clause
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/test_maidenhead.py b/test_maidenhead.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 665fd49..f52c553 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/test_maidenhead.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/test_maidenhead.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Test grid locator conversion.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/test_misc.py b/test_misc.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 111d8e0..9d95552 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/test_misc.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/test_misc.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Test gps/misc.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/valgrind-audit.py b/valgrind-audit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 749b2fa..fa8ddd7 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/valgrind-audit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/valgrind-audit.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # This is a valgrind torture test for the gpsd daemon.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # It's not really expected to spot anything as long as we aren't using
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/www/gps_report.cgi.in b/www/gps_report.cgi.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 51ddf22..6c3cc96 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/www/gps_report.cgi.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/www/gps_report.cgi.in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # @MASTER@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/xgps b/xgps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 28898d5..d0a54c3 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/xgps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/xgps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # -*- coding: UTF-8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- '''
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- xgps -- test client for gpsd
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/xgpsspeed b/xgpsspeed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 06da1f2..a88df6f 100755
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/xgpsspeed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/xgpsspeed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!@MP_PY_EXE@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # by
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Robin Wittler <real@the-real.org> (speedometer mode)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/gpsd/files/patch-pyserial.diff b/net/gpsd/files/patch-pyserial.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..5fff2892
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/gpsd/files/patch-pyserial.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,64 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ubxtool.orig   2018-10-02 15:51:18.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ubxtool        2018-11-17 15:10:43.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1938,6 +1938,7 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         "Initialize class"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         Serial = serial_class
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        Serial_v3 = Serial.VERSION.split('.')[0] >= '3'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # buffer to hold read data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         self.out = b''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1997,6 +1998,9 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # configure the serial connections (the parameters refer to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # the device you are connecting to)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # pyserial Ver 3.0+ changes writeTimeout to write_timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # Using the wrong one causes an error
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            write_timeout_arg = 'write_timeout' if Serial_v3 else 'writeTimeout'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             try:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 self.ser = Serial.Serial(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     baudrate=opts['input_speed'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2007,10 +2011,7 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     stopbits=Serial.STOPBITS_ONE,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     # read timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     timeout=0.05,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    # pyserial Ver 3.0+ changes writeTimeout to write_timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    # just set both
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    write_timeout=0.5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    writeTimeout=0.5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    **{write_timeout_arg: 0.5}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             except Serial.serialutil.SerialException:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 # this exception happens on bad serial port device name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- zerk.orig      2018-10-02 15:51:27.000000000 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ zerk   2018-11-17 15:10:43.000000000 -0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1402,6 +1402,7 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         "Initialize class"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         Serial = serial_class
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        Serial_v3 = Serial.VERSION.split('.')[0] >= '3'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # buffer to hold read data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         self.out = b''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1460,6 +1461,9 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # configure the serial connections (the parameters refer to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             # the device you are connecting to)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # pyserial Ver 3.0+ changes writeTimeout to write_timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            # Using the wrong one causes an error
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            write_timeout_arg = 'write_timeout' if Serial_v3 else 'writeTimeout'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             try:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 self.ser = Serial.Serial(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     baudrate=opts['input_speed'],
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1470,10 +1474,7 @@ class gps_io(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     stopbits=Serial.STOPBITS_ONE,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     # read timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     timeout=0.05,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    # pyserial Ver 3.0+ changes writeTimeout to write_timeout
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    # just set both
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    write_timeout=0.5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    writeTimeout=0.5,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    **{write_timeout_arg: 0.5}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             except Serial.serialutil.SerialException:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 # this exception happens on bad serial port device name
</span></pre><pre style='margin:0'>

</pre>