mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-28 00:19:06 +08:00
[cpp-netlib] Fix usage with boost 1.73 (#13671)
* [cpp-netlib] Fix usage with boost 1.72 * Add dependency port boost-logic, boost-scope-exit Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: PhoebeHui <20694052+PhoebeHui@users.noreply.github.com>
This commit is contained in:
parent
84c22a78b4
commit
d0511fbd55
@ -1,6 +1,7 @@
|
||||
Source: cpp-netlib
|
||||
Version: 0.13.0-3
|
||||
Version: 0.13.0
|
||||
Port-Version: 4
|
||||
Homepage: https://cpp-netlib.org/
|
||||
Build-Depends: boost
|
||||
Build-Depends: boost-spirit, boost-smart-ptr, boost-asio, boost-program-options, boost-assign, boost-logic, boost-scope-exit
|
||||
Description: A collection of network-related routines/implementations geared towards providing a robust cross-platform networking library
|
||||
Supports: !uwp
|
@ -5,18 +5,21 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO cpp-netlib/cpp-netlib
|
||||
REF cpp-netlib-0.13.0-final
|
||||
SHA512 1839bf1acb7917acd2957f1008a44ed26a38849afb5843bfa0d5c557dde530afab4183d8d273a87d6416aad2b3a59fdecdef5fbb62bc91ed484486c80a1de5eb
|
||||
REF 31d304cdf52b485f465ada433d8905171b61cbff
|
||||
SHA512 6d157e6d950dd76a6d16b9c13d4d29f188d9f540eb0b44ab169016e1d7a360995e51d9923b532503a17dd2c8e0e2a38b2f9b531db03b33239e7fb9ca4d047b0c
|
||||
HEAD_REF master
|
||||
# Updator's note: cpp-netlib has many templates that are not fully instantiated when not building examples.
|
||||
# This patch specifically fixes one of those issues
|
||||
# To test updates, enable building examples below (may also require patching out uses of cxxopts)
|
||||
PATCHES stream-handler-executor.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DCPP-NETLIB_BUILD_TESTS=off
|
||||
-DCPP-NETLIB_BUILD_EXAMPLES=off
|
||||
|
||||
-DCPP-NETLIB_BUILD_TESTS=OFF
|
||||
-DCPP-NETLIB_BUILD_EXAMPLES=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
27
ports/cpp-netlib/stream-handler-executor.patch
Normal file
27
ports/cpp-netlib/stream-handler-executor.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git a/boost/network/protocol/stream_handler.hpp b/boost/network/protocol/stream_handler.hpp
|
||||
index ffb09b8..f3b3e99 100644
|
||||
--- a/boost/network/protocol/stream_handler.hpp
|
||||
+++ b/boost/network/protocol/stream_handler.hpp
|
||||
@@ -41,6 +40,7 @@ typedef boost::asio::ssl::context ssl_context;
|
||||
|
||||
struct stream_handler {
|
||||
public:
|
||||
+ typedef tcp_socket::executor_type executor_type;
|
||||
stream_handler(std::shared_ptr<tcp_socket> socket)
|
||||
: tcp_sock_(std::move(socket)), ssl_enabled(false) {}
|
||||
|
||||
@@ -52,12 +52,12 @@ struct stream_handler {
|
||||
stream_handler(boost::asio::io_service& io,
|
||||
std::shared_ptr<ssl_context> ctx =
|
||||
std::shared_ptr<ssl_context>()) {
|
||||
- tcp_sock_ = std::make_shared<tcp_socket>(boost::ref(io));
|
||||
+ tcp_sock_ = std::make_shared<tcp_socket>(io.get_executor());
|
||||
ssl_enabled = false;
|
||||
if (ctx) {
|
||||
/// SSL is enabled
|
||||
ssl_sock_ =
|
||||
- std::make_shared<ssl_socket>(boost::ref(io), boost::ref(*ctx));
|
||||
+ std::make_shared<ssl_socket>(io.get_executor(), boost::ref(*ctx));
|
||||
ssl_enabled = true;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user