commit:     2e15b300f2358c42521115dcd788a0d5ee5fef24
Author:     Denis Reva <denis7774 <AT> gmail <DOT> com>
AuthorDate: Tue Feb 28 11:55:21 2023 +0000
Commit:     Denis Reva <denis7774 <AT> gmail <DOT> com>
CommitDate: Tue Feb 28 12:57:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2e15b300

dev-cpp/wangle: Unorphaned and updated

Signed-off-by: Denis Reva <denis7774 <AT> gmail.com>

 dev-cpp/wangle/Manifest                    |  1 +
 dev-cpp/wangle/metadata.xml                | 51 ++++++++++++++++++++++++++++++
 dev-cpp/wangle/wangle-2023.02.06.00.ebuild | 43 +++++++++++++++++++++++++
 3 files changed, 95 insertions(+)

diff --git a/dev-cpp/wangle/Manifest b/dev-cpp/wangle/Manifest
new file mode 100644
index 000000000..42fdce640
--- /dev/null
+++ b/dev-cpp/wangle/Manifest
@@ -0,0 +1 @@
+DIST wangle-2023.02.06.00.tar.gz 339890 BLAKE2B 
a1b1d50083bac9de7ea6bf586cd677d44a3baf5fcec0ac92d82cda16fcfad055b1e91fec2fa75143ab1ee488bc638a0d6153d19b65b30fc63829fdfdfd0c3156
 SHA512 
93ea81c5a4b5929e543abd77c2a0e70cec33dcdf928665f71436c1ee5d2afbf338d7ca7000e124c295821f68a1763c847f306eb8ece487047548989609a8cbc0

diff --git a/dev-cpp/wangle/metadata.xml b/dev-cpp/wangle/metadata.xml
new file mode 100644
index 000000000..9b43b5159
--- /dev/null
+++ b/dev-cpp/wangle/metadata.xml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Denis Reva</name>
+               <description>rarogcmex</description>
+       </maintainer>
+       <maintainer type="person">
+               <description>co-maintainers welcome</description>
+               <email>[email protected]</email>
+               <name>Alessandro Barbieri</name>
+       </maintainer>
+       <longdescription lang="en">
+Client / Server abstraction
+
+You're probably familiar with Java's Netty, or Python's twisted, or similar 
libraries.
+
+It is built on top of folly/async/io, so it's one level up the stack from that 
(or similar abstractions like boost::asio)
+
+ServerBootstrap - easily manage creation of threadpools and pipelines
+
+ClientBootstrap - the same for clients
+
+Pipeline - set up a series of handlers that modify your socket data
+
+Request / Response abstraction
+
+This is roughly equivalent to the Finagle library.
+
+Aims to provide easy testing, load balancing, client pooling, retry logic, 
etc. for any request/response type service - i.e. thrift, http, etc.
+
+Service - a matched interface between client/server. A server will implement 
this interface, and a client will call in to it. These are protocol-specific
+
+ServiceFilter - a generic filter on a service. Examples: stats, request 
timeouts, rate limiting
+
+ServiceFactory - A factory that creates client connections. Any protocol 
specific setup code goes here
+
+ServiceFactoryFilter - Generic filters that control how connections are 
created. Client examples: load balancing, pooling, idle timeouts, markdowns, 
etc.
+
+ServerBootstrap
+
+Easily create a new server
+
+ServerBootstrap does the work to set up one or multiple acceptor threads, and 
one or multiple sets of IO threads. The thread pools can be the same. 
SO_REUSEPORT is automatically supported for multiple accept threads. tcp is 
most common, although udp is also supported.
+       </longdescription>
+       <upstream>
+               <bugs-to>https://github.com/facebook/wangle/issues</bugs-to>
+               <remote-id type="github">facebook/wangle</remote-id>
+       </upstream>
+</pkgmetadata>

diff --git a/dev-cpp/wangle/wangle-2023.02.06.00.ebuild 
b/dev-cpp/wangle/wangle-2023.02.06.00.ebuild
new file mode 100644
index 000000000..3dd02e256
--- /dev/null
+++ b/dev-cpp/wangle/wangle-2023.02.06.00.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Framework providing common client/server abstractions"
+HOMEPAGE="https://github.com/facebook/wangle";
+SRC_URI="https://github.com/facebook/wangle/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="examples test"
+
+RDEPEND="
+       >=dev-cpp/fizz-${PV}:=
+       >=dev-cpp/folly-${PV}:=
+       dev-cpp/gflags
+       dev-cpp/glog
+       dev-libs/double-conversion
+       dev-libs/libevent
+       dev-libs/libfmt
+       dev-libs/openssl:0=
+"
+DEPEND="
+       ${RDEPEND}
+       dev-cpp/gtest
+"
+
+RESTRICT="!test? ( test )"
+CMAKE_USE_DIR="${S}/wangle"
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_EXAMPLES=$(usex examples)
+               -DBUILD_TESTS=$(usex test)
+               -DLIB_INSTALL_DIR=$(get_libdir)
+       )
+
+       cmake_src_configure
+}

Reply via email to