websocketpp: Fix compile with Boost 1.70+
Fix compilation for newer Boost versions, same as in the websocketpp 'develop'
branch: https://github.com/zaphoyd/websocketpp/pull/814
Signed-off-by: Bruno Randolf <br1@einfach.org>
(cherry picked from commit e1bb99f836
)
This commit is contained in:
parent
7bfe304622
commit
8561243645
2 changed files with 112 additions and 1 deletions
|
@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk
|
|||
|
||||
PKG_NAME:=websocketpp
|
||||
PKG_VERSION:=0.8.1
|
||||
PKG_RELEASE:=1
|
||||
PKG_RELEASE:=2
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://github.com/zaphoyd/websocketpp/archive/$(PKG_VERSION)/
|
||||
|
@ -26,6 +26,7 @@ define Package/websocketpp
|
|||
CATEGORY:=Libraries
|
||||
TITLE:=WebSocket++
|
||||
URL:=https://www.zaphoyd.com/websocketpp
|
||||
BUILDONLY:=1
|
||||
endef
|
||||
|
||||
define Package/websocketpp/description
|
||||
|
|
110
libs/websocketpp/patches/0001-boost-1.70-compat.patch
Normal file
110
libs/websocketpp/patches/0001-boost-1.70-compat.patch
Normal file
|
@ -0,0 +1,110 @@
|
|||
From c769c9238ad62178f506038178714a1c35aa2769 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com>
|
||||
Date: Tue, 16 Apr 2019 08:38:01 +0200
|
||||
Subject: [PATCH 1/4] Replace make_shared with new in some cases
|
||||
|
||||
Replace make_shared for asio types that take a lib::ref as a parameter.
|
||||
This should fix the ASIO change (boostorg/asio@59066d8) for 1.70,
|
||||
while keeping it backwards compatible to older boost versions.
|
||||
|
||||
diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
|
||||
index 60f88a7..1ccda8f 100644
|
||||
--- a/websocketpp/transport/asio/connection.hpp
|
||||
+++ b/websocketpp/transport/asio/connection.hpp
|
||||
@@ -311,9 +311,10 @@ public:
|
||||
* needed.
|
||||
*/
|
||||
timer_ptr set_timer(long duration, timer_handler callback) {
|
||||
- timer_ptr new_timer = lib::make_shared<lib::asio::steady_timer>(
|
||||
- lib::ref(*m_io_service),
|
||||
- lib::asio::milliseconds(duration)
|
||||
+ timer_ptr new_timer(
|
||||
+ new lib::asio::steady_timer(
|
||||
+ *m_io_service,
|
||||
+ lib::asio::milliseconds(duration))
|
||||
);
|
||||
|
||||
if (config::enable_multithreading) {
|
||||
diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp
|
||||
index ddab2c7..4b719a9 100644
|
||||
--- a/websocketpp/transport/asio/endpoint.hpp
|
||||
+++ b/websocketpp/transport/asio/endpoint.hpp
|
||||
@@ -195,8 +195,7 @@ public:
|
||||
|
||||
m_io_service = ptr;
|
||||
m_external_io_service = true;
|
||||
- m_acceptor = lib::make_shared<lib::asio::ip::tcp::acceptor>(
|
||||
- lib::ref(*m_io_service));
|
||||
+ m_acceptor.reset(new lib::asio::ip::tcp::acceptor(*m_io_service));
|
||||
|
||||
m_state = READY;
|
||||
ec = lib::error_code();
|
||||
diff --git a/websocketpp/transport/asio/security/none.hpp b/websocketpp/transport/asio/security/none.hpp
|
||||
index 5c8293d..6c7d352 100644
|
||||
--- a/websocketpp/transport/asio/security/none.hpp
|
||||
+++ b/websocketpp/transport/asio/security/none.hpp
|
||||
@@ -168,8 +168,7 @@ protected:
|
||||
return socket::make_error_code(socket::error::invalid_state);
|
||||
}
|
||||
|
||||
- m_socket = lib::make_shared<lib::asio::ip::tcp::socket>(
|
||||
- lib::ref(*service));
|
||||
+ m_socket.reset(new lib::asio::ip::tcp::socket(*service));
|
||||
|
||||
if (m_socket_init_handler) {
|
||||
m_socket_init_handler(m_hdl, *m_socket);
|
||||
diff --git a/websocketpp/transport/asio/security/tls.hpp b/websocketpp/transport/asio/security/tls.hpp
|
||||
index c76fd9a..04ac379 100644
|
||||
--- a/websocketpp/transport/asio/security/tls.hpp
|
||||
+++ b/websocketpp/transport/asio/security/tls.hpp
|
||||
@@ -193,8 +193,7 @@ protected:
|
||||
if (!m_context) {
|
||||
return socket::make_error_code(socket::error::invalid_tls_context);
|
||||
}
|
||||
- m_socket = lib::make_shared<socket_type>(
|
||||
- _WEBSOCKETPP_REF(*service),lib::ref(*m_context));
|
||||
+ m_socket.reset(new socket_type(*service, *m_context));
|
||||
|
||||
if (m_socket_init_handler) {
|
||||
m_socket_init_handler(m_hdl, get_socket());
|
||||
diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
|
||||
index 1ccda8f..57dda74 100644
|
||||
--- a/websocketpp/transport/asio/connection.hpp
|
||||
+++ b/websocketpp/transport/asio/connection.hpp
|
||||
@@ -462,8 +462,7 @@ protected:
|
||||
m_io_service = io_service;
|
||||
|
||||
if (config::enable_multithreading) {
|
||||
- m_strand = lib::make_shared<lib::asio::io_service::strand>(
|
||||
- lib::ref(*io_service));
|
||||
+ m_strand.reset(new lib::asio::io_service::strand(*io_service));
|
||||
}
|
||||
|
||||
lib::error_code ec = socket_con_type::init_asio(io_service, m_strand,
|
||||
diff --git a/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp
|
||||
index 4b719a9..94509ad 100644
|
||||
--- a/websocketpp/transport/asio/endpoint.hpp
|
||||
+++ b/websocketpp/transport/asio/endpoint.hpp
|
||||
@@ -687,9 +687,7 @@ public:
|
||||
* @since 0.3.0
|
||||
*/
|
||||
void start_perpetual() {
|
||||
- m_work = lib::make_shared<lib::asio::io_service::work>(
|
||||
- lib::ref(*m_io_service)
|
||||
- );
|
||||
+ m_work.reset(new lib::asio::io_service::work(*m_io_service));
|
||||
}
|
||||
|
||||
/// Clears the endpoint's perpetual flag, allowing it to exit when empty
|
||||
@@ -853,8 +851,7 @@ protected:
|
||||
|
||||
// Create a resolver
|
||||
if (!m_resolver) {
|
||||
- m_resolver = lib::make_shared<lib::asio::ip::tcp::resolver>(
|
||||
- lib::ref(*m_io_service));
|
||||
+ m_resolver.reset(new lib::asio::ip::tcp::resolver(*m_io_service));
|
||||
}
|
||||
|
||||
tcon->set_uri(u);
|
||||
--
|
||||
2.26.1
|
Loading…
Reference in a new issue