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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/abae8bfe13e04fbf1248448104f57139b9465ab7">https://github.com/macports/macports-ports/commit/abae8bfe13e04fbf1248448104f57139b9465ab7</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit abae8bfe13e04fbf1248448104f57139b9465ab7
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Tue Jan 3 09:19:10 2023 +0700

<span style='display:block; white-space:pre;color:#404040;'>    proxygen: new port in folly group
</span>---
 devel/proxygen/Portfile                 | 74 +++++++++++++++++++++++++++++++++
 devel/proxygen/files/patch-tcpinfo.diff | 22 ++++++++++
 2 files changed, 96 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/proxygen/Portfile b/devel/proxygen/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..c2b2790e8d6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/proxygen/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,74 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim: fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           boost 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           openssl 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# O_CLOEXEC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        facebook proxygen 2023.01.02.00 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             BSD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Collection of C++ HTTP libraries including an easy to use HTTP server
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    This project comprises the core C++ HTTP abstractions used at Facebook. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Internally, it is used as the basis for building many HTTP servers, proxies and clients. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    This release focuses on the common HTTP abstractions and our simple HTTPServer framework. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    Future releases will provide simple client APIs as well. The framework supports \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    HTTP/1.1, SPDY/3, SPDY/3.1, HTTP/2 and HTTP/3. The goal is to provide a simple, \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    performant and modern C++ HTTP library.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  b73700adb9b2962f3afe4f6970c252e452acb290 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  ca5f528368339f967bf3a8c677810fa39482aa0049b6efbf0f635e8936f11e31 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    1092304
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-tcpinfo.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set port_libfmt     libfmt9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+cmake.module_path-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${prefix}/lib/${port_libfmt}/cmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver          3.10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver_nodot    [string map {. {}} ${py_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gperf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:python${py_ver_nodot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:folly \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:fizz \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:wangle \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:zlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:zstd \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:${port_libfmt}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {clang < 1200}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard 2017
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Temporary blacklist until non_lazy_ptr bug is fixed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# See: https://github.com/iains/darwin-toolchains-start-here/discussions/41
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    macports-gcc-12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DPROXYGEN_PYTHON=${prefix}/bin/python${py_ver} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_SHARED_LIBS=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[string match *clang* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Don’t use libcxx with gcc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    legacysupport.use_mp_libcxx yes
</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 {[string match *gcc* ${configure.compiler}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # ___atomic_compare_exchange_8, ___atomic_store_8, ___atomic_load_8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.ldflags-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -latomic
</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;'>+github.livecheck.branch main
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/proxygen/files/patch-tcpinfo.diff b/devel/proxygen/files/patch-tcpinfo.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8216bd20475
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/proxygen/files/patch-tcpinfo.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- proxygen/lib/http/session/HTTPSession.cpp.orig 2022-12-25 16:00:33.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ proxygen/lib/http/session/HTTPSession.cpp      2022-12-31 06:26:42.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -24,6 +24,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <wangle/acceptor/ConnectionManager.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <wangle/acceptor/SocketOptions.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using fizz::AsyncFizzBase;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using folly::AsyncSocket;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using folly::AsyncSocketException;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2027,7 +2031,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       transportInfo_.rtt = std::chrono::microseconds(tinfo->tcpinfo.tcpi_rtt);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     transportInfo_.rtx = tinfo->rtx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(__APPLE__) && MAC_OS_X_VERSION_MIN_REQUIRED > 101003
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     tinfo->recvwnd = tinfo->tcpinfo.tcpi_rcv_wnd
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                      << tinfo->tcpinfo.tcpi_rcv_wscale;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span></pre><pre style='margin:0'>

</pre>