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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/a6b5bbadf26aaa1c1a16390d947bcd5ab2a7f551">https://github.com/macports/macports-ports/commit/a6b5bbadf26aaa1c1a16390d947bcd5ab2a7f551</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 a6b5bba  watchman: fix build on mojave
</span>a6b5bba is described below

<span style='display:block; white-space:pre;color:#808000;'>commit a6b5bbadf26aaa1c1a16390d947bcd5ab2a7f551
</span>Author: ken-cunningham-webuse <ken.cunningham.webuse@gmail.com>
AuthorDate: Sun Oct 14 17:57:19 2018 -0700

<span style='display:block; white-space:pre;color:#404040;'>    watchman: fix build on mojave
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    closes: https://trac.macports.org/ticket/57387
</span><span style='display:block; white-space:pre;color:#404040;'>    backport patch from master to fix error on mojave
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Also, take care of the following issues:
</span><span style='display:block; white-space:pre;color:#404040;'>      remove unused patchfile
</span><span style='display:block; white-space:pre;color:#404040;'>      add test support  to Portfile
</span><span style='display:block; white-space:pre;color:#404040;'>      requires c++11 1.1 PG
</span><span style='display:block; white-space:pre;color:#404040;'>      add size to checksums
</span><span style='display:block; white-space:pre;color:#404040;'>      bump revision
</span>---
 sysutils/watchman/Portfile                         |  12 ++-
 .../watchman/files/patch-container-of-uses.diff    | 107 +++++++++++++++++++++
 .../watchman/files/patch-fix-missing-destdir.diff  |  18 ----
 3 files changed, 118 insertions(+), 19 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/watchman/Portfile b/sysutils/watchman/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e3f8066..b212c5e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/watchman/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/watchman/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -2,8 +2,11 @@
</span> 
 PortSystem          1.0
 PortGroup           github 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           cxx11 1.1
</span> 
 github.setup        facebook watchman 4.9.0 v
<span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> categories          sysutils
 platforms           darwin
 maintainers         {sean @seanfarley} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,11 +21,18 @@ autoreconf.env      AUTOMAKE="automake --foreign"
</span> depends_build-append    port:pkgconfig
 depends_lib-append  port:pcre
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.pre_args      -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-container-of-uses.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args      --disable-silent-rules \
                     --with-pcre \
                     --without-python
 
 checksums           rmd160  3a50239fd977952bf8c8e3d5886d38377c85a53f \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  d529c2e9dfe1db32826717aed80553a99ba31aeb82cee88f93e31a984b372489
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  d529c2e9dfe1db32826717aed80553a99ba31aeb82cee88f93e31a984b372489 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    3508060
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run            yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target         check
</span> 
 github.livecheck.regex  {([^"rb-]+)}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/watchman/files/patch-container-of-uses.diff b/sysutils/watchman/files/patch-container-of-uses.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..1b88e7b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/watchman/files/patch-container-of-uses.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,107 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 28a70a81e70ea5919938958ce48112eafe24154c Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: Wez Furlong <wez@fb.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Wed, 2 May 2018 14:39:12 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] fixup compilation error on macos
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Summary:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This only seems to be breaking our autoconf based builds
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+on the mac hosts.  The cmake based builds on macs are succeeding.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Weird!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+I've removed the use of container_of; all instances can be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+replaced with a simple cast as the members were all at
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+the front of their respective structs.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Longer term, I'd like to migrate this to folly::dynamic and the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bser implementation there.
</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;'>+bser.cpp:345:17: error: offset of on non-standard-layout type 'json_object_t' [-Werror,-Winvalid-offsetof]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  auto object = json_to_object(obj);
</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;'>+Reviewed By: chadaustin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Differential Revision: D7849156
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+fbshipit-source-id: 9d8115a1fc73ee6360d3857644bc736e89205b67
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ bser.cpp                             |  3 +--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thirdparty/jansson/jansson_private.h | 27 +++++++++++++++++++--------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thirdparty/jansson/load.cpp          |  4 +++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 3 files changed, 23 insertions(+), 11 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/bser.cpp b/bser.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 4c858724..8db9baf2 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/bser.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/bser.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -342,8 +342,7 @@ static int bser_object(const bser_ctx_t* ctx, const json_ref& obj, void* data) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return -1;
</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;'>+-  auto object = json_to_object(obj);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  for (auto& it : object->map) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  for (auto& it : obj.object()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     auto &key = it.first;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     auto &val = it.second;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/thirdparty/jansson/jansson_private.h b/thirdparty/jansson/jansson_private.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 318b0698..b70f6e68 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/thirdparty/jansson/jansson_private.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/thirdparty/jansson/jansson_private.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15,9 +15,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <unordered_map>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define container_of(ptr_, type_, member_)  \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    ((type_ *)((char *)ptr_ - offsetof(type_, member_)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* va_copy is a C99 feature. In C89 implementations, it's sometimes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    available as __va_copy. If not, memcpy() should do the trick. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef va_copy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -68,11 +65,25 @@ struct json_integer_t {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   json_integer_t(json_int_t value);
</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;'>+-#define json_to_object(json_)  container_of((json_t*)json_, json_object_t, json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define json_to_array(json_)   container_of((json_t*)json_, json_array_t, json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define json_to_string(json_)  container_of((json_t*)json_, json_string_t, json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define json_to_real(json_)   container_of((json_t*)json_, json_real_t, json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define json_to_integer(json_) container_of((json_t*)json_, json_integer_t, json)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++inline json_object_t* json_to_object(const json_t* json) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<json_object_t*>(const_cast<json_t*>(json));
</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;'>++inline json_array_t* json_to_array(const json_t* json) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<json_array_t*>(const_cast<json_t*>(json));
</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;'>++inline json_string_t* json_to_string(const json_t* json) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<json_string_t*>(const_cast<json_t*>(json));
</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;'>++inline json_real_t* json_to_real(const json_t* json) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<json_real_t*>(const_cast<json_t*>(json));
</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;'>++inline json_integer_t* json_to_integer(const json_t* json) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<json_integer_t*>(const_cast<json_t*>(json));
</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;'>+ void jsonp_error_init(json_error_t *error, const char *source);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void jsonp_error_set_source(json_error_t *error, const char *source);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/thirdparty/jansson/load.cpp b/thirdparty/jansson/load.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 0c369cdd..391fb058 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/thirdparty/jansson/load.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/thirdparty/jansson/load.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -68,7 +68,9 @@ typedef struct {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     } value;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } lex_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define stream_to_lex(stream) container_of(stream, lex_t, stream)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++inline lex_t* stream_to_lex(stream_t* stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return reinterpret_cast<lex_t*>(stream);
</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;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*** error reporting ***/
</span>\ No newline at end of file
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/watchman/files/patch-fix-missing-destdir.diff b/sysutils/watchman/files/patch-fix-missing-destdir.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index bedb65e..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/sysutils/watchman/files/patch-fix-missing-destdir.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,18 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/Makefile.am b/Makefile.am
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- a/Makefile.am
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ b/Makefile.am
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -136,12 +136,12 @@ rb-clean:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- all-local: py-build rb-build lint
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- install-exec-local: py-install
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  ${INSTALL} -d -m 777 ${WATCHMAN_STATE_DIR}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  touch ${WATCHMAN_STATE_DIR}/.not-empty
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  ${INSTALL} -d -m 777 ${DESTDIR}${WATCHMAN_STATE_DIR}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  touch ${DESTDIR}${WATCHMAN_STATE_DIR}/.not-empty
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- clean-local: py-clean rb-clean
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   -find python \( -name '*.py[cdo]' -o -name '*.so' \) -exec rm -f '{}' ';'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   -rm -rf python/build
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span></pre><pre style='margin:0'>

</pre>