From 106c80f355df1a059a63ed600f60f9de004bfe21 Mon Sep 17 00:00:00 2001 From: Lars Wendler Date: Fri, 19 Apr 2019 13:17:43 +0200 Subject: net-libs/nghttp2: Fixed build against ~dev-libst/boost-1.70.0 Closes: https://bugs.gentoo.org/683368 Package-Manager: Portage-2.3.64, Repoman-2.3.12 Signed-off-by: Lars Wendler --- .../files/nghttp2-1.38.0-boost-1.70.0.patch | 50 ++++++++++++++++++++++ net-libs/nghttp2/nghttp2-1.38.0.ebuild | 3 +- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 net-libs/nghttp2/files/nghttp2-1.38.0-boost-1.70.0.patch (limited to 'net-libs') diff --git a/net-libs/nghttp2/files/nghttp2-1.38.0-boost-1.70.0.patch b/net-libs/nghttp2/files/nghttp2-1.38.0-boost-1.70.0.patch new file mode 100644 index 000000000000..cc1100a0b0ba --- /dev/null +++ b/net-libs/nghttp2/files/nghttp2-1.38.0-boost-1.70.0.patch @@ -0,0 +1,50 @@ +From cbba1ebf8fcecb24392f0cc07b1235b17d0de9d8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Adam=20Go=C5=82=C4=99biowski?= +Date: Thu, 18 Apr 2019 12:35:54 +0200 +Subject: [PATCH] asio: support boost-1.70 + +In boost 1.70, deprecated get_io_context() has finally been removed. +Introduce GET_IO_SERVICE macro that based on boost version uses +old get_io_service() interface (boost < 1.70), or get_executor().context() +for boost 1.70+. + +Commit based idea seen in monero-project/monero@17769db9462e5201befcb05f86ccbaeabf35caf8 +--- + src/asio_server_connection.h | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/asio_server_connection.h b/src/asio_server_connection.h +index 6be794060..56924c71a 100644 +--- a/src/asio_server_connection.h ++++ b/src/asio_server_connection.h +@@ -51,6 +51,12 @@ + #include "util.h" + #include "template.h" + ++#if BOOST_VERSION >= 107000 ++#define GET_IO_SERVICE(s) ((boost::asio::io_context&)(s).get_executor().context()) ++#else ++#define GET_IO_SERVICE(s) ((s).get_io_service()) ++#endif ++ + namespace nghttp2 { + + namespace asio_http2 { +@@ -71,7 +77,7 @@ class connection : public std::enable_shared_from_this>, + SocketArgs &&... args) + : socket_(std::forward(args)...), + mux_(mux), +- deadline_(socket_.get_io_service()), ++ deadline_(GET_IO_SERVICE(socket_)), + tls_handshake_timeout_(tls_handshake_timeout), + read_timeout_(read_timeout), + writing_(false), +@@ -82,7 +88,7 @@ class connection : public std::enable_shared_from_this>, + boost::system::error_code ec; + + handler_ = std::make_shared( +- socket_.get_io_service(), socket_.lowest_layer().remote_endpoint(ec), ++ GET_IO_SERVICE(socket_), socket_.lowest_layer().remote_endpoint(ec), + [this]() { do_write(); }, mux_); + if (handler_->start() != 0) { + stop(); diff --git a/net-libs/nghttp2/nghttp2-1.38.0.ebuild b/net-libs/nghttp2/nghttp2-1.38.0.ebuild index 1979bd70cc2c..23ae1e8d57ba 100644 --- a/net-libs/nghttp2/nghttp2-1.38.0.ebuild +++ b/net-libs/nghttp2/nghttp2-1.38.0.ebuild @@ -52,7 +52,8 @@ DEPEND="${RDEPEND} test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )" PATCHES=( - "${WORKDIR}/${PN}-1.38.0-unbundle_http_parser.patch" + "${WORKDIR}/${PN}-1.38.0-unbundle_http_parser.patch" # 675772 + "${FILESDIR}/${P}-boost-1.70.0.patch" #683368 ) src_prepare() { -- cgit v1.2.3