<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/bbef6efe661f9fc123f93f15c98a75a6b8b01b74">https://github.com/macports/macports-ports/commit/bbef6efe661f9fc123f93f15c98a75a6b8b01b74</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new bbef6efe661 gpsd: Clean up Portfile, remove compiler constraints.
</span>bbef6efe661 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit bbef6efe661f9fc123f93f15c98a75a6b8b01b74
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Fri Aug 7 22:31:07 2020 -0700

<span style='display:block; white-space:pre;color:#404040;'>    gpsd: Clean up Portfile, remove compiler constraints.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This doesn't make any functional changes, but eliminates some obsolete
</span><span style='display:block; white-space:pre;color:#404040;'>    cruft in the Portfile:
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    1) Removes compiler constraints, now that the relevant issues have
</span><span style='display:block; white-space:pre;color:#404040;'>    been fixed.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    2) Uses the new upstream python_shebang option, instead of patching
</span><span style='display:block; white-space:pre;color:#404040;'>    the installed Python programs.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    3) No longer patches the install_name, since it's now set correctly.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    4) Uses the default 1ms WRITE_PAD in the tests, which is now believed
</span><span style='display:block; white-space:pre;color:#404040;'>    to be sufficient.  The override is still available.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    5) Updates and adds some comments.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    A revbump may not be strictly necessary here, but since the removal of
</span><span style='display:block; white-space:pre;color:#404040;'>    the compiler constraints may affect the build on some OS versions, the
</span><span style='display:block; white-space:pre;color:#404040;'>    safe thing to do is revbump it.  This port doesn't take very long to
</span><span style='display:block; white-space:pre;color:#404040;'>    build, anyway.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    NOTE: During prerelease testing, it was observed that running gpscat
</span><span style='display:block; white-space:pre;color:#404040;'>    or gpsfake over SSH failed on most macOS versions.  However, this
</span><span style='display:block; white-space:pre;color:#404040;'>    wasn't repeatable while testing the port, so the code is assumed to be
</span><span style='display:block; white-space:pre;color:#404040;'>    OK as is.
</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;'>    Tested (including building the usual set of variant combinations and
</span><span style='display:block; white-space:pre;color:#404040;'>    running the tests) on 10.5 PPC, 10.5 i386, and 10.6-10.15 x86_64.
</span>---
 net/gpsd/Portfile | 71 ++++++++++---------------------------------------------
 1 file changed, 12 insertions(+), 59 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 630b9920b73..66ecef20019 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;'>@@ -4,7 +4,7 @@ PortSystem              1.0
</span> 
 name                    gpsd
 version                 3.21
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                1
</span> categories              net
 license                 BSD
 maintainers             {michaelld @michaelld} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -32,9 +32,8 @@ livecheck.url           https://download.savannah.gnu.org/releases/gpsd/
</span> livecheck.regex         "${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
 
 
<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:#ffe0e0;'>-# Some programs currently have issues with Python 3.8, so omit that for now.
</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, 3.3, or 3.4,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# since we're weaning MP off of them.
</span> 
 set pythons_suffixes {27 35 36 37 38}
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -74,43 +73,13 @@ return -code error "Invalid Python variant selection"
</span> 
 set pyver_dotted [join [split ${pyver_no_dot} ""] .]
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# KLUDGE: GPSD currently expects the Python extensions to build with the same
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# C compiler as was used to build Python itself.  This causes build failures
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# when the "Python C compiler" and the compiler chosen for GPSD have
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# configuration incompatibilities (or if the "Python C compiler" is absent).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Until this is fixed in GPSD upstream, some fiddling with compiler selection
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# is needed here.  This is especially kludgy since it requires knowledge of
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# how the Python port chooses the compiler.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# At the moment, the known failing case is when building with +python27
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# (the default) on 10.6, but here we just copy the condition from the python27
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Portfile.  However, unlike the latter, we don't include the clang_dependency
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# portgroup outside the conditional, since it's not known to be needed in such
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# cases, and its mere presence alters the compiler selection.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[variant_isset python27]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Code copied (approximately) from python27 Portfile
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${os.platform} eq "darwin" && ${os.major} < 11 && ${cxx_stdlib} eq "libc++"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        PortGroup           clang_dependency 1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        clang_dependency.extra_versions 3.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;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# KLUDGE: Another problem is that the hack to avoid the daemon() deprecation
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# warning causes clang-9.0++ to choke when targeting 10.6.  The relevant code
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# shouldn't really be built as C++ at all, but until that's fixed, we avoid
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# the problem by blacklisting clang-9.0 with +qt on OSX <10.7.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {[variant_isset qt]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {${os.platform} eq "darwin" && ${os.major} < 11} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        compiler.blacklist-append macports-clang-9.0
</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;'>-
</span> # NOTE:  All Python dependencies which are conceptually depends_run actually
 # need to be depends_lib, since the build procedure references them, usually
 # just to verify their existence.
<span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The py-serial dependency is a "soft" dependency in that the programs that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# use it can still operate with reduced functionality without it, but it's
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# a sufficiently lightweight dependency that it's not worth making optional.
</span> 
 depends_lib-append      port:python${pyver_no_dot} \
                         port:py${pyver_no_dot}-serial
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -132,6 +101,7 @@ build.cmd               ${prefix}/bin/scons
</span> build.target
 build.args              prefix=${prefix} \
                         target_python=${configure.python} \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                        python_shebang=${configure.python} \
</span>                         qt=no \
                         usb=no \
                         strip=no \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -145,10 +115,10 @@ build.env-append        "CC=${configure.cc} [get_canonical_archflags cc]" \
</span> 
 # Allow the regression tests to be run via "port test gpsd".
 #
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# The speed of the daemon tests is highly dependent on the WRITE_PAD value.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Empirically, 200us seems to be adequate on a MacPro, and 500us seems to be
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# adequate on a PowerBook G4, but even 2ms is sometimes inadequate under 10.12,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# so we use 5ms here.  If needed, this value can be overridden with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# The speed of the daemon tests is highly dependent on the WRITE_PAD value,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# but values that are too low may cause spurious test failures. Due to some
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# recent improvements, 1ms is now believed to be adequate on the Mac, and is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the current upstream default.  If needed, this value can be overridden with
</span> # WRITE_PAD=XXX on the command line, but only if WRITE_PAD is included in
 # 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:#e0e0e0;'>@@ -167,28 +137,11 @@ test.args               {*}${build.args}
</span> test.env-append         {*}${build.env}
 if { [info exists ::env(WRITE_PAD)] } {
     test.env-append     WRITE_PAD=$::env(WRITE_PAD)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-} else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    test.env-append     WRITE_PAD=0.005
</span> }
 
 destroot.args           {*}${build.args}
 destroot.env-append     {*}${destroot.destdir} {*}${build.env}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Rewrite shebang lines of Python programs
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set python_progs {gegps gpscat gpsfake gpsprof ubxtool zerk}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {[variant_isset xgps]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        lappend python_progs xgps xgpsspeed
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    foreach pp ${python_progs} {
</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/${pp}
</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;'>-    system -W ${destroot}${prefix}/lib "install_name_tool -id \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${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:#ffe0e0;'>-
</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.
</pre><pre style='margin:0'>

</pre>