<pre style='margin:0'>
Mark Moll (mamoll) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f110e5ed3d7ad46f47ad64042f150bcfc07f8c17">https://github.com/macports/macports-ports/commit/f110e5ed3d7ad46f47ad64042f150bcfc07f8c17</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 f110e5e  add pkgconfig as a build dependency, another attempt to avoid time out on build bot via a different patch
</span>f110e5e is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f110e5ed3d7ad46f47ad64042f150bcfc07f8c17
</span>Author: Mark Moll <mmoll@macports.org>
AuthorDate: Tue Mar 14 13:10:22 2017 -0500

<span style='display:block; white-space:pre;color:#404040;'>    add pkgconfig as a build dependency, another attempt to avoid time out on build bot via a different patch
</span>---
 science/ompl/Portfile                            |  3 +-
 science/ompl/files/patch-pybinding-buildbot.diff | 55 +++++++++++-------------
 2 files changed, 26 insertions(+), 32 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/ompl/Portfile b/science/ompl/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4904528..e16cab9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/ompl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/ompl/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,6 +6,7 @@ cmake.out_of_source yes
</span> 
 name                ompl
 version             1.3.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> categories          science
 maintainers         mmoll
 description         The Open Motion Planning Library (OMPL)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,6 +19,7 @@ master_sites        https://bitbucket.org/ompl/ompl/downloads
</span> distname            ${name}-${version}-Source
 checksums           rmd160  7d277d8ba78225e65efa8471381f5dba43259233 \
                     sha256  87ab32541a461daca529d7a2d1aecd8d3f1df2d403756b7a7f98b6824be2d74e
<span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append port:pkgconfig
</span> depends_lib-append  port:boost port:ode port:flann port:triangle port:eigen3
 patchfiles          patch-pybinding-buildbot.diff
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -48,7 +50,6 @@ distributed under the Rice University Software Distribution License. For
</span> details, please read:
 http://ompl.kavrakilab.org/license.html#ricelicense"
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_build-append port:pkgconfig
</span>     depends_lib-append  port:assimp port:fcl port:redis
     configure.args-append -DOMPLAPP_PQP=OFF -DOMPLAPP_RESOURCE_DIR=${prefix}/share/ompl/resources
     distname            omplapp-${version}-Source
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/ompl/files/patch-pybinding-buildbot.diff b/science/ompl/files/patch-pybinding-buildbot.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index d5b2897..f955388 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/ompl/files/patch-pybinding-buildbot.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/ompl/files/patch-pybinding-buildbot.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,55 +1,48 @@
</span> diff -r 34cd59b7ccbe py-bindings/bindings_generator.py.in
 --- ompl/py-bindings/bindings_generator.py.in  Wed Mar 01 10:06:54 2017 -0600
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ ompl/py-bindings/bindings_generator.py.in   Mon Mar 06 16:35:23 2017 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -39,12 +39,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ompl/py-bindings/bindings_generator.py.in      Tue Mar 14 13:02:22 2017 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -39,10 +39,9 @@
</span>  # coding: utf-8
  
  import logging
<span style='display:block; white-space:pre;background:#e0ffe0;'>+-from os.path import exists, join, isdir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-from os import getenv
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-import subprocess
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-from sys import platform
</span> +import time
<span style='display:block; white-space:pre;background:#ffe0e0;'>- from os.path import exists, join, isdir
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from os import getenv
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- import subprocess
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from sys import platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++import threading
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++import sys
</span>  from pygccxml import declarations, parser
  from pygccxml.utils import xml_generator
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+from pygccxml.utils import loggers as pygccxml_loggers
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+from pyplusplus._logging_ import loggers as pyplusplus_loggers
</span>  from pyplusplus import module_builder, messages
<span style='display:block; white-space:pre;background:#ffe0e0;'>- from pyplusplus.module_builder import call_policies
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from pyplusplus.decl_wrappers import print_declarations
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -108,6 +111,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -108,6 +107,17 @@
</span>      c = decl.return_type.decl_string[-1]
      return c=='&' or c=='*'
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+class msgFilter(logging.Filter):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    def __init__(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++class Heartbeat(object):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    def __init__(self, delay):
</span> +        self.start = time.time()
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+        self.time = self.start
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    def filter(self, record):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if 'execution - done' not in record.msg:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            return False
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        t = time.time()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if t - self.time > 60:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            self.time = t
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            record.msg = 'still alive after %g seconds!' % (t - self.start)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            return True
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            return False
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        self.delay = delay
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    def __call__(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while True:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            time.sleep(self.delay)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            t = time.time()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            print('still alive after %g seconds!' % (t - self.start))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            sys.stdout.flush()
</span> +
  class code_generator_t(object):
      """The base class code generator."""
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -115,7 +133,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -115,7 +125,11 @@
</span>          """Constructor.
          @name name of the python module
          @dep name of another module this module depends on"""
 -        module_builder.set_logger_level( logging.INFO )
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+        # make binding generation more verbose to show build bots that the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        # build is not stuck, but not *too* verbose:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        for loggers in [pyplusplus_loggers.all, pygccxml_loggers.all_loggers]:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            for logger in loggers:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                logger.setLevel( logging.DEBUG )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                logger.addFilter(msgFilter())
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # create a separate thread that prints out a message every 60 seconds
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # to let build bots know the build is not stuck.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        self.heartbeat = threading.Thread(target = Heartbeat(60))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        self.heartbeat.daemon = True
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        self.heartbeat.start()
</span>          xml_generator_config = parser.load_xml_generator_configuration("@CASTXMLCONFIGPATH@")
          self.mb = module_builder.module_builder_t(
              files = [ 'bindings/' + name + '.h' ],
</pre><pre style='margin:0'>

</pre>