summaryrefslogtreecommitdiff
path: root/dev-cpp/websocketpp
diff options
context:
space:
mode:
authorPalica <palica+gitlab@liguros.net>2020-06-23 22:35:08 +0200
committerPalica <palica+gitlab@liguros.net>2020-06-23 22:35:08 +0200
commitecdac123787b96ce6649f0f91da12ea6458cc2b1 (patch)
treeb89c74d9e6fe6e8aebc4c77bcbeb4ab73214127d /dev-cpp/websocketpp
parent1be72aa41cf41dedadeecf59dca9f01de6381f5e (diff)
downloadbaldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.tar.gz
baldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.tar.xz
baldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.zip
Updating liguros repo
Diffstat (limited to 'dev-cpp/websocketpp')
-rw-r--r--dev-cpp/websocketpp/Manifest1
-rw-r--r--dev-cpp/websocketpp/files/websocketpp-0.7.0-cmake-install.patch28
-rw-r--r--dev-cpp/websocketpp/files/websocketpp-0.8.1-boost-1.70.patch139
-rw-r--r--dev-cpp/websocketpp/files/websocketpp-0.8.1-disable-test_transport-test_transport_asio_timers.patch46
-rw-r--r--dev-cpp/websocketpp/metadata.xml12
-rw-r--r--dev-cpp/websocketpp/websocketpp-0.8.1-r1.ebuild45
6 files changed, 271 insertions, 0 deletions
diff --git a/dev-cpp/websocketpp/Manifest b/dev-cpp/websocketpp/Manifest
new file mode 100644
index 000000000000..f678a25e2e1c
--- /dev/null
+++ b/dev-cpp/websocketpp/Manifest
@@ -0,0 +1 @@
+DIST websocketpp-0.8.1.tar.gz 699468 BLAKE2B e5769229b400d2f42e69541b07cfba17dcc82cdad20685a52ac1130c2fc4e94764a38d2e4f7c36101b11705e10c67eb149ba2c30750e7a6f63696d52c272fed2 SHA512 35e0261ed0285acf77d300768819bd380197de8acdf68223e2d7598481b9bfd69cb1653b435139771b1db6c16530c8d8cf9a887a8a6bba3fea126d0da4dbc13c
diff --git a/dev-cpp/websocketpp/files/websocketpp-0.7.0-cmake-install.patch b/dev-cpp/websocketpp/files/websocketpp-0.7.0-cmake-install.patch
new file mode 100644
index 000000000000..4548c650759d
--- /dev/null
+++ b/dev-cpp/websocketpp/files/websocketpp-0.7.0-cmake-install.patch
@@ -0,0 +1,28 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f60caa1..9ff2211 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -15,13 +15,20 @@ set (WEBSOCKETPP_VERSION ${WEBSOCKETPP_MAJOR_VERSION}.${WEBSOCKETPP_MINOR_VERSIO
+
+ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
+
++get_property(LIB64 GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS)
++if ("${LIB64}" STREQUAL "TRUE")
++ set(LIBSUFFIX 64)
++else()
++ set(LIBSUFFIX "")
++endif()
++
+ set(INSTALL_INCLUDE_DIR include CACHE PATH "Installation directory for header files")
++set(LIB_INSTALL_DIR "lib${LIB_SUFFIX}")
+ if (WIN32 AND NOT CYGWIN)
+- set (DEF_INSTALL_CMAKE_DIR cmake)
++ set (INSTALL_CMAKE_DIR cmake)
+ else ()
+- set (DEF_INSTALL_CMAKE_DIR lib/cmake/websocketpp)
++ set (INSTALL_CMAKE_DIR ${LIB_INSTALL_DIR}/cmake/websocketpp)
+ endif ()
+-set (INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files")
+
+ # Make relative paths absolute (needed later on)
+ foreach (p INCLUDE CMAKE)
diff --git a/dev-cpp/websocketpp/files/websocketpp-0.8.1-boost-1.70.patch b/dev-cpp/websocketpp/files/websocketpp-0.8.1-boost-1.70.patch
new file mode 100644
index 000000000000..40ae155307d2
--- /dev/null
+++ b/dev-cpp/websocketpp/files/websocketpp-0.8.1-boost-1.70.patch
@@ -0,0 +1,139 @@
+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/2] 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.
+---
+ websocketpp/transport/asio/connection.hpp | 7 ++++---
+ websocketpp/transport/asio/endpoint.hpp | 3 +--
+ websocketpp/transport/asio/security/none.hpp | 3 +--
+ websocketpp/transport/asio/security/tls.hpp | 3 +--
+ 4 files changed, 7 insertions(+), 9 deletions(-)
+
+diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
+index 60f88a79..1ccda8f3 100644
+--- a/websocketpp/transport/asio/connection.hpp
++++ b/websocketpp/transport/asio/connection.hpp
+@@ -311,9 +311,10 @@ class connection : public config::socket_type::socket_con_type {
+ * 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 ddab2c74..4b719a97 100644
+--- a/websocketpp/transport/asio/endpoint.hpp
++++ b/websocketpp/transport/asio/endpoint.hpp
+@@ -195,8 +195,7 @@ class endpoint : public config::socket_type {
+
+ 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 5c8293db..6c7d3524 100644
+--- a/websocketpp/transport/asio/security/none.hpp
++++ b/websocketpp/transport/asio/security/none.hpp
+@@ -168,8 +168,7 @@ class connection : public lib::enable_shared_from_this<connection> {
+ 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 c76fd9aa..04ac3790 100644
+--- a/websocketpp/transport/asio/security/tls.hpp
++++ b/websocketpp/transport/asio/security/tls.hpp
+@@ -193,8 +193,7 @@ class connection : public lib::enable_shared_from_this<connection> {
+ 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());
+
+From f810ca2e800e9b55be41c5911cf1d1185fcd516b Mon Sep 17 00:00:00 2001
+From: Stefan Floeren <42731906+stefan-floeren@users.noreply.github.com>
+Date: Wed, 17 Apr 2019 10:06:18 +0000
+Subject: [PATCH 2/2] Fix missed entries; fix testing
+
+---
+ CMakeLists.txt | 2 +-
+ websocketpp/transport/asio/connection.hpp | 3 +--
+ websocketpp/transport/asio/endpoint.hpp | 7 ++-----
+ 3 files changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2786aba9..951de975 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -202,7 +202,7 @@ if (BUILD_TESTS OR BUILD_EXAMPLES)
+ endif ()
+
+ if (NOT Boost_USE_STATIC_LIBS)
+- add_definitions (/DBOOST_TEST_DYN_LINK)
++ add_definitions (-DBOOST_TEST_DYN_LINK)
+ endif ()
+
+ set (Boost_FIND_REQUIRED TRUE)
+diff --git a/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp
+index 1ccda8f3..57dda74a 100644
+--- a/websocketpp/transport/asio/connection.hpp
++++ b/websocketpp/transport/asio/connection.hpp
+@@ -462,8 +462,7 @@ class connection : public config::socket_type::socket_con_type {
+ 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 4b719a97..94509adb 100644
+--- a/websocketpp/transport/asio/endpoint.hpp
++++ b/websocketpp/transport/asio/endpoint.hpp
+@@ -687,9 +687,7 @@ class endpoint : public config::socket_type {
+ * @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 @@ class endpoint : public config::socket_type {
+
+ // 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);
diff --git a/dev-cpp/websocketpp/files/websocketpp-0.8.1-disable-test_transport-test_transport_asio_timers.patch b/dev-cpp/websocketpp/files/websocketpp-0.8.1-disable-test_transport-test_transport_asio_timers.patch
new file mode 100644
index 000000000000..8d6c93fcec30
--- /dev/null
+++ b/dev-cpp/websocketpp/files/websocketpp-0.8.1-disable-test_transport-test_transport_asio_timers.patch
@@ -0,0 +1,46 @@
+--- a/test/transport/CMakeLists.txt
++++ b/test/transport/CMakeLists.txt
+@@ -1,24 +1,24 @@
+ if (OPENSSL_FOUND)
+
+-# Test transport integration
+-file (GLOB SOURCE integration.cpp)
+-
+-init_target (test_transport)
+-build_test (${TARGET_NAME} ${SOURCE})
+-link_boost ()
+-link_openssl()
+-final_target ()
+-set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "test")
+-
+-# Test transport asio timers
+-file (GLOB SOURCE asio/timers.cpp)
+-
+-init_target (test_transport_asio_timers)
+-build_test (${TARGET_NAME} ${SOURCE})
+-link_boost ()
+-link_openssl()
+-final_target ()
+-set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "test")
++## Test transport integration
++#file (GLOB SOURCE integration.cpp)
++#
++#init_target (test_transport)
++#build_test (${TARGET_NAME} ${SOURCE})
++#link_boost ()
++#link_openssl()
++#final_target ()
++#set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "test")
++#
++## Test transport asio timers
++#file (GLOB SOURCE asio/timers.cpp)
++#
++#init_target (test_transport_asio_timers)
++#build_test (${TARGET_NAME} ${SOURCE})
++#link_boost ()
++#link_openssl()
++#final_target ()
++#set_target_properties(${TARGET_NAME} PROPERTIES FOLDER "test")
+
+ # Test transport asio security
+ file (GLOB SOURCE asio/security.cpp)
diff --git a/dev-cpp/websocketpp/metadata.xml b/dev-cpp/websocketpp/metadata.xml
new file mode 100644
index 000000000000..afcd3d48c5fc
--- /dev/null
+++ b/dev-cpp/websocketpp/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>johu@gentoo.org</email>
+ <name>Johannes Huber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">zaphoyd/websocketpp</remote-id>
+ </upstream>
+ <origin>gentoo-staging</origin>
+</pkgmetadata>
diff --git a/dev-cpp/websocketpp/websocketpp-0.8.1-r1.ebuild b/dev-cpp/websocketpp/websocketpp-0.8.1-r1.ebuild
new file mode 100644
index 000000000000..051e22e7eeb3
--- /dev/null
+++ b/dev-cpp/websocketpp/websocketpp-0.8.1-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="C++/Boost Asio based websocket client/server library"
+HOMEPAGE="https://www.zaphoyd.com/websocketpp"
+SRC_URI="https://github.com/zaphoyd/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-libs/boost )"
+RDEPEND="dev-libs/boost"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.0-cmake-install.patch
+ "${FILESDIR}"/${PN}-0.8.1-boost-1.70.patch
+ # disable tests that are timing sensitive
+ # https://bugzilla.redhat.com/show_bug.cgi?id=1461069
+ "${FILESDIR}"/${PN}-0.8.1-disable-test_transport-test_transport_asio_timers.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_CPP11=ON
+ -DBUILD_TESTS="$(usex test)"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}