summaryrefslogtreecommitdiff
path: root/dev-cpp/websocketpp
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/websocketpp')
-rw-r--r--dev-cpp/websocketpp/Manifest3
-rw-r--r--dev-cpp/websocketpp/files/websocketpp-0.8.2-c++20-compat.patch94
-rw-r--r--dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild56
3 files changed, 153 insertions, 0 deletions
diff --git a/dev-cpp/websocketpp/Manifest b/dev-cpp/websocketpp/Manifest
index fb39fffe1961..d0f276ff9bb8 100644
--- a/dev-cpp/websocketpp/Manifest
+++ b/dev-cpp/websocketpp/Manifest
@@ -1,7 +1,10 @@
AUX websocketpp-0.7.0-cmake-install.patch 970 BLAKE2B 2099c37b65d3f685f8b9745d92b481bb6a0434e6305e974c6f613ae44e70e1fa9d7bd577f875ef12228e506361409666099ce024578c5c524cc8fc5fbdef4b70 SHA512 c8b34b80890d8dc828d64e391e9541f7ebd6a18c79d3a5b91c72835745a11bafff110d04e8d75a2df2dba8b65ca1856050009a4eab3871cc2470066f9ad82f44
AUX websocketpp-0.8.1-disable-test_transport-test_transport_asio_timers.patch 1227 BLAKE2B 26ac496842e4e23d254ba908679399ff8907253434430c887290cbd3b3beb14aaf69834cfc0b8f326f13c0f63ec7da535f0c8b438d20d7c1d2d4b5d5d2afb5cc SHA512 1ef7f2b71dcbeb386cd27bbf97f599f0c056b014423090ceb28e336c0f1527c6f8d6b04931144823c1d1deb14781508a0a6e869f69a9a232978851634f35fa0c
+AUX websocketpp-0.8.2-c++20-compat.patch 3520 BLAKE2B fe82d027fc43ee13f6f07a524ede17242676f49b3e863f4871a141816d4fd094b3005a5f4ae48ec4379d8d221f31e2be84177a60fe4c0193ee30347e683a45cd SHA512 36a6a6ca53666520373fd5b3ad4960a951e7e789cc8a07b1ca6a418e68226430d67157a385138a2c9fd2a8d716c86229a269cab52343623b37fa96974d644e22
AUX websocketpp-0.8.2-fix-boost_find_component.patch 950 BLAKE2B 16e80dcdf6a0af95fb7ac8b1c52fd9205379da13787dbd3d023a79a2c6e611ca093f49acc4618d7db0c2397126e4e6ec2cb1633116be658347f2403faee16d7f SHA512 192fd716040e91a6912407778a1c7a208a29ceaaa48aacb0fefddcd622d2ecde68093aff837b0cf4c3d8dc40cd9a5f4714040aa2264a1f8a01190b174a2a12b1
AUX websocketpp-0.8.2-fix-clang.patch 1042 BLAKE2B 8d453efb82fea72a0a4b2ed5ab7ec44975ee963cbb99cf0c69bcd3ef2eb4482334981c711e9f0780c1f59353b74cf8543528d9889d2cac51ad746a59eae28ab1 SHA512 7c7fdbe70627cd39a4936fb0118a3d347753a1c6150c8801544b753ba4b5cd8c653043035fa164e31f2a41d09662d4abb4429140c14e42e2a195094e06574766
+DIST websocketpp-0.8.2-boost-1.87-compat.patch.xz 17316 BLAKE2B 11f43ba92b9e8c10c7833fa2a423cfc0ca6d66721db388c6f08003a1141669bed0aec790a41964ddd9399eb18c627e01054b7c0247cbedfca7111869e4909ddf SHA512 21ee3e279722c3761328475b437ce57e38455df83ef9e291802520047164c7cb879430b541623212e320d1a55b10d17b77fe97b73d1846069a240032b7b82db7
DIST websocketpp-0.8.2.tar.gz 701364 BLAKE2B dacee33832f493d465afe208f9edea1393414a22c8db8f8c86b8f913521d0d8d68b95673a2e82b7479acfbab1ac541eda2d713a55d5de387b3879461d5884df7 SHA512 b2afc63edb69ce81a3a6c06b3d857b3e8820f0e22300ac32bb20ab30ff07bd58bd5ada3e526ed8ab52de934e0e3a26cad2118b0e68ecf3e5e9e8d7101348fd06
+EBUILD websocketpp-0.8.2-r1.ebuild 1678 BLAKE2B 57722dfa18222e3687c5ada774147db46a8ea32ff156451470c7c8d8532fd6ef9548796d16284427b034bb73f3eda7e48914dab7d57d7333be58b05eedac3be5 SHA512 15bc02bf2ffb6375251c1617537326385326b1c36a7a0eefabbf83eb8592741f293301a40f60a291f6b3525ef827dc334fc496585b60ca40d02d3653585b15d0
EBUILD websocketpp-0.8.2.ebuild 1270 BLAKE2B 47e18a61da1af6a3ff7d8b9650c0d632618f4e30cad55dfa4ea7f5aba16ede19281846261c3a88ef2c4eba1509f6ee5c186482c0e2003116541fe79c454a8a34 SHA512 d464b07dc7de25807f15654a461915d40b8129356f5a6d73acdb7dae6f60806acf51cf281f69a7de1f595e8ce04f44f4e0905588eaee17a704d8404ecf396daa
MISC metadata.xml 252 BLAKE2B 4beafc2dbc69f457e4880196afd696198e1d4006e76836d7581c4a3098bf68d58da79344c88974c92a63303dbd0199d5de0bfd984adbc358ad92da2a9edd96a4 SHA512 20cc70561adba76fc4ac65953dc2a2dfc4b8261d6a56bed78d00b7aa8e0edd507bc851bf7c1dba138b55175dd1d1bb8b4f853fe96242046dc7611ab10cfb0a5b
diff --git a/dev-cpp/websocketpp/files/websocketpp-0.8.2-c++20-compat.patch b/dev-cpp/websocketpp/files/websocketpp-0.8.2-c++20-compat.patch
new file mode 100644
index 000000000000..2989acd4a0bd
--- /dev/null
+++ b/dev-cpp/websocketpp/files/websocketpp-0.8.2-c++20-compat.patch
@@ -0,0 +1,94 @@
+From 3197a520eb4c1e4754860441918a5930160373eb Mon Sep 17 00:00:00 2001
+From: Peter Thorson <git@zaphoyd.com>
+Date: Tue, 29 Jun 2021 09:13:12 -0500
+Subject: [PATCH] [core] Remove the use of simple template ids as they have
+ been removed in c++20.
+ https://timsong-cpp.github.io/cppwp/n4861/diff.cpp17.class#2 references #991
+
+--- a/websocketpp/endpoint.hpp
++++ b/websocketpp/endpoint.hpp
+@@ -111,7 +111,7 @@ class endpoint : public config::transport_type, public config::endpoint_base {
+
+
+ /// Destructor
+- ~endpoint<connection,config>() {}
++ ~endpoint() {}
+
+ #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_
+ // no copy constructor because endpoints are not copyable
+--- a/websocketpp/logger/basic.hpp
++++ b/websocketpp/logger/basic.hpp
+@@ -58,33 +58,33 @@ namespace log {
+ template <typename concurrency, typename names>
+ class basic {
+ public:
+- basic<concurrency,names>(channel_type_hint::value h =
++ basic(channel_type_hint::value h =
+ channel_type_hint::access)
+ : m_static_channels(0xffffffff)
+ , m_dynamic_channels(0)
+ , m_out(h == channel_type_hint::error ? &std::cerr : &std::cout) {}
+
+- basic<concurrency,names>(std::ostream * out)
++ basic(std::ostream * out)
+ : m_static_channels(0xffffffff)
+ , m_dynamic_channels(0)
+ , m_out(out) {}
+
+- basic<concurrency,names>(level c, channel_type_hint::value h =
++ basic(level c, channel_type_hint::value h =
+ channel_type_hint::access)
+ : m_static_channels(c)
+ , m_dynamic_channels(0)
+ , m_out(h == channel_type_hint::error ? &std::cerr : &std::cout) {}
+
+- basic<concurrency,names>(level c, std::ostream * out)
++ basic(level c, std::ostream * out)
+ : m_static_channels(c)
+ , m_dynamic_channels(0)
+ , m_out(out) {}
+
+ /// Destructor
+- ~basic<concurrency,names>() {}
++ ~basic() {}
+
+ /// Copy constructor
+- basic<concurrency,names>(basic<concurrency,names> const & other)
++ basic(basic<concurrency,names> const & other)
+ : m_static_channels(other.m_static_channels)
+ , m_dynamic_channels(other.m_dynamic_channels)
+ , m_out(other.m_out)
+@@ -97,7 +97,7 @@ class basic {
+
+ #ifdef _WEBSOCKETPP_MOVE_SEMANTICS_
+ /// Move constructor
+- basic<concurrency,names>(basic<concurrency,names> && other)
++ basic(basic<concurrency,names> && other)
+ : m_static_channels(other.m_static_channels)
+ , m_dynamic_channels(other.m_dynamic_channels)
+ , m_out(other.m_out)
+--- a/websocketpp/roles/server_endpoint.hpp
++++ b/websocketpp/roles/server_endpoint.hpp
+@@ -75,11 +75,11 @@ class server : public endpoint<connection<config>,config> {
+ }
+
+ /// Destructor
+- ~server<config>() {}
++ ~server() {}
+
+ #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_
+ // no copy constructor because endpoints are not copyable
+- server<config>(server<config> &) = delete;
++ server(server<config> &) = delete;
+
+ // no copy assignment operator because endpoints are not copyable
+ server<config> & operator=(server<config> const &) = delete;
+@@ -87,7 +87,7 @@ class server : public endpoint<connection<config>,config> {
+
+ #ifdef _WEBSOCKETPP_MOVE_SEMANTICS_
+ /// Move constructor
+- server<config>(server<config> && o) : endpoint<connection<config>,config>(std::move(o)) {}
++ server(server<config> && o) : endpoint<connection<config>,config>(std::move(o)) {}
+
+ #ifdef _WEBSOCKETPP_DEFAULT_DELETE_FUNCTIONS_
+ // no move assignment operator because of const member variables
diff --git a/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild b/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild
new file mode 100644
index 000000000000..34177441a2c2
--- /dev/null
+++ b/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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
+ https://dev.gentoo.org/~sbraz/${P}-boost-1.87-compat.patch.xz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~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
+ # 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
+ # https://github.com/zaphoyd/websocketpp/commit/36b73da8958927f975b3d01a062aa6c0e149d97f
+ "${FILESDIR}"/${P}-fix-boost_find_component.patch
+ # https://github.com/zaphoyd/websocketpp/commit/2c355d9ef0f3ed73fa96d0c6c31293086df36d74
+ "${FILESDIR}"/${P}-fix-clang.patch
+ # C++20 support from https://github.com/zaphoyd/websocketpp/commit/3197a520eb4c1e4754860441918a5930160373eb
+ # Fixes https://github.com/zaphoyd/websocketpp/issues/991 / https://bugs.gentoo.org/939739
+ "${FILESDIR}/${P}-c++20-compat.patch"
+ # From https://github.com/zaphoyd/websocketpp/pull/1164
+ "${WORKDIR}/${P}-boost-1.87-compat.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
+}