summaryrefslogtreecommitdiff
path: root/dev-cpp
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-04-12 21:03:09 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-04-12 21:03:09 +0000
commitd97953e6ff67978da9554e7b4601aedceb21e215 (patch)
tree674053c902db6972b9716c9ac3b1e960ee7a5358 /dev-cpp
parent1d1fa5bb30df70070bbbbd2b777b839d31f09c41 (diff)
downloadbaldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.tar.gz
baldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.tar.xz
baldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.zip
Adding metadata
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/cli11/Manifest2
-rw-r--r--dev-cpp/cli11/cli11-2.1.2.ebuild42
-rw-r--r--dev-cpp/cli11/cli11-2.2.0.ebuild42
-rw-r--r--dev-cpp/cli11/metadata.xml11
-rw-r--r--dev-cpp/coeurl/Manifest2
-rw-r--r--dev-cpp/coeurl/coeurl-0.1.1.ebuild34
-rw-r--r--dev-cpp/coeurl/coeurl-0.2.0.ebuild34
-rw-r--r--dev-cpp/coeurl/metadata.xml8
-rw-r--r--dev-cpp/drogon/Manifest2
-rw-r--r--dev-cpp/drogon/drogon-1.7.4.ebuild73
-rw-r--r--dev-cpp/drogon/drogon-1.7.5.ebuild73
-rw-r--r--dev-cpp/drogon/metadata.xml16
-rw-r--r--dev-cpp/dtl/Manifest1
-rw-r--r--dev-cpp/dtl/dtl-1.19_p20210531.ebuild58
-rw-r--r--dev-cpp/dtl/files/dtl-1.19_p20210531-do-not-append-O2.patch11
-rw-r--r--dev-cpp/dtl/metadata.xml8
-rw-r--r--dev-cpp/fbthrift/Manifest1
-rw-r--r--dev-cpp/fbthrift/fbthrift-2022.03.21.00.ebuild46
-rw-r--r--dev-cpp/fbthrift/metadata.xml19
-rw-r--r--dev-cpp/fizz/Manifest1
-rw-r--r--dev-cpp/fizz/fizz-2022.03.21.00.ebuild49
-rw-r--r--dev-cpp/fizz/metadata.xml17
-rw-r--r--dev-cpp/gsl-lite/Manifest1
-rw-r--r--dev-cpp/gsl-lite/gsl-lite-0.38.0.ebuild29
-rw-r--r--dev-cpp/gsl-lite/metadata.xml8
-rw-r--r--dev-cpp/indicators/Manifest1
-rw-r--r--dev-cpp/indicators/indicators-2.2.ebuild23
-rw-r--r--dev-cpp/indicators/metadata.xml12
-rw-r--r--dev-cpp/jwt-cpp/Manifest2
-rw-r--r--dev-cpp/jwt-cpp/jwt-cpp-0.4.0.ebuild72
-rw-r--r--dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild76
-rw-r--r--dev-cpp/jwt-cpp/metadata.xml15
-rw-r--r--dev-cpp/libstudxml/Manifest1
-rw-r--r--dev-cpp/libstudxml/libstudxml-1.1.0_beta10.ebuild61
-rw-r--r--dev-cpp/libstudxml/metadata.xml11
-rw-r--r--dev-cpp/mastodonpp/Manifest1
-rw-r--r--dev-cpp/mastodonpp/mastodonpp-0.5.7.ebuild59
-rw-r--r--dev-cpp/mastodonpp/mastodonpp-9999.ebuild59
-rw-r--r--dev-cpp/mastodonpp/metadata.xml16
-rw-r--r--dev-cpp/muParserX/Manifest1
-rw-r--r--dev-cpp/muParserX/metadata.xml12
-rw-r--r--dev-cpp/muParserX/muParserX-4.0.11.ebuild16
-rw-r--r--dev-cpp/parallel-hashmap/Manifest2
-rw-r--r--dev-cpp/parallel-hashmap/metadata.xml37
-rw-r--r--dev-cpp/parallel-hashmap/parallel-hashmap-1.33.ebuild36
-rw-r--r--dev-cpp/parallel-hashmap/parallel-hashmap-1.34.ebuild41
-rw-r--r--dev-cpp/pcg-cpp/Manifest1
-rw-r--r--dev-cpp/pcg-cpp/files/pcg-cpp.pc9
-rw-r--r--dev-cpp/pcg-cpp/metadata.xml13
-rw-r--r--dev-cpp/pcg-cpp/pcg-cpp-0.98.1_p20210406-r1.ebuild46
-rw-r--r--dev-cpp/plog/Manifest2
-rw-r--r--dev-cpp/plog/metadata.xml13
-rw-r--r--dev-cpp/plog/plog-1.1.5_p20200501.ebuild24
-rw-r--r--dev-cpp/plog/plog-1.1.6.ebuild20
-rw-r--r--dev-cpp/qt-jdenticon/Manifest2
-rw-r--r--dev-cpp/qt-jdenticon/metadata.xml12
-rw-r--r--dev-cpp/qt-jdenticon/qt-jdenticon-0.2.1.ebuild27
-rw-r--r--dev-cpp/qt-jdenticon/qt-jdenticon-0.3.0.ebuild27
-rw-r--r--dev-cpp/scitokens-cpp/Manifest1
-rw-r--r--dev-cpp/scitokens-cpp/files/scitokens-cpp-0.7.0-install-when-testing.patch21
-rw-r--r--dev-cpp/scitokens-cpp/metadata.xml12
-rw-r--r--dev-cpp/scitokens-cpp/scitokens-cpp-0.7.0.ebuild55
-rw-r--r--dev-cpp/simpleini/Manifest1
-rw-r--r--dev-cpp/simpleini/metadata.xml8
-rw-r--r--dev-cpp/simpleini/simpleini-4.17_p20210901.ebuild35
-rw-r--r--dev-cpp/sprout/Manifest1
-rw-r--r--dev-cpp/sprout/files/optional_binaries.patch12
-rw-r--r--dev-cpp/sprout/metadata.xml15
-rw-r--r--dev-cpp/sprout/sprout-0_pre20190615.ebuild36
-rw-r--r--dev-cpp/tiny-dnn/Manifest1
-rw-r--r--dev-cpp/tiny-dnn/files/tiny-dnn-add-sphinx-ext-autodoc-to-conf-py.patch11
-rw-r--r--dev-cpp/tiny-dnn/files/tiny-dnn-disable-gtest-download.patch29
-rw-r--r--dev-cpp/tiny-dnn/metadata.xml89
-rw-r--r--dev-cpp/tiny-dnn/tiny-dnn-1.0.0_alpha3.ebuild84
-rw-r--r--dev-cpp/trantor/Manifest2
-rw-r--r--dev-cpp/trantor/metadata.xml11
-rw-r--r--dev-cpp/trantor/trantor-1.5.4.ebuild49
-rw-r--r--dev-cpp/trantor/trantor-1.5.5.ebuild44
-rw-r--r--dev-cpp/vectorwrapper/Manifest1
-rw-r--r--dev-cpp/vectorwrapper/metadata.xml8
-rw-r--r--dev-cpp/vectorwrapper/vectorwrapper-1.1.2.ebuild36
-rw-r--r--dev-cpp/vectorwrapper/vectorwrapper-9999.ebuild36
-rw-r--r--dev-cpp/vexcl/Manifest1
-rw-r--r--dev-cpp/vexcl/files/add-sphinx-ext-autodoc-to-conf-py.patch11
-rw-r--r--dev-cpp/vexcl/files/vexcl-1.4.2-include-map.patch26
-rw-r--r--dev-cpp/vexcl/metadata.xml26
-rw-r--r--dev-cpp/vexcl/vexcl-1.4.2-r2.ebuild88
-rw-r--r--dev-cpp/wangle/Manifest1
-rw-r--r--dev-cpp/wangle/metadata.xml46
-rw-r--r--dev-cpp/wangle/wangle-2022.03.21.00.ebuild39
-rw-r--r--dev-cpp/xdgpp/Manifest9
-rw-r--r--dev-cpp/xdgpp/metadata.xml8
-rw-r--r--dev-cpp/xdgpp/xdgpp-0_pre20201007.ebuild49
93 files changed, 2240 insertions, 0 deletions
diff --git a/dev-cpp/cli11/Manifest b/dev-cpp/cli11/Manifest
new file mode 100644
index 000000000000..a7e1e99e53f8
--- /dev/null
+++ b/dev-cpp/cli11/Manifest
@@ -0,0 +1,2 @@
+DIST cli11-2.1.2.tar.gz 285131 BLAKE2B 7967491bb252bcbf38194440ede4d1276ee5224e122cd9a5381de95a2d9f3d6cd6527d9c787b846c9d8009a824754bbf9f73d70dd26392c0d0945158edac8b84 SHA512 3b21d015e046666d2e3df2b7cf1a6247c2daa26bf583e714dc1f0a94518785bf90993cd8530f88078b4daac02530dc517db0d5ad452d2a91521b3007f270ea55
+DIST cli11-2.2.0.tar.gz 291482 BLAKE2B 4c419ef40d0fa3cb9fefe9bbb5fbc92db4d49f4032cc963d1434b4009a7d7e31cc74662bf391c57be9832be557e825e7fa17d375f9552396ce49d6035f89fe45 SHA512 ee8994c99dd8119e612be0339252b863d6db9d85a10c15a6e60e56c6f387bbefaf479679bc85aed2cb6539aeb82b3e7543673a5b97eb04b61793b6946582241d
diff --git a/dev-cpp/cli11/cli11-2.1.2.ebuild b/dev-cpp/cli11/cli11-2.1.2.ebuild
new file mode 100644
index 000000000000..e83d6f91619a
--- /dev/null
+++ b/dev-cpp/cli11/cli11-2.1.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="doxygen"
+DOCS_DIR="docs"
+inherit cmake docs
+
+CATCH_PV=2.13.6
+DESCRIPTION="Command line parser for C++11"
+HOMEPAGE="https://github.com/CLIUtils/CLI11 https://cliutils.github.io/CLI11/book/"
+SRC_URI="https://github.com/CLIUtils/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/CLI11-${PV}"
+
+LICENSE="BSD"
+SLOT="0/2"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? (
+ dev-cpp/catch:0
+ dev-libs/boost
+)"
+
+DOCS=( README.md CHANGELOG.md )
+
+src_configure() {
+ local mycmakeargs=(
+ -DCLI11_BUILD_DOCS=OFF # handled by docs.eclass
+ -DCLI11_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ docs_compile
+}
diff --git a/dev-cpp/cli11/cli11-2.2.0.ebuild b/dev-cpp/cli11/cli11-2.2.0.ebuild
new file mode 100644
index 000000000000..e83d6f91619a
--- /dev/null
+++ b/dev-cpp/cli11/cli11-2.2.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="doxygen"
+DOCS_DIR="docs"
+inherit cmake docs
+
+CATCH_PV=2.13.6
+DESCRIPTION="Command line parser for C++11"
+HOMEPAGE="https://github.com/CLIUtils/CLI11 https://cliutils.github.io/CLI11/book/"
+SRC_URI="https://github.com/CLIUtils/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/CLI11-${PV}"
+
+LICENSE="BSD"
+SLOT="0/2"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? (
+ dev-cpp/catch:0
+ dev-libs/boost
+)"
+
+DOCS=( README.md CHANGELOG.md )
+
+src_configure() {
+ local mycmakeargs=(
+ -DCLI11_BUILD_DOCS=OFF # handled by docs.eclass
+ -DCLI11_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ docs_compile
+}
diff --git a/dev-cpp/cli11/metadata.xml b/dev-cpp/cli11/metadata.xml
new file mode 100644
index 000000000000..6985eff649f9
--- /dev/null
+++ b/dev-cpp/cli11/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">CLIUtils/CLI11</remote-id>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/coeurl/Manifest b/dev-cpp/coeurl/Manifest
new file mode 100644
index 000000000000..7b8e817630b6
--- /dev/null
+++ b/dev-cpp/coeurl/Manifest
@@ -0,0 +1,2 @@
+DIST coeurl-0.1.1.tar.bz2 45471 BLAKE2B ea5b490cb62ed780c4499d15c1f9502185f8edab9d706cc422eda62d9149512e693e82fa9431a05c58e2bb949314a9de0d513d54824a07c1e4ca6bc801065189 SHA512 9f781b30f57314253602b8560954122537b3c1d40cc327c62aac3662ba80ec8fe45fc69adec5c571b8861c996724c7869e4dc88fafc5ebee31794299de999e34
+DIST coeurl-0.2.0.tar.bz2 45520 BLAKE2B 8a26f43817af213971c6c8d568251f3306857d9fa8ebdd09aa0a1f548c31b00fe1431334ff546ab152edd002f56d23d006240c494ad2ccaf9292afff97583a84 SHA512 de5f405b6993a33cf958996430d0f7a25cccb47488c3c2ce44525630e533a5acd1d630e2293cdae74befc627de81b211b4a9b6d53138f3de1d92f267f016e4fb
diff --git a/dev-cpp/coeurl/coeurl-0.1.1.ebuild b/dev-cpp/coeurl/coeurl-0.1.1.ebuild
new file mode 100644
index 000000000000..53569de45ec0
--- /dev/null
+++ b/dev-cpp/coeurl/coeurl-0.1.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="A simple async wrapper around CURL for C++"
+HOMEPAGE="https://nheko.im/nheko-reborn/coeurl"
+SRC_URI="https://nheko.im/nheko-reborn/coeurl/-/archive/v${PV}/${PN}-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+S="${WORKDIR}/${PN}-v${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="test" # Tests turned off because they need a local webserver.
+
+RDEPEND="
+ net-misc/curl
+ dev-libs/libevent
+ dev-libs/spdlog
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/doctest )
+"
+
+src_configure() {
+ local -a emesonargs=(
+ $(meson_use test tests)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/coeurl/coeurl-0.2.0.ebuild b/dev-cpp/coeurl/coeurl-0.2.0.ebuild
new file mode 100644
index 000000000000..8137d25f3c49
--- /dev/null
+++ b/dev-cpp/coeurl/coeurl-0.2.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson
+
+DESCRIPTION="A simple async wrapper around CURL for C++"
+HOMEPAGE="https://nheko.im/nheko-reborn/coeurl"
+SRC_URI="https://nheko.im/nheko-reborn/coeurl/-/archive/v${PV}/${PN}-v${PV}.tar.bz2 -> ${P}.tar.bz2"
+S="${WORKDIR}/${PN}-v${PV}"
+
+LICENSE="MIT"
+SLOT="0/${PV}" # ABI may break even on patch version changes.
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="test" # Tests turned off because they need a local webserver.
+
+RDEPEND="
+ net-misc/curl
+ dev-libs/libevent
+ dev-libs/spdlog
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/doctest )
+"
+
+src_configure() {
+ local -a emesonargs=(
+ $(meson_use test tests)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/coeurl/metadata.xml b/dev-cpp/coeurl/metadata.xml
new file mode 100644
index 000000000000..5533c93d756a
--- /dev/null
+++ b/dev-cpp/coeurl/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/drogon/Manifest b/dev-cpp/drogon/Manifest
new file mode 100644
index 000000000000..b0fc7c723da6
--- /dev/null
+++ b/dev-cpp/drogon/Manifest
@@ -0,0 +1,2 @@
+DIST drogon-1.7.4.tar.gz 498277 BLAKE2B dc8d4af959c2ea6e76bc1477b182a1fdae843d1a16c94524f570e4152c8c10f190bd02b80139e57887df6d032711fcf80475d7766042815c8195151f1b54b0ca SHA512 ee2458e584beb1dc0e437cbdbdea211762aeac60acc7104d1a7bf6aa7629f70d0cc71a45978b27917373599806f6f183ec2494be7ec00c74694888a31e5fd5d1
+DIST drogon-1.7.5.tar.gz 500398 BLAKE2B 9956542206119abd3fa8f2be61a59e09127c1c57019082a372b08e9e04f20d1361ae439118593078db13397e7c925ee5f904ff186dbb51c89f4e7245f4647f98 SHA512 8be77961026d13b55dbfcc2e43972b4fb8f1cd9a6bfb8098d5bdfc8b60ff67c2d3ede4bdb5815614a8233dc184cbf3aa363a9d33eed96b9f748544e20b15f2c7
diff --git a/dev-cpp/drogon/drogon-1.7.4.ebuild b/dev-cpp/drogon/drogon-1.7.4.ebuild
new file mode 100644
index 000000000000..a7d796d7a7aa
--- /dev/null
+++ b/dev-cpp/drogon/drogon-1.7.4.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C++14/17 based HTTP web application framework"
+HOMEPAGE="https://github.com/drogonframework/drogon"
+SRC_URI="https://github.com/drogonframework/drogon/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+brotli doc examples mariadb postgres redis sqlite +ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-cpp/trantor-1.5.4
+ dev-libs/jsoncpp:=
+ sys-libs/zlib
+ brotli? ( app-arch/brotli:= )
+ mariadb? ( dev-db/mariadb:= )
+ postgres? ( dev-db/postgresql:= )
+ redis? ( dev-libs/hiredis:= )
+ sqlite? ( dev-db/sqlite:3 )
+ ssl? ( dev-libs/openssl:= )
+ elibc_Darwin? ( sys-libs/native-uuid )
+ elibc_SunOS? ( sys-libs/libuuid )
+ !elibc_Darwin? ( !elibc_SunOS? (
+ sys-apps/util-linux
+ ) )
+"
+DEPEND="${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+DOCS=( CONTRIBUTING.md ChangeLog.md README.md README.zh-CN.md README.zh-TW.md )
+
+src_prepare() {
+ cmake_comment_add_subdirectory "trantor"
+ sed -i '/${PROJECT_SOURCE_DIR}\/trantor\/trantor\/tests\/server.pem/d' \
+ lib/tests/CMakeLists.txt || die
+
+ use examples && DOCS+=( "${S}/examples" )
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local -a mycmakeargs=(
+ -DBUILD_DOC=$(usex doc)
+ -DBUILD_EXAMPLES=NO
+ -DBUILD_DROGON_SHARED=YES
+ -DBUILD_POSTGRESQL=$(usex postgres)
+ -DBUILD_MYSQL=$(usex mariadb)
+ -DBUILD_SQLITE=$(usex sqlite)
+ -DBUILD_REDIS=$(usex redis)
+ -DBUILD_TESTING=$(usex test)
+ -DBUILD_BROTLI=$(usex brotli)
+ $(cmake_use_find_package ssl OpenSSL)
+ $(cmake_use_find_package doc Doxygen)
+ )
+ use doc && HTML_DOCS=( "${BUILD_DIR}/docs/drogon/html/." )
+
+ cmake_src_configure
+}
+
+src_install() {
+ docompress -x /usr/share/doc/${PF}/examples
+ cmake_src_install
+}
diff --git a/dev-cpp/drogon/drogon-1.7.5.ebuild b/dev-cpp/drogon/drogon-1.7.5.ebuild
new file mode 100644
index 000000000000..994e0b823372
--- /dev/null
+++ b/dev-cpp/drogon/drogon-1.7.5.ebuild
@@ -0,0 +1,73 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C++14/17 based HTTP web application framework"
+HOMEPAGE="https://github.com/drogonframework/drogon"
+SRC_URI="https://github.com/drogonframework/drogon/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+brotli doc examples mariadb postgres redis sqlite +ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-cpp/trantor-1.5.5
+ dev-libs/jsoncpp:=
+ sys-libs/zlib
+ brotli? ( app-arch/brotli:= )
+ mariadb? ( dev-db/mariadb:= )
+ postgres? ( dev-db/postgresql:= )
+ redis? ( dev-libs/hiredis:= )
+ sqlite? ( dev-db/sqlite:3 )
+ ssl? ( dev-libs/openssl:= )
+ elibc_Darwin? ( sys-libs/native-uuid )
+ elibc_SunOS? ( sys-libs/libuuid )
+ !elibc_Darwin? ( !elibc_SunOS? (
+ sys-apps/util-linux
+ ) )
+"
+DEPEND="${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+DOCS=( CONTRIBUTING.md ChangeLog.md README.md README.zh-CN.md README.zh-TW.md )
+
+src_prepare() {
+ cmake_comment_add_subdirectory "trantor"
+ sed -i '/${PROJECT_SOURCE_DIR}\/trantor\/trantor\/tests\/server.pem/d' \
+ lib/tests/CMakeLists.txt || die
+
+ use examples && DOCS+=( "${S}/examples" )
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local -a mycmakeargs=(
+ -DBUILD_DOC=$(usex doc)
+ -DBUILD_EXAMPLES=NO
+ -DBUILD_DROGON_SHARED=YES
+ -DBUILD_POSTGRESQL=$(usex postgres)
+ -DBUILD_MYSQL=$(usex mariadb)
+ -DBUILD_SQLITE=$(usex sqlite)
+ -DBUILD_REDIS=$(usex redis)
+ -DBUILD_TESTING=$(usex test)
+ -DBUILD_BROTLI=$(usex brotli)
+ $(cmake_use_find_package ssl OpenSSL)
+ $(cmake_use_find_package doc Doxygen)
+ )
+ use doc && HTML_DOCS=( "${BUILD_DIR}/docs/drogon/html/." )
+
+ cmake_src_configure
+}
+
+src_install() {
+ docompress -x /usr/share/doc/${PF}/examples
+ cmake_src_install
+}
diff --git a/dev-cpp/drogon/metadata.xml b/dev-cpp/drogon/metadata.xml
new file mode 100644
index 000000000000..782288ff9350
--- /dev/null
+++ b/dev-cpp/drogon/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+</maintainer>
+<upstream>
+ <doc>https://drogon.docsforge.com/</doc>
+</upstream>
+<use>
+ <flag name="brotli">Enable support for brotli compression</flag>
+ <flag name="mariadb">Add support for the mariadb database</flag>
+ <flag name="redis">Add support for the Redis database via <pkg>dev-libs/hiredis</pkg></flag>
+</use>
+</pkgmetadata>
diff --git a/dev-cpp/dtl/Manifest b/dev-cpp/dtl/Manifest
new file mode 100644
index 000000000000..1bfa96ce0020
--- /dev/null
+++ b/dev-cpp/dtl/Manifest
@@ -0,0 +1 @@
+DIST dtl-1.19_p20210531.tar.gz 26011 BLAKE2B 1ac4194cf536c072c45c2e2da0f0fd26232a5bf2e7aa57e8323457b5d43222df6a8579a41e54cd941cc69e013d4dac9fd051ad33950ed89692629ef57564a5f6 SHA512 2ac1f3d9871ed39f4183ebf0d9d8a1381ef2dacc3677f525d025eb292fbf4676a5a67abe34dfa1ff12bdb66e0fa71a83b8a99130e2e8048e08d3392327e84a9a
diff --git a/dev-cpp/dtl/dtl-1.19_p20210531.ebuild b/dev-cpp/dtl/dtl-1.19_p20210531.ebuild
new file mode 100644
index 000000000000..4b8158ee4b78
--- /dev/null
+++ b/dev-cpp/dtl/dtl-1.19_p20210531.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+COMMIT="18e674e4a6fdc8c22534a207ff7812ed932a5e61"
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit python-any-r1 scons-utils toolchain-funcs
+
+DESCRIPTION="diff template library written by C++"
+HOMEPAGE="https://github.com/cubicdaiya/dtl"
+SRC_URI="https://github.com/cubicdaiya/dtl/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ test? (
+ dev-cpp/gtest
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-do-not-append-O2.patch" )
+
+src_compile() {
+ escons CC="$(tc-getCC)"
+ if use test; then
+ pushd test || die
+ escons CC="$(tc-getCC)"
+ popd || die
+ fi
+ if use examples; then
+ pushd examples || die
+ escons CC="$(tc-getCC)"
+ popd || die
+ fi
+}
+
+src_install() {
+ escons prefix="${T}" install
+ insinto /usr/include/dtl
+ doins "${T}/dtl/include"/*
+ if use examples; then
+ cd examples || die
+ rm SConstruct *.o *.cpp *.hpp || die
+ exeinto /usr/libexec/dtl/examples
+ doexe *
+ fi
+}
+
+src_test() {
+ cd test || die
+ escons check
+}
diff --git a/dev-cpp/dtl/files/dtl-1.19_p20210531-do-not-append-O2.patch b/dev-cpp/dtl/files/dtl-1.19_p20210531-do-not-append-O2.patch
new file mode 100644
index 000000000000..4b6f99943cbd
--- /dev/null
+++ b/dev-cpp/dtl/files/dtl-1.19_p20210531-do-not-append-O2.patch
@@ -0,0 +1,11 @@
+--- a/examples/SConstruct
++++ b/examples/SConstruct
+@@ -7,7 +7,7 @@
+ if debug == 'y' or debug == 'yes':
+ env.Append(CPPFLAGS = ['-Wall', '-g'])
+ else:
+- env.Append(CPPFLAGS = ['-Wall', '-O2'])
++ env.Append(CPPFLAGS = ['-Wall'])
+
+ if os.sys.platform != "win32":
+ env.Append(CPPDEFINES = ['HAVE_UNISTD_H'])
diff --git a/dev-cpp/dtl/metadata.xml b/dev-cpp/dtl/metadata.xml
new file mode 100644
index 000000000000..4f8e72c5c4d8
--- /dev/null
+++ b/dev-cpp/dtl/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/fbthrift/Manifest b/dev-cpp/fbthrift/Manifest
new file mode 100644
index 000000000000..ebe4d535f531
--- /dev/null
+++ b/dev-cpp/fbthrift/Manifest
@@ -0,0 +1 @@
+DIST fbthrift-2022.03.21.00.tar.gz 7178541 BLAKE2B 6e875f19ae19b5ccd1740d5eadb0b4f106d96b95ca1ced9e05a5bfd7f8e7de84aec722f0dfb0721c81e320185359d3f9c595ebfebef8638b6ca6788df98d37d4 SHA512 8d2d9430dc3a4ecc23042cd9bcf4eee888824449d05d98baec408aef806b934d643e578d3876169f69966c846aeddbe0aa84416c4e020cba028a49d2fccfe7ab
diff --git a/dev-cpp/fbthrift/fbthrift-2022.03.21.00.ebuild b/dev-cpp/fbthrift/fbthrift-2022.03.21.00.ebuild
new file mode 100644
index 000000000000..78227864ddf9
--- /dev/null
+++ b/dev-cpp/fbthrift/fbthrift-2022.03.21.00.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit cmake python-single-r1
+
+DESCRIPTION="Facebook's branch of Apache Thrift, including a new C++ server"
+HOMEPAGE="https://github.com/facebook/fbthrift"
+SRC_URI="https://github.com/facebook/fbthrift/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ app-arch/zstd
+ ~dev-cpp/fizz-${PV}:=
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags
+ dev-cpp/glog
+ ~dev-cpp/wangle-${PV}:=
+ dev-libs/libfmt
+ dev-libs/openssl:0=
+ sys-libs/zlib
+ ${PYTHON_DEPS}
+"
+DEPEND="
+ ${RDEPEND}
+ $(python_gen_cond_dep 'dev-python/six[${PYTHON_USEDEP}]')
+"
+BDEPEND="
+ sys-devel/bison
+ sys-devel/flex
+"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIB_INSTALL_DIR=$(get_libdir)
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/fbthrift/metadata.xml b/dev-cpp/fbthrift/metadata.xml
new file mode 100644
index 000000000000..e234dbf77efc
--- /dev/null
+++ b/dev-cpp/fbthrift/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+Thrift is a serialization and RPC framework for service communication. Thrift enables these features in all major languages, and there is strong support for C++, Python, Hack, and Java. Most services at Facebook are written using Thrift for RPC, and some storage systems use Thrift for serializing records on disk.
+
+Facebook Thrift is not a distribution of Apache Thrift. This is an evolved internal branch of Thrift that Facebook re-released to open source community in February 2014. Facebook Thrift was originally released closely tracking Apache Thrift but is now evolving in new directions. In particular, the compiler was rewritten from scratch and the new implementation features a fully asynchronous Thrift server. Read more about these improvements in the ThriftServer documentation.
+
+You can also learn more about this project in the original Facebook Code blog post.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/facebook/fbthrift/issues</bugs-to>
+ <remote-id type="github">facebook/fbthrift</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/fizz/Manifest b/dev-cpp/fizz/Manifest
new file mode 100644
index 000000000000..7e54932b0250
--- /dev/null
+++ b/dev-cpp/fizz/Manifest
@@ -0,0 +1 @@
+DIST fizz-2022.03.21.00.tar.gz 581670 BLAKE2B 2dc9691abfaf646db56e047a74894b745102764c773b9f244c4b357b74b6d00d1a2548664a5e343f2c5f84458de36d453e99b9901c89bc621c54840a7b45b5e4 SHA512 81a7b764c2c2e17fd5df32a69ecb368eb01df04df6dbd1155a40b68fc39cda4f86ce81afc5c89425a5751ef7f4dbb8a40df8b5095685e72ce5e9043c0a74682e
diff --git a/dev-cpp/fizz/fizz-2022.03.21.00.ebuild b/dev-cpp/fizz/fizz-2022.03.21.00.ebuild
new file mode 100644
index 000000000000..12e7ec5679e6
--- /dev/null
+++ b/dev-cpp/fizz/fizz-2022.03.21.00.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C++14 implementation of the TLS-1.3 standard"
+HOMEPAGE="https://github.com/facebookincubator/fizz"
+SRC_URI="https://github.com/facebookincubator/fizz/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples test"
+
+RDEPEND="
+ ~dev-cpp/folly-${PV}:=
+ dev-cpp/gflags
+ dev-cpp/glog
+ dev-libs/double-conversion
+ dev-libs/libevent
+ dev-libs/libfmt
+ dev-libs/libsodium
+ dev-libs/openssl:0=
+"
+#TODO: discover if gtest is linked
+DEPEND="
+ ${RDEPEND}
+ test? ( <dev-cpp/gtest-1.11.0 )
+"
+
+RESTRICT="!test? ( test )"
+CMAKE_USE_DIR="${S}/fizz"
+
+src_prepare() {
+ cmake_src_prepare
+ sed -i '/Sodium/d' fizz/cmake/fizz-config.cmake.in || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_EXAMPLES=$(usex examples)
+ -DBUILD_TESTS=$(usex test)
+ -DLIB_INSTALL_DIR=$(get_libdir)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/fizz/metadata.xml b/dev-cpp/fizz/metadata.xml
new file mode 100644
index 000000000000..44dd63454b2b
--- /dev/null
+++ b/dev-cpp/fizz/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+The core protocol implementations are in ClientProtocol and ServerProtocol. FizzClientContext and FizzServerContext provide configuration options. FizzClient and FizzServer (which both inherit from FizzBase) provide applications with an interface to interact with the state machine. FizzClient/FizzServer receives events from the application layer, invokes the correct event handler, and invokes the application ActionVisitor to process the actions.
+
+AsyncFizzClient and AsyncFizzServer provide implementations of the folly AsyncTransportWrapper interface. They own an underlying transport (for example AsyncSocket) and perform the TLS handshake and encrypt/decrypt application data.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/facebookincubator/fizz/issues</bugs-to>
+ <remote-id type="github">facebookincubator/fizz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gsl-lite/Manifest b/dev-cpp/gsl-lite/Manifest
new file mode 100644
index 000000000000..df22a067bab9
--- /dev/null
+++ b/dev-cpp/gsl-lite/Manifest
@@ -0,0 +1 @@
+DIST gsl-lite-0.38.0.tar.gz 120838 BLAKE2B 8ead324b357480e34a4c867bde5e81424128d75e81e229f61079423f8f383d0d746961c085830db02fc5892eca94ac4b407613674da30ba106c620c148a7a41b SHA512 7f73c600800ce375e231e0904c569f0d3beb8ce2790c1f66208d1c5097bed0abd1e82e72cf0051f0bbb09a4e5939d6637b09b8978d91859fc039a42adccdde36
diff --git a/dev-cpp/gsl-lite/gsl-lite-0.38.0.ebuild b/dev-cpp/gsl-lite/gsl-lite-0.38.0.ebuild
new file mode 100644
index 000000000000..b2b2c39336ea
--- /dev/null
+++ b/dev-cpp/gsl-lite/gsl-lite-0.38.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="C++ Guideline Support Library implementation"
+HOMEPAGE="https://github.com/gsl-lite/gsl-lite"
+SRC_URI="https://github.com/gsl-lite/gsl-lite/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# header only library
+RDEPEND=""
+DEPEND=""
+
+src_configure() {
+ local mycmakeargs=(
+ -DGSL_LITE_OPT_BUILD_TESTS=$(usex test)
+ )
+ cmake_src_configure
+
+ sed -i -e 's/"-*Werror"//g' test/MakeTestTarget.cmake || die
+}
diff --git a/dev-cpp/gsl-lite/metadata.xml b/dev-cpp/gsl-lite/metadata.xml
new file mode 100644
index 000000000000..918ede3f2a3f
--- /dev/null
+++ b/dev-cpp/gsl-lite/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>brian.gloyer@gmail.com</email>
+ <name>brian gloyer</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/indicators/Manifest b/dev-cpp/indicators/Manifest
new file mode 100644
index 000000000000..0982bfae1a47
--- /dev/null
+++ b/dev-cpp/indicators/Manifest
@@ -0,0 +1 @@
+DIST indicators-2.2.tar.gz 8974714 BLAKE2B 538e9d77c7d4f19cc81d4476288ce7f78198a61252885a78e166f39137e8653082d02861cbf2469b08cc3af5f6ed4e76c343ca1d95aec67d35f2dbcde4ba72c2 SHA512 7ced2d3c320d51c7e0569104744730c8e2f952350bcae214a9781eb43ef4002c8314937db78461351741fc4c3aee7a1364582b1274991e95eb30006a5f2a7ef9
diff --git a/dev-cpp/indicators/indicators-2.2.ebuild b/dev-cpp/indicators/indicators-2.2.ebuild
new file mode 100644
index 000000000000..5d23e2b8853d
--- /dev/null
+++ b/dev-cpp/indicators/indicators-2.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Activity indicators for modern C++"
+HOMEPAGE="https://github.com/p-ranav/indicators"
+SRC_URI="https://github.com/p-ranav/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples"
+
+src_install() {
+ cmake_src_install
+ rm -r "${ED}"/usr/share/licenses || die
+
+ docompress -x /usr/share/doc/${PF}/samples
+ use examples && dodoc -r demo samples
+}
diff --git a/dev-cpp/indicators/metadata.xml b/dev-cpp/indicators/metadata.xml
new file mode 100644
index 000000000000..e4abb6a2f800
--- /dev/null
+++ b/dev-cpp/indicators/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">p-ranav/indicators</remote-id>
+ <bugs-to>https://github.com/p-ranav/indicators/issues</bugs-to>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/jwt-cpp/Manifest b/dev-cpp/jwt-cpp/Manifest
new file mode 100644
index 000000000000..7ed5fadf110f
--- /dev/null
+++ b/dev-cpp/jwt-cpp/Manifest
@@ -0,0 +1,2 @@
+DIST jwt-cpp-0.4.0.tar.gz 64383 BLAKE2B 48de501a1fff851ada5ffc0554309f6f05943d6b6a459c8f002f8bcebb9be40d878fc7f39c2f4da7031b784421dd0530d8e50d5eadbdb924c5485fdcd2f04b85 SHA512 8a82accb396db8fb2f1a32b14459f6ff3f5d4c6dcb54dfe1a10751da093381c2dcfb92c6e1f4f2ae42ca0f25c96c02ea35f37b723afaaf6b2d458c1a6f4e6b62
+DIST jwt-cpp-0.6.0.tar.gz 275126 BLAKE2B 4bf9bed9b2aa9584b497b2ab4d1d2582d9b5e4ded402200ea3f70b0e6752338fd4e2ef9c5836c728a6907a0190209c7baeaecd26032ce64dc6bf12a23594f27b SHA512 b6d5ebb3a7eeb6fef9a1d41c707251d1ab05bf47920c280d5203f1b9ee5bf6f8e914cd2ffaed66550cfa6d78c34465d4cf86517a759d5f8739b429faf1c2c0ef
diff --git a/dev-cpp/jwt-cpp/jwt-cpp-0.4.0.ebuild b/dev-cpp/jwt-cpp/jwt-cpp-0.4.0.ebuild
new file mode 100644
index 000000000000..611f754fde50
--- /dev/null
+++ b/dev-cpp/jwt-cpp/jwt-cpp-0.4.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Thalhammer/jwt-cpp.git"
+else
+ SRC_URI="https://github.com/Thalhammer/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="header only library for creating and validating JSON Web Tokens in C++11"
+HOMEPAGE="https://thalhammer.github.io/jwt-cpp/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc +picojson test"
+
+DEPEND="${RDEPEND}
+ dev-libs/openssl
+ picojson? ( dev-cpp/picojson )"
+BDEPEND="
+ doc? ( app-doc/doxygen[dot] )
+ test? ( dev-cpp/gtest )
+"
+RESTRICT="
+ !picojson? ( test )
+ !test? ( test )"
+
+src_prepare() {
+ # Unbundle dev-cpp/picojson and fix include paths.
+ # See also: https://github.com/Thalhammer/jwt-cpp/issues/213
+ rm -vrf include/picojson || die
+ find -name '*.h' -type f -print0 | xargs -0 sed -r -e "s:picojson/picojson\.h:picojson.h:g" -i || die
+ # Prevent installation of bundled dev-cpp/picojson.
+ sed -i -e 's:^\s*install.*include/picojson.*$::' CMakeLists.txt || die
+ # Fix installation paths for .cmake files.
+ sed -i -e 's:DESTINATION ${CMAKE_INSTALL_PREFIX}/jwt-cpp:DESTINATION ${CMAKE_INSTALL_PREFIX}/share/jwt-cpp:' CMakeLists.txt || die
+ sed -i -e 's:DESTINATION jwt-cpp:DESTINATION ${CMAKE_INSTALL_PREFIX}/share/jwt-cpp:' CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # Not useful for now, asks for non-existent CMake module.
+ #-DJWT_EXTERNAL_PICOJSON="$(usex picojson)"
+ # Examples are not installed and for development only.
+ -DBUILD_TESTS="$(usex test)"
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ if use doc; then
+ doxygen || die
+ fi
+}
+
+src_install() {
+ cmake_src_install
+ use doc && local HTML_DOCS=(docs/html/.)
+ einstalldocs
+}
+
+src_test() {
+ "${BUILD_DIR}"/tests/jwt-cpp-test || die
+}
diff --git a/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild b/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild
new file mode 100644
index 000000000000..29d69816be64
--- /dev/null
+++ b/dev-cpp/jwt-cpp/jwt-cpp-0.6.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Thalhammer/jwt-cpp.git"
+else
+ SRC_URI="https://github.com/Thalhammer/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="header only library for creating and validating JSON Web Tokens in C++11"
+HOMEPAGE="https://thalhammer.github.io/jwt-cpp/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc +picojson test"
+
+DEPEND="${RDEPEND}
+ dev-cpp/nlohmann_json
+ dev-libs/openssl
+ picojson? ( dev-cpp/picojson )"
+BDEPEND="
+ doc? ( app-doc/doxygen[dot] )
+ test? ( dev-cpp/gtest )
+"
+RESTRICT="
+ !picojson? ( test )
+ !test? ( test )"
+DOCS=( README.md docs/{faqs,ssl,traits}.md )
+
+src_prepare() {
+ # Unbundle dev-cpp/nlohmann_json.
+ rm -vrf include/nhlomann || die
+ # Unbundle dev-cpp/picojson and fix include paths.
+ # See also: https://github.com/Thalhammer/jwt-cpp/issues/213
+ rm -vrf include/picojson || die
+ find -name '*.h' -type f -print0 | xargs -0 sed -r -e "s:picojson/picojson\.h:picojson.h:g" -i || die
+ # Prevent installation of bundled dev-cpp/picojson.
+ sed -i -e 's:^\s*install.*picojson/picojson\.h.*$::' CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DJWT_DISABLE_PICOJSON="$(usex picojson OFF ON)"
+ # Not useful for now, asks for non-existent CMake module.
+ #-DJWT_EXTERNAL_PICOJSON="$(usex picojson)"
+ # Examples are not installed and for development only.
+ -DJWT_BUILD_EXAMPLES=NO
+ -DJWT_BUILD_TESTS="$(usex test)"
+ -DJWT_CMAKE_FILES_INSTALL_DIR="${EPREFIX}"/usr/share/cmake
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ if use doc; then
+ doxygen || die
+ fi
+}
+
+src_install() {
+ cmake_src_install
+ use doc && local HTML_DOCS=(doxy/html/.)
+ einstalldocs
+}
+
+src_test() {
+ "${BUILD_DIR}"/tests/jwt-cpp-test || die
+}
diff --git a/dev-cpp/jwt-cpp/metadata.xml b/dev-cpp/jwt-cpp/metadata.xml
new file mode 100644
index 000000000000..71a6e5e732c3
--- /dev/null
+++ b/dev-cpp/jwt-cpp/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>o.freyermuth@googlemail.com</email>
+ <name>Oliver Freyermuth</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/Thalhammer/jwt-cpp/issues</bugs-to>
+ <remote-id type="github">Thalhammer/jwt-cpp</remote-id>
+ </upstream>
+ <use>
+ <flag name="picojson">Enable use of <pkg>dev-cpp/picojson</pkg></flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-cpp/libstudxml/Manifest b/dev-cpp/libstudxml/Manifest
new file mode 100644
index 000000000000..c308bca6dd14
--- /dev/null
+++ b/dev-cpp/libstudxml/Manifest
@@ -0,0 +1 @@
+DIST libstudxml-1.1.0-b.10.tar.gz 143917 BLAKE2B 524789538ee12d2ebfa4f3d2a78fb48f119eb1a586e8ec18c29eb46d90b2fe714b8b991da6222b6e6ad0c76ebe5901f2be5e865f97a0c5ac11dcb22a9a85591a SHA512 eb44d769063dde66dde52326840f4fce81a67cea640c5246f558e6428f2588c12145cade10e1f6824f7094386102e2807f3e44a6e35b550e34ad215723a9bd81
diff --git a/dev-cpp/libstudxml/libstudxml-1.1.0_beta10.ebuild b/dev-cpp/libstudxml/libstudxml-1.1.0_beta10.ebuild
new file mode 100644
index 000000000000..8311e6323bb7
--- /dev/null
+++ b/dev-cpp/libstudxml/libstudxml-1.1.0_beta10.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="${PN}-$(ver_cut 1-3)-b.$(ver_cut 5)"
+
+inherit multiprocessing
+
+SRC_URI="https://pkg.cppget.org/1/beta/${PN}/${MY_P}.tar.gz"
+KEYWORDS='~amd64 ~x86'
+DESCRIPTION='Streaming XML pull parser/serializer for modern C++'
+HOMEPAGE='https://www.codesynthesis.com/projects/libstudxml/'
+LICENSE='MIT'
+
+SLOT='0'
+IUSE='test'
+RESTRICT='!test? ( test )'
+
+BDEPEND='dev-util/build2'
+
+S="${WORKDIR}/${MY_P}"
+
+src_configure() {
+ b configure \
+ config.cc.coptions="${CFLAGS}" \
+ config.cc.loptions="${LDFLAGS}" \
+ config.cxx.coptions="${CXXFLAGS}" \
+ config.cxx.loptions="${LDFLAGS}" \
+ --jobs $(makeopts_jobs) \
+ --no-progress \
+ --verbose 2
+}
+
+src_compile() {
+ b update-for-install \
+ config.install.root="${EPREFIX}"/usr \
+ --jobs $(makeopts_jobs) \
+ --no-progress \
+ --verbose 2
+ use test && b update-for-test \
+ --jobs $(makeopts_jobs) \
+ --no-progress \
+ --verbose 2
+}
+
+src_test() {
+ b test \
+ --jobs $(makeopts_jobs) \
+ --no-progress \
+ --verbose 2
+}
+
+src_install() {
+ b install \
+ config.install.chroot="${D}" \
+ config.install.root="${EPREFIX}"/usr \
+ config.install.lib="${EPREFIX}"/usr/$(get_libdir) \
+ config.install.doc="${EPREFIX}"/usr/share/doc/${PF} \
+ --no-progress
+}
diff --git a/dev-cpp/libstudxml/metadata.xml b/dev-cpp/libstudxml/metadata.xml
new file mode 100644
index 000000000000..3a421b0f6585
--- /dev/null
+++ b/dev-cpp/libstudxml/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription lang="en">
+ libstudxml is a streaming XML pull parser and streaming XML
+ serializer implementation for modern, standard C++. It is
+ compact, external dependency-free, and reasonably efficient.
+ XML parser is a conforming, non-validating XML 1.0
+ implementation that is based on tested and proven code.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/mastodonpp/Manifest b/dev-cpp/mastodonpp/Manifest
new file mode 100644
index 000000000000..0d31c4cf3f78
--- /dev/null
+++ b/dev-cpp/mastodonpp/Manifest
@@ -0,0 +1 @@
+DIST mastodonpp-0.5.7.tar.gz 48181 BLAKE2B cce2b9b61c3cb88a5246888d97b5495979b15e41b1e6d5499d09f00cd24fc94b78a983d634ec28dee0d537642294542235efa261faaa3320ab905f7196b16133 SHA512 83efbd32f7cde6a19546c21d99ed1c8b747ac995b69a5e87876bd0ea0aa9c932d0d255ed2cbe5b0fe4a92aec06d6c75d455f13e9537aade31176ec757916b27a
diff --git a/dev-cpp/mastodonpp/mastodonpp-0.5.7.ebuild b/dev-cpp/mastodonpp/mastodonpp-0.5.7.ebuild
new file mode 100644
index 000000000000..60770d518b57
--- /dev/null
+++ b/dev-cpp/mastodonpp/mastodonpp-0.5.7.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+[[ "${PV}" == "9999" ]] && inherit git-r3
+
+DESCRIPTION="C++ wrapper for the Mastodon and Pleroma APIs."
+HOMEPAGE="https://schlomp.space/tastytea/mastodonpp"
+if [[ "${PV}" != "9999" ]]; then
+ SRC_URI="https://schlomp.space/tastytea/mastodonpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}"
+ KEYWORDS="~amd64"
+else
+ EGIT_REPO_URI="https://schlomp.space/tastytea/mastodonpp.git"
+fi
+
+LICENSE="AGPL-3"
+SLOT="0"
+IUSE="doc examples test"
+
+RDEPEND=">=net-misc/curl-7.56.0[ssl]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( app-doc/doxygen[dot] )
+ test? ( dev-cpp/catch )
+"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_EXAMPLES=NO
+ -DWITH_TESTS="$(usex test)"
+ -DWITH_DOC="$(usex doc)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ BUILD_DIR="${BUILD_DIR}/tests" cmake_src_test
+}
+
+src_install() {
+ if use doc; then
+ HTML_DOCS="${BUILD_DIR}/doc/html/*"
+ fi
+
+ if use examples; then
+ docinto examples
+ for file in examples/*.cpp; do
+ dodoc ${file}
+ done
+ fi
+
+ cmake_src_install
+}
diff --git a/dev-cpp/mastodonpp/mastodonpp-9999.ebuild b/dev-cpp/mastodonpp/mastodonpp-9999.ebuild
new file mode 100644
index 000000000000..60770d518b57
--- /dev/null
+++ b/dev-cpp/mastodonpp/mastodonpp-9999.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+[[ "${PV}" == "9999" ]] && inherit git-r3
+
+DESCRIPTION="C++ wrapper for the Mastodon and Pleroma APIs."
+HOMEPAGE="https://schlomp.space/tastytea/mastodonpp"
+if [[ "${PV}" != "9999" ]]; then
+ SRC_URI="https://schlomp.space/tastytea/mastodonpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}"
+ KEYWORDS="~amd64"
+else
+ EGIT_REPO_URI="https://schlomp.space/tastytea/mastodonpp.git"
+fi
+
+LICENSE="AGPL-3"
+SLOT="0"
+IUSE="doc examples test"
+
+RDEPEND=">=net-misc/curl-7.56.0[ssl]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( app-doc/doxygen[dot] )
+ test? ( dev-cpp/catch )
+"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_EXAMPLES=NO
+ -DWITH_TESTS="$(usex test)"
+ -DWITH_DOC="$(usex doc)"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ BUILD_DIR="${BUILD_DIR}/tests" cmake_src_test
+}
+
+src_install() {
+ if use doc; then
+ HTML_DOCS="${BUILD_DIR}/doc/html/*"
+ fi
+
+ if use examples; then
+ docinto examples
+ for file in examples/*.cpp; do
+ dodoc ${file}
+ done
+ fi
+
+ cmake_src_install
+}
diff --git a/dev-cpp/mastodonpp/metadata.xml b/dev-cpp/mastodonpp/metadata.xml
new file mode 100644
index 000000000000..a4a476a46d2a
--- /dev/null
+++ b/dev-cpp/mastodonpp/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>tastytea</name>
+ <email>tastytea@tastytea.de</email>
+ </maintainer>
+ <doc>https://doc.schlomp.space/mastodonpp/</doc>
+ <bugs-to>https://schlomp.space/tastytea/mastodonpp/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/muParserX/Manifest b/dev-cpp/muParserX/Manifest
new file mode 100644
index 000000000000..815473a36ead
--- /dev/null
+++ b/dev-cpp/muParserX/Manifest
@@ -0,0 +1 @@
+DIST muParserX-4.0.11.tar.gz 215824 BLAKE2B f077fee44d4b67b02a0c559ce492b27107b0f5294eca7266e968c852e1e2503a4f5fc4d32b07e5c6ebca8ab95d7f30cdacd257439f70a7943c5ad22d111139c9 SHA512 67846a91b57e41731a656cfee68effdd9166e738108764be5d3080854d8a01bedbeacaaade7bee11c6b5f83019abddeca3b2c9acdfbb48629da6d9b92c79c7af
diff --git a/dev-cpp/muParserX/metadata.xml b/dev-cpp/muParserX/metadata.xml
new file mode 100644
index 000000000000..39f695883525
--- /dev/null
+++ b/dev-cpp/muParserX/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ The evaluation of a mathematical expression is a standard task required in many applications. It can be solved by either using a standard math expression parser such as muparser or by embedding a scripting language such as Lua. There are however some limitations: Although muparser is pretty fast it will only work with scalar values and although Lua is very flexible it does neither support binary operators for arrays nor complex numbers. So if you need a math expression parser with support for arrays, matrices and strings muparserx may be able to help you.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/muParserX/muParserX-4.0.11.ebuild b/dev-cpp/muParserX/muParserX-4.0.11.ebuild
new file mode 100644
index 000000000000..373e92ac6637
--- /dev/null
+++ b/dev-cpp/muParserX/muParserX-4.0.11.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Parsing Expressions with Strings, Complex Numbers, Vectors, Matrices and more"
+HOMEPAGE="https://beltoforion.de/en/muparser/"
+SRC_URI="https://github.com/beltoforion/muparserx/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+S="${WORKDIR}"/muparserx-${PV}
diff --git a/dev-cpp/parallel-hashmap/Manifest b/dev-cpp/parallel-hashmap/Manifest
new file mode 100644
index 000000000000..198c393021fe
--- /dev/null
+++ b/dev-cpp/parallel-hashmap/Manifest
@@ -0,0 +1,2 @@
+DIST parallel-hashmap-1.33.tar.gz 2038996 BLAKE2B b704a0230bd6d15e8a3a1aa11bec456183119d5104e1ac191e556edae1c0b0d2a27c5b52c84cae167cd09a90f4fc43f817c21d64d6b288a70596b6495ee872e6 SHA512 287f098229153d925632e68e3cdbabfae0ea0ab8864089e4c0553a166c6079ca82ed5246ba53afd2a2917abcf06f37bc18f098e721f5f3b8def4d2d8c1c8c745
+DIST parallel-hashmap-1.34.tar.gz 2043028 BLAKE2B 30629288656a22cfd56da9485458f604487383cc5951e230a833b182cbbcc706b78d0b8a45fb76c4fca6da930f49cdb79b2ca63926ca8cd60cc7445b58c8edbd SHA512 3747422e80406aa77b009adee3c16325640dd1044560882fb881dac5ef4109f7d165d26ed7e64002c9285275f95962725ce20c918da12c0c113999c8ca3c7429
diff --git a/dev-cpp/parallel-hashmap/metadata.xml b/dev-cpp/parallel-hashmap/metadata.xml
new file mode 100644
index 000000000000..3183d009f6a5
--- /dev/null
+++ b/dev-cpp/parallel-hashmap/metadata.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+Overview
+
+This repository aims to provide a set of excellent hash map implementations, as well as a btree alternative to std::map and std::set, with the following characteristics:
+
+Header only: nothing to build, just copy the parallel_hashmap directory to your project and you are good to go.
+
+drop-in replacement for std::unordered_map, std::unordered_set, std::map and std::set
+
+Compiler with C++11 support required, C++14 and C++17 APIs are provided (such as try_emplace)
+
+Very efficient, significantly faster than your compiler's unordered map/set or Boost's, or than sparsepp
+
+Memory friendly: low memory usage, although a little higher than sparsepp
+
+Supports heterogeneous lookup
+
+Easy to forward declare: just include phmap_fwd_decl.h in your header files to forward declare Parallel Hashmap containers [note: this does not work currently for hash maps with pointer keys]
+
+Dump/load feature: when a flat hash map stores data that is std::trivially_copyable, the table can be dumped to disk and restored as a single array, very efficiently, and without requiring any hash computation. This is typically about 10 times faster than doing element-wise serialization to disk, but it will use 10% to 60% extra disk space. See examples/serialize.cc. (flat hash map/set only)
+
+Automatic support for boost's hash_value() method for providing the hash function (see examples/hash_value.h). Also default hash support for std::pair and std::tuple.
+
+natvis visualization support in Visual Studio (hash map/set only)
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/greg7mdp/parallel-hashmap/issues</bugs-to>
+ <remote-id type="github">greg7mdp/parallel-hashmap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/parallel-hashmap/parallel-hashmap-1.33.ebuild b/dev-cpp/parallel-hashmap/parallel-hashmap-1.33.ebuild
new file mode 100644
index 000000000000..e2824c2e1c3d
--- /dev/null
+++ b/dev-cpp/parallel-hashmap/parallel-hashmap-1.33.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+DESCRIPTION="Family of header-only, fast and memory-friendly hashmap and btree containers"
+HOMEPAGE="
+ https://greg7mdp.github.io/parallel-hashmap/
+ https://github.com/greg7mdp/parallel-hashmap
+"
+SRC_URI="https://github.com/greg7mdp/parallel-hashmap/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+#TODO: explore the various cmake options (if any)
+#TODO: tests
+
+src_compile() {
+ cmake_src_compile
+}
+
+src_install() {
+ cmake_src_install
+ if use examples ; then
+ dodoc -r examples
+ docompress -x "/usr/share/doc/${PF}/examples"
+ fi
+}
diff --git a/dev-cpp/parallel-hashmap/parallel-hashmap-1.34.ebuild b/dev-cpp/parallel-hashmap/parallel-hashmap-1.34.ebuild
new file mode 100644
index 000000000000..a4119b6dccaa
--- /dev/null
+++ b/dev-cpp/parallel-hashmap/parallel-hashmap-1.34.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Family of header-only, fast and memory-friendly hashmap and btree containers"
+HOMEPAGE="
+ https://greg7mdp.github.io/parallel-hashmap/
+ https://github.com/greg7mdp/parallel-hashmap
+"
+SRC_URI="https://github.com/greg7mdp/parallel-hashmap/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples test"
+
+CDEPEND="dev-libs/cereal"
+DEPEND="test? ( ${CDEPEND} )"
+RDEPEND="${CDEPEND}"
+
+RESTRICT="!test? ( test )"
+
+src_compile() {
+ mycmakeargs=(
+ PHMAP_BUILD_EXAMPLES=$(usex examples)
+ PHMAP_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_compile
+}
+
+src_install() {
+ cmake_src_install
+ if use examples ; then
+ dodoc -r examples
+ docompress -x "/usr/share/doc/${PF}/examples"
+ fi
+}
diff --git a/dev-cpp/pcg-cpp/Manifest b/dev-cpp/pcg-cpp/Manifest
new file mode 100644
index 000000000000..f6fbafada829
--- /dev/null
+++ b/dev-cpp/pcg-cpp/Manifest
@@ -0,0 +1 @@
+DIST pcg-cpp-0.98.1_p20210406.tar.gz 78228 BLAKE2B 5cb1ded0bbc04a147975f3a40ca8e50becbd50e1d325a1f0bdff37bb2030bc15063601650a6bf8db252688e5f80cb950e14ebc14f2c9be37b6415be9074aa258 SHA512 e96e40bf63ddb29ebf8679ddaabbf5dc934173f38cb5ed97c5efe068a742a715daa05e38d9ae322a10fa538c8ec7a271622bfb6569256a471fe5e1c9a83f9e3f
diff --git a/dev-cpp/pcg-cpp/files/pcg-cpp.pc b/dev-cpp/pcg-cpp/files/pcg-cpp.pc
new file mode 100644
index 000000000000..b289efc01585
--- /dev/null
+++ b/dev-cpp/pcg-cpp/files/pcg-cpp.pc
@@ -0,0 +1,9 @@
+prefix=@PREFIX@
+exec_prefix=${prefix}
+includedir=${prefix}/include
+
+Name: pcg-cpp
+Description: Family of better random number generators
+URL: https://www.pcg-random.org
+Version: 0.98.1
+Cflags: -I${includedir}
diff --git a/dev-cpp/pcg-cpp/metadata.xml b/dev-cpp/pcg-cpp/metadata.xml
new file mode 100644
index 000000000000..48ce5f492165
--- /dev/null
+++ b/dev-cpp/pcg-cpp/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">mneme/pcg-cpp</remote-id>
+ <bugs-to>https://github.com/imneme/pcg-cpp/issues</bugs-to>
+ <doc>https://www.pcg-random.org/using-pcg-cpp.html</doc>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/pcg-cpp/pcg-cpp-0.98.1_p20210406-r1.ebuild b/dev-cpp/pcg-cpp/pcg-cpp-0.98.1_p20210406-r1.ebuild
new file mode 100644
index 000000000000..39d2d740a3dd
--- /dev/null
+++ b/dev-cpp/pcg-cpp/pcg-cpp-0.98.1_p20210406-r1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+COMMIT="ffd522e7188bef30a00c74dc7eb9de5faff90092"
+
+DESCRIPTION="Family of better random number generators"
+HOMEPAGE="https://www.pcg-random.org https://github.com/imneme/pcg-cpp"
+SRC_URI="https://github.com/imneme/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+# header-only library
+src_compile() {
+ tc-export CXX
+ if use test ; then
+ cd test-high || die
+ emake
+ fi
+}
+
+src_test() {
+ cd test-high || die
+ sh ./run-tests.sh || die
+}
+
+src_install() {
+ doheader include/*
+
+ docompress -x /usr/share/doc/${PF}/sample
+ use examples && dodoc -r sample
+ einstalldocs
+
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins "${FILESDIR}"/pcg-cpp.pc
+ sed -e "s:@PREFIX@:${EPREFIX}/usr:" \
+ -i "${ED}"/usr/$(get_libdir)/pkgconfig/pcg-cpp.pc || die
+}
diff --git a/dev-cpp/plog/Manifest b/dev-cpp/plog/Manifest
new file mode 100644
index 000000000000..405a87ab6e36
--- /dev/null
+++ b/dev-cpp/plog/Manifest
@@ -0,0 +1,2 @@
+DIST plog-1.1.5_p20200501.tar.gz 42321 BLAKE2B 18f4722fbd985abc3c0b14f9eeea6d5c6b0ee8d01b3433ee167a5510f4d661b70e067a11f4a60a0573b4eec3c264d9260dd6bba6f87103769684e4e3e06235ac SHA512 6b0322c61682295150ec5a856faf597ac78897d30314b265908cd9d6da2956b1b2d8562c90818332e42a41f129a3b35ec3d56f1163e7ac979aea617cc01e9c3f
+DIST plog-1.1.6.tar.gz 44556 BLAKE2B 411991bd5c0ec0d5d38633897256ba71a0bcecb3383e90483fa376b0b60801f5fdde1350fd6b1431818eec4bdc89fb250c66482720dffba71d5511f5ae5e436e SHA512 5240532df96144d5026d6f879b69f7d6f393ebc9122c6458c41076fd3db998565e45ed2ab4948f8c3cb59e08c0aad7695ee416f95b49fd70209cd937220cdf8b
diff --git a/dev-cpp/plog/metadata.xml b/dev-cpp/plog/metadata.xml
new file mode 100644
index 000000000000..e1a700334c38
--- /dev/null
+++ b/dev-cpp/plog/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/SergiusTheBest/plog/issues</bugs-to>
+ <remote-id type="github">SergiusTheBest/plog</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/plog/plog-1.1.5_p20200501.ebuild b/dev-cpp/plog/plog-1.1.5_p20200501.ebuild
new file mode 100644
index 000000000000..9b7b096c6e90
--- /dev/null
+++ b/dev-cpp/plog/plog-1.1.5_p20200501.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+COMMIT="fda4a26c26b2d1b2beb68d7b92b56950ec2b8ad2"
+
+DESCRIPTION="Portable, simple and extensible C++ logging library"
+HOMEPAGE="https://github.com/SergiusTheBest/plog"
+SRC_URI="https://github.com/SergiusTheBest/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+IUSE="examples"
+
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+src_install() {
+ doheader -r "include/${PN}"
+ dodoc README.md
+ insinto "/usr/share/${P}/samples"
+ use examples && doins -r samples/.
+}
diff --git a/dev-cpp/plog/plog-1.1.6.ebuild b/dev-cpp/plog/plog-1.1.6.ebuild
new file mode 100644
index 000000000000..0e9d992c0c46
--- /dev/null
+++ b/dev-cpp/plog/plog-1.1.6.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Portable, simple and extensible C++ logging library"
+HOMEPAGE="https://github.com/SergiusTheBest/plog"
+SRC_URI="https://github.com/SergiusTheBest/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MPL-2.0"
+SLOT="0"
+IUSE="examples"
+
+src_install() {
+ doheader -r "include/${PN}"
+ dodoc README.md
+ insinto "/usr/share/${P}/samples"
+ use examples && doins -r samples/.
+}
diff --git a/dev-cpp/qt-jdenticon/Manifest b/dev-cpp/qt-jdenticon/Manifest
new file mode 100644
index 000000000000..d9e190417430
--- /dev/null
+++ b/dev-cpp/qt-jdenticon/Manifest
@@ -0,0 +1,2 @@
+DIST qt-jdenticon-0.2.1.tar.gz 11590 BLAKE2B 0884fe3ab8f2e9f62c1592f96a311bec8992f6230bafe6a82f4fc67995fca4e2ac8677e22df3c69ecd9a9e3e35d6d0fb695d34aa69646c472cb78ec8c4cad4cc SHA512 22194dfbf4baf3cab4a4b51457a79538f9fdc62fc5a26c5492b76ce88c98b61c7cdd29dd42a3a886d9f755163ae9bd30f67cc5c3376e8c0a17e438e53b833740
+DIST qt-jdenticon-0.3.0.tar.gz 11021 BLAKE2B c4cbeba7848791b2386ac474ca7412b361ee949a126f10cdb523210a8415b436c365a3c056ca3fa9c196835f6bfc92b24a01f2906e62897b88af2e80a83d3bb3 SHA512 a3477ce8fd26de563c1397a07895dcd0ec8210c62fe82e808a8c322c298111c48570ce23df639d648d86a0627b455dc7d1772e985197351251d49abd461b8c23
diff --git a/dev-cpp/qt-jdenticon/metadata.xml b/dev-cpp/qt-jdenticon/metadata.xml
new file mode 100644
index 000000000000..cbc269df23a1
--- /dev/null
+++ b/dev-cpp/qt-jdenticon/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>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+ <longdescription lang="de">
+ It creates highly recognizable identicons from a hash. Identicons are
+ reproducible computer generated avatars.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/qt-jdenticon/qt-jdenticon-0.2.1.ebuild b/dev-cpp/qt-jdenticon/qt-jdenticon-0.2.1.ebuild
new file mode 100644
index 000000000000..f7916f42f21e
--- /dev/null
+++ b/dev-cpp/qt-jdenticon/qt-jdenticon-0.2.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qmake-utils
+
+DESCRIPTION="Qt5 / C++14 Port of Jdenticon"
+HOMEPAGE="https://github.com/Nheko-Reborn/qt-jdenticon"
+SRC_URI="https://github.com/Nheko-Reborn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-qt/qtgui
+"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ eqmake5
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install
+}
diff --git a/dev-cpp/qt-jdenticon/qt-jdenticon-0.3.0.ebuild b/dev-cpp/qt-jdenticon/qt-jdenticon-0.3.0.ebuild
new file mode 100644
index 000000000000..f7916f42f21e
--- /dev/null
+++ b/dev-cpp/qt-jdenticon/qt-jdenticon-0.3.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qmake-utils
+
+DESCRIPTION="Qt5 / C++14 Port of Jdenticon"
+HOMEPAGE="https://github.com/Nheko-Reborn/qt-jdenticon"
+SRC_URI="https://github.com/Nheko-Reborn/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-qt/qtgui
+"
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ eqmake5
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install
+}
diff --git a/dev-cpp/scitokens-cpp/Manifest b/dev-cpp/scitokens-cpp/Manifest
new file mode 100644
index 000000000000..c935ffbbef74
--- /dev/null
+++ b/dev-cpp/scitokens-cpp/Manifest
@@ -0,0 +1 @@
+DIST scitokens-cpp-0.7.0.tar.gz 98971 BLAKE2B 3429ff89b5a5202f9892fc68fc558c8b64276977a396981af845f05f8eb3f638602cedd30ea97f3ab5e6d188de7249247854dd6281aeb138d6e304b5aa006bb9 SHA512 1be8a84b7d88c10ab7336c3c6bc8d7e7be5feb3253ef618cba1f3ed908aad3fc480f30dd2a292aa2774ec88ceba370af3fa7d96f228cba3df8f78b6face6991b
diff --git a/dev-cpp/scitokens-cpp/files/scitokens-cpp-0.7.0-install-when-testing.patch b/dev-cpp/scitokens-cpp/files/scitokens-cpp-0.7.0-install-when-testing.patch
new file mode 100644
index 000000000000..c2b50081090e
--- /dev/null
+++ b/dev-cpp/scitokens-cpp/files/scitokens-cpp-0.7.0-install-when-testing.patch
@@ -0,0 +1,21 @@
+Bug: https://github.com/scitokens/scitokens-cpp/issues/82
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ec5c878..611afb1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -81,13 +81,12 @@ endif()
+ enable_testing()
+ add_subdirectory(test)
+
+-else()
++endif()
+ get_directory_property(TARGETS BUILDSYSTEM_TARGETS)
+ install(
+ TARGETS ${TARGETS}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} )
+-endif()
+
+ install(
+ FILES src/scitokens.h
diff --git a/dev-cpp/scitokens-cpp/metadata.xml b/dev-cpp/scitokens-cpp/metadata.xml
new file mode 100644
index 000000000000..6168f62c8daa
--- /dev/null
+++ b/dev-cpp/scitokens-cpp/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>o.freyermuth@googlemail.com</email>
+ <name>Oliver Freyermuth</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/scitokens/scitokens-cpp/issues</bugs-to>
+ <remote-id type="github">scitokens/scitokens-cpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/scitokens-cpp/scitokens-cpp-0.7.0.ebuild b/dev-cpp/scitokens-cpp/scitokens-cpp-0.7.0.ebuild
new file mode 100644
index 000000000000..59eac5e9b48a
--- /dev/null
+++ b/dev-cpp/scitokens-cpp/scitokens-cpp-0.7.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/scitokens/scitokens-cpp"
+else
+ SRC_URI="https://github.com/scitokens/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+DESCRIPTION=" A C++ implementation of the SciTokens library with a C library interface"
+HOMEPAGE="https://scitokens.org/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="test"
+
+DEPEND="${RDEPEND}
+ <dev-cpp/jwt-cpp-0.5.0
+ dev-db/sqlite
+ dev-libs/openssl
+ net-misc/curl
+ sys-apps/util-linux
+ test? ( dev-cpp/gtest )"
+BDEPEND="virtual/pkgconfig"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/"${PN}"-0.7.0-install-when-testing.patch
+)
+
+src_prepare() {
+ # Unbundle dev-cpp/gtest, dev-cpp/jwt-cpp
+ rm -rvf vendor
+ # Fix include path for picojson.
+ find src/ \( -name '*.cpp' -o -name '*.h' \) -type f -print0 | xargs -0 sed -r -e "s:picojson/picojson\.h:picojson.h:g" -i || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_UNITTESTS="$(usex test)"
+ -DEXTERNAL_GTEST=YES
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_run_in "${BUILD_DIR}" ctest --verbose || die
+}
diff --git a/dev-cpp/simpleini/Manifest b/dev-cpp/simpleini/Manifest
new file mode 100644
index 000000000000..34fc3f27a648
--- /dev/null
+++ b/dev-cpp/simpleini/Manifest
@@ -0,0 +1 @@
+DIST simpleini-4.17_p20210901.tar.gz 60224 BLAKE2B f9d33d7f170d939faf6188a9158b392276f2edc0d4d5a79a3dcd156e429c70cf3a7a9824c54357701ea09d093992b06f2fe66c9be0d29c72b8ceb5fa653bc6a8 SHA512 73270deeb13d7eb480ff3fa0a48501fc33e8459de2d2b1a082e42f5ec1e77c489ef896dde6395d197ee995dbac3cbe3234af7c28fad8e0ed6ab7f7e06575cc7e
diff --git a/dev-cpp/simpleini/metadata.xml b/dev-cpp/simpleini/metadata.xml
new file mode 100644
index 000000000000..9997c2e86256
--- /dev/null
+++ b/dev-cpp/simpleini/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>nex+b-g-o@nexadn.de</email>
+ <name>Adrian Schollmeyer</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/simpleini/simpleini-4.17_p20210901.ebuild b/dev-cpp/simpleini/simpleini-4.17_p20210901.ebuild
new file mode 100644
index 000000000000..11d24326fd8f
--- /dev/null
+++ b/dev-cpp/simpleini/simpleini-4.17_p20210901.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+SIMPLEINI_COMMIT="67156f64b3447ce1eb81d6be44d29132fb49b70a"
+
+DESCRIPTION="C++ library for reading/writing INI files"
+HOMEPAGE="https://github.com/brofield/simpleini"
+SRC_URI="https://github.com/brofield/simpleini/archive/${SIMPLEINI_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+BDEPEND=""
+
+S="${WORKDIR}/simpleini-${SIMPLEINI_COMMIT}"
+
+src_compile() {
+ $(tc-getCC) ${CFLAGS} -c ConvertUTF.c -o ConvertUTF.o || die
+ $(tc-getCC) -shared -fPIC ${LDFLAGS} ConvertUTF.o -o libsimpleini.so || die
+}
+
+src_install() {
+ einstalldocs
+ dolib.so libsimpleini.so
+
+ insinto /usr/include/simpleini
+ doins SimpleIni.h ConvertUTF.h
+}
diff --git a/dev-cpp/sprout/Manifest b/dev-cpp/sprout/Manifest
new file mode 100644
index 000000000000..9cb51303732e
--- /dev/null
+++ b/dev-cpp/sprout/Manifest
@@ -0,0 +1 @@
+DIST sprout-0_pre20190615.tar.gz 4997141 BLAKE2B bc7412a2c61c8f5fb5e37b0112c7f45e7ece1be3a5c02a4a72be4c39ab2297a9c75758b54dd81addc45d06c380f03c9c1976c588e67b1f0265486760ffd4b277 SHA512 b81c299842c48626a7fbedb5b70932623ddb128bd5c71115269253b2c82a331d4f5d5adeab24529be2c886d293de96c15c9641280b4eb31bd60379b284556900
diff --git a/dev-cpp/sprout/files/optional_binaries.patch b/dev-cpp/sprout/files/optional_binaries.patch
new file mode 100644
index 000000000000..df6641f0fb53
--- /dev/null
+++ b/dev-cpp/sprout/files/optional_binaries.patch
@@ -0,0 +1,12 @@
+diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
+index a68233bf..ef38b570 100644
+--- a/tools/CMakeLists.txt
++++ b/tools/CMakeLists.txt
+@@ -1 +1,6 @@
+-subdirs( compost darkroom )
++if (WITH_WAVCONV)
++ subdirs( compost )
++endif()
++if (WITH_TEXCONV)
++ subdirs( darkroom )
++endif()
diff --git a/dev-cpp/sprout/metadata.xml b/dev-cpp/sprout/metadata.xml
new file mode 100644
index 000000000000..ee5276f0c31f
--- /dev/null
+++ b/dev-cpp/sprout/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>m.santullo@posteo.net</email>
+ <name>Michele Santullo</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">bolero-MURAKAMI/Sprout</remote-id>
+ </upstream>
+ <use>
+ <flag name="texconv">Install texconv from subproject compost</flag>
+ <flag name="wavconv">Install texconv from subproject darkroom</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-cpp/sprout/sprout-0_pre20190615.ebuild b/dev-cpp/sprout/sprout-0_pre20190615.ebuild
new file mode 100644
index 000000000000..c54f91402282
--- /dev/null
+++ b/dev-cpp/sprout/sprout-0_pre20190615.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+COMMIT="6b5addba9face0a6403e66e7db2aa94d87387f61"
+
+inherit cmake
+
+DESCRIPTION="C++11/14 constexpr based Containers, Algorithms, Random numbers and others"
+HOMEPAGE="http://bolero-murakami.github.io/Sprout/"
+SRC_URI="https://github.com/bolero-MURAKAMI/Sprout/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/Sprout-${COMMIT}"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="test texconv wavconv"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-libs/boost:="
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/optional_binaries.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test ON OFF)
+ -DWITH_TEXCONV=$(usex texconv ON OFF)
+ -DWITH_WAVCONV=$(usex wavconv ON OFF)
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/tiny-dnn/Manifest b/dev-cpp/tiny-dnn/Manifest
new file mode 100644
index 000000000000..5cf90f42047c
--- /dev/null
+++ b/dev-cpp/tiny-dnn/Manifest
@@ -0,0 +1 @@
+DIST tiny-dnn-1.0.0_alpha3.tar.gz 12885646 BLAKE2B 85c0715ab6c692b77522487775e70b0db645528baed1830c83c9f44d2b67a5207e4f7ea1709b35c6a4217d287199549304e9be19f4a5cec9a1183b0b5dccc562 SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b
diff --git a/dev-cpp/tiny-dnn/files/tiny-dnn-add-sphinx-ext-autodoc-to-conf-py.patch b/dev-cpp/tiny-dnn/files/tiny-dnn-add-sphinx-ext-autodoc-to-conf-py.patch
new file mode 100644
index 000000000000..4fadeaa907c0
--- /dev/null
+++ b/dev-cpp/tiny-dnn/files/tiny-dnn-add-sphinx-ext-autodoc-to-conf-py.patch
@@ -0,0 +1,11 @@
+--- a/docs/conf.py
++++ b/docs/conf.py
+@@ -32,7 +32,7 @@
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+ # ones.
+ extensions = [
+- 'sphinx.ext.mathjax'
++ 'sphinx.ext.mathjax', 'sphinx.ext.autodoc'
+ ]
+
+ # Add any paths that contain templates here, relative to this directory.
diff --git a/dev-cpp/tiny-dnn/files/tiny-dnn-disable-gtest-download.patch b/dev-cpp/tiny-dnn/files/tiny-dnn-disable-gtest-download.patch
new file mode 100644
index 000000000000..40b65ed23dfc
--- /dev/null
+++ b/dev-cpp/tiny-dnn/files/tiny-dnn-disable-gtest-download.patch
@@ -0,0 +1,29 @@
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -2,17 +2,6 @@
+ enable_testing()
+
+
+-include(../cmake/DownloadProject/DownloadProject.cmake)
+-#set(gtest_disable_pthreads on) #TODO(randl): Windows?
+-download_project(
+- PROJ googletest
+- GIT_REPOSITORY https://github.com/google/googletest.git
+- GIT_TAG master
+- UPDATE_DISCONNECTED 1
+-)
+-
+-add_subdirectory(${googletest_SOURCE_DIR} ${googletest_BINARY_DIR})
+-
+ enable_testing()
+
+ # in ../googletest-src/googletest/CMakeLists.txt, BUILD_SHARED_LIBS is set to OFF
+@@ -29,7 +18,7 @@
+
+ add_executable(tiny_dnn_test test.cpp test_no_duplicate_symbols.cpp)
+ target_link_libraries(tiny_dnn_test
+- ${project_library_target_name} ${REQUIRED_LIBRARIES} gtest gmock)
++ ${project_library_target_name} ${REQUIRED_LIBRARIES})
+
+ add_test(all_tests tiny_dnn_test)
+ # workaround for https://gitlab.kitware.com/cmake/cmake/issues/8774
diff --git a/dev-cpp/tiny-dnn/metadata.xml b/dev-cpp/tiny-dnn/metadata.xml
new file mode 100644
index 000000000000..0bc53e1c06ed
--- /dev/null
+++ b/dev-cpp/tiny-dnn/metadata.xml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+Features
+
+Reasonably fast, without GPU:
+With TBB threading and SSE/AVX vectorization.
+98.8% accuracy on MNIST in 13 minutes training (@Core i7-3520M).
+Portable and header-only:
+Runs anywhere as long as you have a compiler which supports C++14.
+Just include tiny_dnn.h and write your model in C++. There is nothing to install.
+Easy to integrate with real applications:
+No output to stdout/stderr.
+A constant throughput (simple parallelization model, no garbage collection).
+Works without throwing an exception.
+Can import caffe's model.
+Simply implemented:
+A good library for learning neural networks.
+
+Supported networks
+
+layer-types
+
+core
+fully connected
+dropout
+linear operation
+zero padding
+power
+convolution
+convolutional
+average pooling
+max pooling
+deconvolutional
+average unpooling
+max unpooling
+normalization
+contrast normalization (only forward pass)
+batch normalization
+split/merge
+concat
+slice
+elementwise-add
+activation functions
+
+tanh
+asinh
+sigmoid
+softmax
+softplus
+softsign
+rectified linear(relu)
+leaky relu
+identity
+scaled tanh
+exponential linear units(elu)
+scaled exponential linear units (selu)
+loss functions
+
+cross-entropy
+mean squared error
+mean absolute error
+mean absolute error with epsilon range
+optimization algorithms
+
+stochastic gradient descent (with/without L2 normalization)
+momentum and Nesterov momentum
+adagrad
+rmsprop
+adam
+adamax
+ </longdescription>
+ <use>
+ <flag name="double-precision">Build tiny-dnn with double precision computations</flag>
+ <!--<flag name="libdnn">Build tiny-dnn with GreenteaLibDNN library support</flag>-->
+ <!--<flag name="nnpack">Build tiny-dnn with NNPACK library support</flag>-->
+ <flag name="opencl">Build tiny-dnn with OpenCL library support</flag>
+ <flag name="serialization">Build tiny-dnn with Serialization support</flag>
+ <flag name="tbb">Build tiny-dnn with TBB library support</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">tiny-dnn/tiny-dnn</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/tiny-dnn/tiny-dnn-1.0.0_alpha3.ebuild b/dev-cpp/tiny-dnn/tiny-dnn-1.0.0_alpha3.ebuild
new file mode 100644
index 000000000000..7337dbcab8b5
--- /dev/null
+++ b/dev-cpp/tiny-dnn/tiny-dnn-1.0.0_alpha3.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DOCS_BUILDER="sphinx"
+DOCS_DEPEND="dev-python/recommonmark"
+DOCS_DIR="docs"
+MYPV="${PV/_alpha/a}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit cmake python-any-r1 docs
+
+DESCRIPTION="header only, dependency-free deep learning framework in C++14"
+HOMEPAGE="https://github.com/tiny-dnn/tiny-dnn"
+SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/v${MYPV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MYPV}"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="cpu_flags_x86_avx cpu_flags_x86_avx2 cpu_flags_x86_sse double-precision opencl openmp +serialization tbb test"
+REQUIRED_USE="
+ ?? ( openmp tbb )
+"
+RESTRICT="test" #tests doesn't build ...
+
+# headers as rdepend because this is also an header only library
+RDEPEND="
+ opencl? (
+ dev-util/opencl-headers
+ virtual/opencl
+ )
+ serialization? ( dev-libs/cereal )
+ tbb? ( dev-cpp/tbb )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-add-sphinx-ext-autodoc-to-conf-py.patch"
+ "${FILESDIR}/${PN}-disable-gtest-download.patch"
+)
+
+src_prepare() {
+ #remove bundled cereal
+ rm -r cereal || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_DOCS=OFF
+ -DBUILD_EXAMPLES=OFF
+ -DCOVERALLS=OFF
+ -DUSE_LIBDNN=OFF
+ -DUSE_NNPACK=OFF
+
+ -DBUILD_TESTS=$(usex test)
+ -DUSE_AVX=$(usex cpu_flags_x86_avx)
+ -DUSE_AVX2=$(usex cpu_flags_x86_avx2)
+ -DUSE_DOUBLE=$(usex double-precision)
+ -DUSE_OMP=$(usex openmp)
+ -DUSE_OPENCL=$(usex opencl)
+ -DUSE_SERIALIZER=$(usex serialization)
+ -DUSE_SSE=$(usex cpu_flags_x86_sse)
+ -DUSE_TBB=$(usex tbb)
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ docs_compile
+}
+
+src_install() {
+ cmake_src_install
+ if use doc; then
+ dodoc -r _build/html
+ docompress -x "/usr/share/doc/${PF}/html"
+ fi
+}
diff --git a/dev-cpp/trantor/Manifest b/dev-cpp/trantor/Manifest
new file mode 100644
index 000000000000..879cfd20ad91
--- /dev/null
+++ b/dev-cpp/trantor/Manifest
@@ -0,0 +1,2 @@
+DIST trantor-1.5.4.tar.gz 104945 BLAKE2B bb4c038ef4b98eb127ddab313b9184af9829e1198d5bee295be49ae3d8f6941f11d8b3782056ebb7a779cb454f6e09daee464f597ce623ad1065df943ae47042 SHA512 adb98a78d254b19ec0866cf3bfa06011123fca4553e73702024ebe4cde6d95fb1de29d6894d89362339b82e1a6738b32ffc1a682cbb33ae94354df4a45cda8c7
+DIST trantor-1.5.5.tar.gz 106134 BLAKE2B 52af020c2b862532f5a473b7714654d5a1ea93415059aa3675e0c48d630a1b5ef43782a60ca1d09752c1ef9b90dfec19155af39673e25eb0c99dfc40a9dc0ddb SHA512 41068dcefcaf55908735126375b65a83a7d7085f30d5eb14e8d73fa255405ec77164c34b9ef0e5e6da3aeae3e66b9d57d4fca8901d63d4414bf8e857bd25dcd4
diff --git a/dev-cpp/trantor/metadata.xml b/dev-cpp/trantor/metadata.xml
new file mode 100644
index 000000000000..69cbec48c2f9
--- /dev/null
+++ b/dev-cpp/trantor/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+ <upstream>
+ <doc>https://trantor.docsforge.com/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/trantor/trantor-1.5.4.ebuild b/dev-cpp/trantor/trantor-1.5.4.ebuild
new file mode 100644
index 000000000000..ab1fc953c806
--- /dev/null
+++ b/dev-cpp/trantor/trantor-1.5.4.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Non-blocking I/O tcp network lib based on c++14/17"
+HOMEPAGE="https://github.com/an-tao/trantor"
+SRC_URI="https://github.com/an-tao/trantor/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="adns doc +ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ adns? ( net-dns/c-ares )
+ ssl? ( dev-libs/openssl )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ use ssl || sed -i '/find_package(OpenSSL)/d' CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local -a mycmakeargs=(
+ "-DBUILD_TRANTOR_SHARED=YES"
+ "-DBUILD_DOC=$(usex doc)"
+ "-DBUILD_TESTING=$(usex test)"
+ "-DBUILD_C-ARES=$(usex adns)"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ use doc && HTML_DOCS="${BUILD_DIR}/docs/trantor/html/*"
+
+ cmake_src_install
+}
diff --git a/dev-cpp/trantor/trantor-1.5.5.ebuild b/dev-cpp/trantor/trantor-1.5.5.ebuild
new file mode 100644
index 000000000000..fc1e115da02a
--- /dev/null
+++ b/dev-cpp/trantor/trantor-1.5.5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Non-blocking I/O tcp network lib based on c++14/17"
+HOMEPAGE="https://github.com/an-tao/trantor"
+SRC_URI="https://github.com/an-tao/trantor/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="adns doc +ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ adns? ( net-dns/c-ares )
+ ssl? ( dev-libs/openssl )
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+src_configure() {
+ local -a mycmakeargs=(
+ "-DBUILD_TRANTOR_SHARED=YES"
+ "-DBUILD_DOC=$(usex doc)"
+ "-DBUILD_TESTING=$(usex test)"
+ "-DBUILD_C-ARES=$(usex adns)"
+ "$(cmake_use_find_package ssl OpenSSL)"
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ use doc && HTML_DOCS="${BUILD_DIR}/docs/trantor/html/*"
+
+ cmake_src_install
+}
diff --git a/dev-cpp/vectorwrapper/Manifest b/dev-cpp/vectorwrapper/Manifest
new file mode 100644
index 000000000000..44828bc28d77
--- /dev/null
+++ b/dev-cpp/vectorwrapper/Manifest
@@ -0,0 +1 @@
+DIST vectorwrapper-1.1.2.tar.gz 1018302 BLAKE2B 8cb0ba9d5b5e0c39bf963ccbc399ad3dfdf4157397fb565484d38831c63dd4f69a4d18cf5b28e3b68d5531f783b72fa4c9197a63d385c82e56d7b03a4afec467 SHA512 8484700c02baff9ffd32b080e49892e67a3db38bdddc2b3cd5774b45fa5f68daa6e7892883b4744dbd6f003afec2e6d2354950b309d7fb8e76790d353fe3a4a8
diff --git a/dev-cpp/vectorwrapper/metadata.xml b/dev-cpp/vectorwrapper/metadata.xml
new file mode 100644
index 000000000000..a6cc5c98309e
--- /dev/null
+++ b/dev-cpp/vectorwrapper/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>m.santullo@posteo.net</email>
+ <name>Michele Santullo</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/vectorwrapper/vectorwrapper-1.1.2.ebuild b/dev-cpp/vectorwrapper/vectorwrapper-1.1.2.ebuild
new file mode 100644
index 000000000000..9c03f349c54f
--- /dev/null
+++ b/dev-cpp/vectorwrapper/vectorwrapper-1.1.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+DESCRIPTION="A template vector wrapper class for C++"
+HOMEPAGE="https://alarmpi.no-ip.org/gitan/King_DuckZ/vectorwrapper"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="http://alarmpi.no-ip.org/gitan/King_DuckZ/vectorwrapper.git"
+ inherit git-r3
+else
+ SRC_URI="https://alarmpi.no-ip.org/gitan/King_DuckZ/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+ S="${WORKDIR}"/"${PN}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ test? ( dev-cpp/gtest )"
+BDEPEND=""
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use test build_testing)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/vectorwrapper/vectorwrapper-9999.ebuild b/dev-cpp/vectorwrapper/vectorwrapper-9999.ebuild
new file mode 100644
index 000000000000..497b5a7710a8
--- /dev/null
+++ b/dev-cpp/vectorwrapper/vectorwrapper-9999.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit meson
+
+DESCRIPTION="A template vector wrapper class for C++"
+HOMEPAGE="https://alarmpi.no-ip.org/gitan/King_DuckZ/vectorwrapper"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="http://alarmpi.no-ip.org/gitan/King_DuckZ/vectorwrapper.git"
+ inherit git-r3
+else
+ SRC_URI="https://alarmpi.no-ip.org/gitan/King_DuckZ/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+ S="${WORKDIR}"/"${PN}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ test? ( dev-cpp/gtest )"
+BDEPEND=""
+
+src_configure() {
+ local emesonargs=(
+ $(meson_use test build_testing)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/vexcl/Manifest b/dev-cpp/vexcl/Manifest
new file mode 100644
index 000000000000..4d66981379cd
--- /dev/null
+++ b/dev-cpp/vexcl/Manifest
@@ -0,0 +1 @@
+DIST vexcl-1.4.2.tar.gz 412861 BLAKE2B 145948d2c2e6712a30542eca6690fe9f260cc9fe2064ffd01aaa89c3ddae1e0826206ffedfc362a6fb128f2909fc22948957f40cb45dc963d703abdff2ddd386 SHA512 b8bc759269025be21865178485015eb8489596be80c505d4699efdb517cb610a2d5fed10545ec7888f4cb4c7b3e2db5e3c2dd879c0d2fd95d2d0e59d1d3b790f
diff --git a/dev-cpp/vexcl/files/add-sphinx-ext-autodoc-to-conf-py.patch b/dev-cpp/vexcl/files/add-sphinx-ext-autodoc-to-conf-py.patch
new file mode 100644
index 000000000000..405376cf95d2
--- /dev/null
+++ b/dev-cpp/vexcl/files/add-sphinx-ext-autodoc-to-conf-py.patch
@@ -0,0 +1,11 @@
+--- a/docs/conf.py
++++ b/docs/conf.py
+@@ -45,7 +45,7 @@
+ # Add any Sphinx extension module names here, as strings. They can be
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
+ # ones.
+-extensions = ['breathe', 'sphinx.ext.mathjax',
++extensions = ['breathe', 'sphinx.ext.mathjax', 'sphinx.ext.autodoc',
+ 'matplotlib.sphinxext.plot_directive']
+
+ breathe_projects = {'VEXCL' : 'xml'}
diff --git a/dev-cpp/vexcl/files/vexcl-1.4.2-include-map.patch b/dev-cpp/vexcl/files/vexcl-1.4.2-include-map.patch
new file mode 100644
index 000000000000..e3fd08a16b3d
--- /dev/null
+++ b/dev-cpp/vexcl/files/vexcl-1.4.2-include-map.patch
@@ -0,0 +1,26 @@
+From 555a838850c96ab838a299255157fbe4fd4df2ee Mon Sep 17 00:00:00 2001
+From: Denis Demidov <dennis.demidov@gmail.com>
+Date: Mon, 4 Oct 2021 10:46:03 +0300
+Subject: [PATCH] Missing <map> include in backend/{opencl/compute}/filter.hpp
+
+Fixes #290
+--- a/vexcl/backend/compute/filter.hpp
++++ b/vexcl/backend/compute/filter.hpp
+@@ -35,6 +35,7 @@ THE SOFTWARE.
+ #include <fstream>
+ #include <string>
+ #include <vector>
++#include <map>
+ #include <functional>
+ #include <cstdlib>
+
+--- a/vexcl/backend/opencl/filter.hpp
++++ b/vexcl/backend/opencl/filter.hpp
+@@ -35,6 +35,7 @@ THE SOFTWARE.
+ #include <fstream>
+ #include <string>
+ #include <vector>
++#include <map>
+ #include <functional>
+ #include <cstdlib>
+
diff --git a/dev-cpp/vexcl/metadata.xml b/dev-cpp/vexcl/metadata.xml
new file mode 100644
index 000000000000..eba4a282bc97
--- /dev/null
+++ b/dev-cpp/vexcl/metadata.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription lang="en">VexCL is a vector expression template library for OpenCL/CUDA. It has been created for ease of GPGPU development with C++. VexCL strives to reduce amount of boilerplate code needed to develop GPGPU applications. The library provides convenient and intuitive notation for vector arithmetic, reduction, sparse matrix-vector products, etc. Multi-device and even multi-platform computations are supported. The source code of the library is distributed under very permissive MIT license.</longdescription>
+ <maintainer type="person">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <email>dennis.demidov@gmail.com</email>
+ <name>Denis Demidov</name>
+ </maintainer>
+ <remote-id type="github">ddemidov/vexcl</remote-id>
+ </upstream>
+ <use>
+ <flag name="amdsi">Implement workaround for AMD SI GPUs</flag>
+ <flag name="clhpp">Install the OpenCL C++ header provided by VexCL</flag>
+ <!--<flag name="clogs">Use clogs algorithms</flag>-->
+ <flag name="backend-compute">Use Boost.Compute algorithms</flag>
+ <!--<flag name="backend-cuda">Use CUDA as backend</flag>-->
+ <flag name="backend-jit">Use the JIT backend</flag>
+ <flag name="backend-opencl">Use OpenCL as backend</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-cpp/vexcl/vexcl-1.4.2-r2.ebuild b/dev-cpp/vexcl/vexcl-1.4.2-r2.ebuild
new file mode 100644
index 000000000000..cae5336e3a68
--- /dev/null
+++ b/dev-cpp/vexcl/vexcl-1.4.2-r2.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="sphinx"
+DOCS_DEPEND="
+ dev-python/breathe
+ dev-python/sphinx-bootstrap-theme
+"
+DOCS_DIR="docs"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit cmake python-any-r1 docs
+
+DESCRIPTION="VexCL - Vector expression template library for OpenCL"
+HOMEPAGE="https://github.com/ddemidov/vexcl"
+SRC_URI="https://github.com/ddemidov/vexcl/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE_BACKEND="
+ backend-compute
+ backend-jit
+ +backend-opencl
+"
+# backend-cuda
+IUSE="${IUSE_BACKEND} amdsi clhpp examples test" #clogs
+
+RDEPEND="
+ dev-libs/boost:=
+ backend-jit? ( virtual/opencl )
+ backend-opencl? ( virtual/opencl )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/add-sphinx-ext-autodoc-to-conf-py.patch"
+ "${FILESDIR}/${P}-include-map.patch"
+)
+REQUIRED_USE="
+ ^^ ( ${IUSE_BACKEND//+/} )
+"
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ sed -e "s|git_version()|\'${PV}\'|g" -i docs/conf.py || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local backend
+# use && backend="All"
+ use backend-compute && backend="Compute"
+# use backend-cuda && backend="CUDA"
+ use backend-jit && backend="JIT"
+ use backend-opencl && backend="OpenCL"
+
+ local mycmakeargs=(
+ -DVEXCL_BUILD_EXAMPLES=OFF
+
+ -DVEXCL_AMD_SI_WORKAROUND=$(usex amdsi)
+ -DVEXCL_BACKEND="${backend}"
+ -DVEXCL_BUILD_TESTS=$(usex test)
+ -DVEXCL_INSTALL_CL_HPP=$(usex clhpp)
+ )
+# -DVEXCL_CLOGS=$(usex clogs)
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ docs_compile
+}
+
+src_install() {
+ cmake_src_install
+ if use doc; then
+ dodoc -r docs/html
+ docompress -x "/usr/share/doc/${P}/html"
+ fi
+ if use examples; then
+ dodoc -r examples
+ docompress -x "/usr/share/doc/${P}/examples"
+ fi
+}
diff --git a/dev-cpp/wangle/Manifest b/dev-cpp/wangle/Manifest
new file mode 100644
index 000000000000..0b0c9d87b600
--- /dev/null
+++ b/dev-cpp/wangle/Manifest
@@ -0,0 +1 @@
+DIST wangle-2022.03.21.00.tar.gz 355164 BLAKE2B 876863bb5d0e5c7fd5f3408f9f2233b1995ef838b165bbb9f8772667e1ca5fa98f4ae5eb686e2ef94198bdb373daa2ce96720253f550a808369b8cca0ec6d10b SHA512 069fe7758ccb2f33665f53109047f2e0158e248fda8c760eddd978afd6980acbc6421db60721bf320deca557369377c8757f13c67f8685e3a98394324e75e72e
diff --git a/dev-cpp/wangle/metadata.xml b/dev-cpp/wangle/metadata.xml
new file mode 100644
index 000000000000..5b7146169a27
--- /dev/null
+++ b/dev-cpp/wangle/metadata.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</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-2022.03.21.00.ebuild b/dev-cpp/wangle/wangle-2022.03.21.00.ebuild
new file mode 100644
index 000000000000..1fe53a582c78
--- /dev/null
+++ b/dev-cpp/wangle/wangle-2022.03.21.00.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2021 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"
+KEYWORDS="~amd64"
+
+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
+"
+
+CMAKE_USE_DIR="${S}/wangle"
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIB_INSTALL_DIR=$(get_libdir)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/xdgpp/Manifest b/dev-cpp/xdgpp/Manifest
new file mode 100644
index 000000000000..83e5c069ef15
--- /dev/null
+++ b/dev-cpp/xdgpp/Manifest
@@ -0,0 +1,9 @@
+DIST xdgpp-01.patch 18645 BLAKE2B f91bbfb9117fa22a38003cf78d1e249ffcbb908433b7648c0444120495ed98929c99294805c79eab737c879d5a0e2d48ff09ea7ffee607ade36c23e810a07c6d SHA512 ee25622cd55c9f06b6e41b83d9853f96b88f82508c70fa57c35c010d8ff4f070a62b958c296bef68e5cdef0b887a3ef998556e2c1b0281fd9dc2b20999e4099e
+DIST xdgpp-02.patch 1686 BLAKE2B 0dd3f836056009f51ca4fde5f17d74ebb9f90d4d564e9af6d7cd8e561251f31021c0414f01f253e2355dc0079929b4626daa8189294b4a48144d4127e3549a02 SHA512 9341eb4994a4705eebcce1793d5a5a2ed4e5031a7ee535b30f9ccfab153f04c13bf50f7f318f2bcda027a9aebab799888310e5192e1925de83bc8606003495d0
+DIST xdgpp-03.patch 2242 BLAKE2B af4ccd6c023fe17b8cf69514915e5f29581528dee3a971b9c49796fc16a67da8c0bb1a042a65970a4e0e98341bf7bada6236325df78f324d520bc3c3c9ee2731 SHA512 6dc7dd203957f6c9bf33dc387af293edb01c29639d21eee2757da9c0f3da1f60113cd4eb088f2c96bf7f2d528b6ad1056abe495b2bfd27f516c9050b0034f648
+DIST xdgpp-04.patch 941 BLAKE2B 276192f42ae1dc85a09a6b894b93fc2add1c6438b8696f8adb5fd2a55e2ce60daf97310e577d60fb779ab60863bcc41b0f18ce8e4ac13e61dd65db684287fc50 SHA512 1f55e78237945226743b862899fbce20ff88261e3d51eabd049c093f6780b5b14a159d2193caade7a8c5f048f3c9f082566146c1812b499280717c5c6afd9f46
+DIST xdgpp-05.patch 1468 BLAKE2B f2f350c0c602f00d1703fb7910f1d9c8d460aecdbfbdc50119ab66ba001888388b41a0f8097c09dd4fa6f8b903cbd52534d0c9f1ef0813f6679533bb734c4649 SHA512 79a0b7fb8c9ad289ef5a7d6b358c84f3f99cfb42f75a3fd8582a17dc6230a14238e52378fa5861963d5a1a5d6b1fbf740b3011c560d96d6b141ea57f38ee016b
+DIST xdgpp-06.patch 1554 BLAKE2B 317ba86d06c3bd6c423f6a3d15e0ee9e0c58a50f9bdf00c38282db381e299a4ee6f3fb32fa7f393cf6480c6bb3427c230997c31f1ae07cad22cea27d5e1ceb54 SHA512 e5c85c67bd82cd5f2243869bbdc5315e98e93c1797823733f279136e1ee78acd326ea4046199d7cc3916d074a042c74135f0cf7d9a7031a99dd40cc2a6159b6e
+DIST xdgpp-07.patch 783 BLAKE2B 1754e87fa6abb54f4a501ab5961e8a4fcfdadcedaf943a08adee85860ffdbd35f3c96f484bad3d5a99d7c9fbc32f5225e4506072d86663ae04710ecc6c6bb89b SHA512 1eafdd63fd4dce0e86819c6a794530699fd357aeef2084b258bda673457b17d42356d183a73fce45474a5363664c1b9d360e86735754f8a43f85adaaa8d07673
+DIST xdgpp-08.patch 776 BLAKE2B ca3ad59674c3b37d803881701114bb1960ab39b5e28faba50d5dfaced0c9669c30f16039d4389a059ca8985e4af88ab860da0ace758959fb74b463562b43dfdf SHA512 686a1b7da86356270fdb8f3d6f3455cea7410174124768a037770a050d4d2750fea9ca20317102a905ef1db2f09fb4fccb1c1d00e0dd8edab02b43899183b620
+DIST xdgpp-09.patch 1283 BLAKE2B 0a55ee1e9de425ffc09b7612f83df7c5242cc1997e9a0a8dd7607b423a6a22ace94e89bcdb3f9a6734d9737d7b8f004525f581e496a4451f2514d5a758f385c1 SHA512 ddf667ce44d29c683c22e6c808e90398dbd9b83ed0544d9032536eb2f4d1054d61c1b3af2234280292505dba526bfe6c069601564927c223184770e55aa1951d
diff --git a/dev-cpp/xdgpp/metadata.xml b/dev-cpp/xdgpp/metadata.xml
new file mode 100644
index 000000000000..6c0bdfd68210
--- /dev/null
+++ b/dev-cpp/xdgpp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/xdgpp/xdgpp-0_pre20201007.ebuild b/dev-cpp/xdgpp/xdgpp-0_pre20201007.ebuild
new file mode 100644
index 000000000000..2a9450649541
--- /dev/null
+++ b/dev-cpp/xdgpp/xdgpp-0_pre20201007.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="C++17 header-only implementation of the XDG Base Directory Specification"
+HOMEPAGE="https://sr.ht/~danyspin97/xdgpp/"
+SRC_URI="
+ https://git.sr.ht/~danyspin97/xdgpp/commit/d41f2b8189619f27aca1b6f1bf7b1ef4af8bb482.patch -> ${PN}-01.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/3ca427d179412892a111b879a4253b146ba94b0c.patch -> ${PN}-02.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/0067fd493a92eb83dba701f010673509e0739f90.patch -> ${PN}-03.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/64af46f747c0d341f02bc5940b51676a58edf805.patch -> ${PN}-04.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/3fc23f3bdafb3c6257550899c0ee961a3dde4ead.patch -> ${PN}-05.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/fe313459e66daf6a07eeaeb04f4af8026b00d17a.patch -> ${PN}-06.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/8876042883b2e78382c0d4ba945a6d254f860728.patch -> ${PN}-07.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/04e34105c5e227ee061ee592cf4d75ef8a33f716.patch -> ${PN}-08.patch
+ https://git.sr.ht/~danyspin97/xdgpp/commit/f01f810714443d0f10c333d4d1d9c0383be41375.patch -> ${PN}-09.patch
+"
+S="${WORKDIR}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="dev-cpp/catch:0"
+DEPEND="${RDEPEND}"
+
+RESTRICT="!test? ( test )"
+PATCHES=(
+ "${DISTDIR}/${PN}-01.patch"
+ "${DISTDIR}/${PN}-02.patch"
+ "${DISTDIR}/${PN}-03.patch"
+ "${DISTDIR}/${PN}-04.patch"
+ "${DISTDIR}/${PN}-05.patch"
+ "${DISTDIR}/${PN}-06.patch"
+ "${DISTDIR}/${PN}-07.patch"
+ "${DISTDIR}/${PN}-08.patch"
+ "${DISTDIR}/${PN}-09.patch"
+)
+
+src_install() {
+ doheader xdg.hpp
+ dodoc README.md
+}
+
+src_test() {
+ emake test
+}