summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/abseil-cpp/Manifest4
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20200225.2-r1.ebuild60
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20200923.3.ebuild1
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20210324.2.ebuild2
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20211102.0.ebuild (renamed from dev-cpp/abseil-cpp/abseil-cpp-20210324.1.ebuild)23
-rw-r--r--dev-cpp/abseil-cpp/files/abseil-cpp-20210324.1-glibc-2.34.patch14
-rw-r--r--dev-cpp/abseil-cpp/files/include_limits.patch10
-rw-r--r--dev-cpp/aixlog/aixlog-1.5.0.ebuild4
-rw-r--r--dev-cpp/asio/Manifest1
-rw-r--r--dev-cpp/asio/asio-1.20.0.ebuild2
-rw-r--r--dev-cpp/asio/asio-1.21.0.ebuild49
-rw-r--r--dev-cpp/atkmm/atkmm-2.28.2.ebuild2
-rw-r--r--dev-cpp/atkmm/atkmm-2.36.1.ebuild2
-rw-r--r--dev-cpp/benchmark/Manifest1
-rw-r--r--dev-cpp/benchmark/benchmark-1.5.6.ebuild4
-rw-r--r--dev-cpp/benchmark/benchmark-1.6.0.ebuild4
-rw-r--r--dev-cpp/benchmark/benchmark-1.6.1.ebuild36
-rw-r--r--dev-cpp/benchmark/metadata.xml3
-rw-r--r--dev-cpp/cairomm/cairomm-1.16.1.ebuild6
-rw-r--r--dev-cpp/catch/Manifest4
-rw-r--r--dev-cpp/catch/catch-1.12.2-r1.ebuild (renamed from dev-cpp/catch/catch-1.12.2.ebuild)14
-rw-r--r--dev-cpp/catch/catch-1.9999.ebuild8
-rw-r--r--dev-cpp/catch/catch-2.13.7.ebuild (renamed from dev-cpp/catch/catch-2.13.6.ebuild)10
-rw-r--r--dev-cpp/catch/catch-2.13.8.ebuild (renamed from dev-cpp/catch/catch-2.13.4.ebuild)12
-rw-r--r--dev-cpp/catch/catch-9999.ebuild13
-rw-r--r--dev-cpp/catch/files/catch-1.12.2-glibc-2.34-sigstksz.patch67
-rw-r--r--dev-cpp/cpp-hocon/cpp-hocon-0.3.0-r1.ebuild40
-rw-r--r--dev-cpp/cpp-hocon/files/cpp-hocon-0.3.0-use-system-catch.patch51
-rw-r--r--dev-cpp/cpp-taskflow/cpp-taskflow-3.2.0.ebuild20
-rw-r--r--dev-cpp/cpp-taskflow/cpp-taskflow-9999.ebuild44
-rw-r--r--dev-cpp/doctest/Manifest2
-rw-r--r--dev-cpp/doctest/doctest-2.4.6.ebuild4
-rw-r--r--dev-cpp/doctest/doctest-2.4.7.ebuild23
-rw-r--r--dev-cpp/doctest/doctest-2.4.8.ebuild23
-rw-r--r--dev-cpp/doctest/metadata.xml2
-rw-r--r--dev-cpp/eigen/Manifest2
-rw-r--r--dev-cpp/eigen/eigen-3.3.7-r1.ebuild98
-rw-r--r--dev-cpp/eigen/eigen-3.3.9.ebuild107
-rw-r--r--dev-cpp/eigen/eigen-3.4.0-r1.ebuild3
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch15
-rw-r--r--dev-cpp/elfio/Manifest1
-rw-r--r--dev-cpp/elfio/elfio-3.9.ebuild27
-rw-r--r--dev-cpp/elfio/metadata.xml (renamed from dev-cpp/rttr/metadata.xml)7
-rw-r--r--dev-cpp/glibmm/Manifest5
-rw-r--r--dev-cpp/glibmm/glibmm-2.66.2.ebuild (renamed from dev-cpp/glibmm/glibmm-2.66.1.ebuild)6
-rw-r--r--dev-cpp/glibmm/glibmm-2.68.2.ebuild52
-rw-r--r--dev-cpp/glibmm/glibmm-2.70.0.ebuild (renamed from dev-cpp/glibmm/glibmm-2.68.1.ebuild)6
-rw-r--r--dev-cpp/gstreamermm/gstreamermm-1.10.0-r1.ebuild (renamed from dev-cpp/gstreamermm/gstreamermm-1.10.0.ebuild)2
-rw-r--r--dev-cpp/gtest/gtest-1.11.0.ebuild2
-rw-r--r--dev-cpp/gtkmm/Manifest1
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.24.5.ebuild2
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.2.0.ebuild4
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.4.0.ebuild52
-rw-r--r--dev-cpp/gulrak-filesystem/Manifest1
-rw-r--r--dev-cpp/gulrak-filesystem/gulrak-filesystem-1.5.10.ebuild35
-rw-r--r--dev-cpp/gulrak-filesystem/metadata.xml11
-rw-r--r--dev-cpp/json11/json11-1.0.0.ebuild4
-rw-r--r--dev-cpp/json11/metadata.xml2
-rw-r--r--dev-cpp/kokkos/kokkos-3.0.00-r1.ebuild (renamed from dev-cpp/kokkos/kokkos-3.0.00.ebuild)4
-rw-r--r--dev-cpp/kokkos/kokkos-3.1.01-r1.ebuild (renamed from dev-cpp/kokkos/kokkos-3.1.01.ebuild)15
-rw-r--r--dev-cpp/libglademm/libglademm-2.6.7-r3.ebuild (renamed from dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild)33
-rw-r--r--dev-cpp/libjson-rpc-cpp/Manifest1
-rw-r--r--dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.4.0.ebuild56
-rw-r--r--dev-cpp/libxmlpp/libxmlpp-2.40.1-r2.ebuild (renamed from dev-cpp/libxmlpp/libxmlpp-2.40.1-r1.ebuild)11
-rw-r--r--dev-cpp/lucene++/lucene++-3.0.7-r3.ebuild (renamed from dev-cpp/lucene++/lucene++-3.0.7-r2.ebuild)4
-rw-r--r--dev-cpp/ms-gsl/ms-gsl-3.1.0.ebuild4
-rw-r--r--dev-cpp/muParser/Manifest1
-rw-r--r--dev-cpp/muParser/files/muParser-2.3-export-cmake.patch405
-rw-r--r--dev-cpp/muParser/muParser-2.2.6.1.ebuild2
-rw-r--r--dev-cpp/muParser/muParser-2.3.2-r1.ebuild35
-rw-r--r--dev-cpp/nlohmann_json/Manifest1
-rw-r--r--dev-cpp/nlohmann_json/nlohmann_json-3.10.5.ebuild59
-rw-r--r--dev-cpp/notcurses/Manifest4
-rw-r--r--dev-cpp/notcurses/notcurses-3.0.0.ebuild (renamed from dev-cpp/notcurses/notcurses-2.4.3.ebuild)5
-rw-r--r--dev-cpp/pangomm/Manifest2
-rw-r--r--dev-cpp/pangomm/pangomm-2.42.2-r1.ebuild (renamed from dev-cpp/pangomm/pangomm-2.42.2.ebuild)7
-rw-r--r--dev-cpp/pangomm/pangomm-2.46.2.ebuild40
-rw-r--r--dev-cpp/pangomm/pangomm-2.48.1.ebuild7
-rw-r--r--dev-cpp/pangomm/pangomm-2.50.0.ebuild40
-rw-r--r--dev-cpp/popl/popl-1.2.0.ebuild4
-rw-r--r--dev-cpp/prometheus-cpp/Manifest3
-rw-r--r--dev-cpp/prometheus-cpp/prometheus-cpp-0.12.2.ebuild41
-rw-r--r--dev-cpp/prometheus-cpp/prometheus-cpp-1.0.0.ebuild (renamed from dev-cpp/prometheus-cpp/prometheus-cpp-0.12.3.ebuild)2
-rw-r--r--dev-cpp/pystring/pystring-1.1.3-r1.ebuild2
-rw-r--r--dev-cpp/range-v3/range-v3-0.11.0.ebuild4
-rw-r--r--dev-cpp/rapidyaml/Manifest4
-rw-r--r--dev-cpp/rapidyaml/files/rapidyaml-0.3.0-libdir.patch9
-rw-r--r--dev-cpp/rapidyaml/files/rapidyaml-0.3.0-no-download.patch23
-rw-r--r--dev-cpp/rapidyaml/files/rapidyaml-0.3.0-system-gtest.patch8
-rw-r--r--dev-cpp/rapidyaml/files/rapidyaml-0.3.0-tests-no-install.patch18
-rw-r--r--dev-cpp/rapidyaml/metadata.xml12
-rw-r--r--dev-cpp/rapidyaml/rapidyaml-0.3.0.ebuild80
-rw-r--r--dev-cpp/robin-map/metadata.xml4
-rw-r--r--dev-cpp/rttr/Manifest1
-rw-r--r--dev-cpp/rttr/files/rttr-0.9.6-cmake.patch25
-rw-r--r--dev-cpp/rttr/files/rttr-0.9.6-permission.patch13
-rw-r--r--dev-cpp/rttr/files/rttr-0.9.6-tests.patch30
-rw-r--r--dev-cpp/rttr/files/rttr-0.9.6-werror.patch18
-rw-r--r--dev-cpp/rttr/rttr-0.9.6.ebuild36
-rw-r--r--dev-cpp/tbb/Manifest2
-rw-r--r--dev-cpp/tbb/files/tbb-2021.4.0-lto.patch249
-rw-r--r--dev-cpp/tbb/files/tbb-2021.4.0-missing-TBB_machine_fetchadd4.patch23
-rw-r--r--dev-cpp/tbb/files/tbb-2021.5.0-musl-deepbind.patch25
-rw-r--r--dev-cpp/tbb/files/tbb-2021.5.0-musl-mallinfo.patch32
-rw-r--r--dev-cpp/tbb/tbb-2021.4.0.ebuild39
-rw-r--r--dev-cpp/tbb/tbb-2021.5.0.ebuild43
-rw-r--r--dev-cpp/tclap/Manifest1
-rw-r--r--dev-cpp/tclap/tclap-1.2.2.ebuild4
-rw-r--r--dev-cpp/tclap/tclap-1.2.5.ebuild27
-rw-r--r--dev-cpp/termcolor/Manifest1
-rw-r--r--dev-cpp/termcolor/metadata.xml11
-rw-r--r--dev-cpp/termcolor/termcolor-2.0.0.ebuild29
-rw-r--r--dev-cpp/websocketpp/websocketpp-0.8.2.ebuild2
113 files changed, 1982 insertions, 589 deletions
diff --git a/dev-cpp/abseil-cpp/Manifest b/dev-cpp/abseil-cpp/Manifest
index ba08382d8e1..9eea1b17c07 100644
--- a/dev-cpp/abseil-cpp/Manifest
+++ b/dev-cpp/abseil-cpp/Manifest
@@ -1,5 +1,5 @@
-DIST abseil-cpp-20200225.2.tar.gz 1679650 BLAKE2B bbadb2b86fd390f51322e687526c72a3b13caff6391974462a1146cc563616ce479330336a489a71e27b143e7cbea6695fc12c91fb721185a5116b3a6c5506b1 SHA512 75a607dee825e83c10dcd5e509515461f1b12c4aca861e4739ac4d41357b8e893dbfbe33873aa5c05463dde0891dedd7535af2ec59f173de29488e1b1321b335
DIST abseil-cpp-20200923.3.tar.gz 1783980 BLAKE2B 66d46fd6aafe0bf0d3fccd8a4e0a72fb0545a405d9c92d36ffcb1cf791b6d0eb85fd55218f740ba34c05c7bc952ad1aeaa367963b1f540f03a4f510fd02cd6d5 SHA512 7d9e2bc001a397b983afe1e5ca4d779bd27d0d30fad7f44e564a675e228f2fc29c203ef89dd1b0ff4a1832c6d99ae7627c9103a0daa6cccb426472528109ef85
-DIST abseil-cpp-20210324.1.tar.gz 1774134 BLAKE2B 8dd42b3d60a38995eeeeb72ba8aaa367c3caff118d88069dba9df24b155318ffd6c4e289c263346899bf7fc0bf6e8332380407a8a93c77f8cade0e8e74743b84 SHA512 fe593ed98eeea5461abca95ebb9dd3f7e8eedaa15e009f776945fdbb6ed489c61966611c1c72558d2ccdd541b952a345e51885d522ff29542cbcc837cf565866
DIST abseil-cpp-20210324.2.tar.gz 1774172 BLAKE2B f33ebe830bcece41d76c4de8f514e32a2515be8a78b6cc7a8877ba72284be62649e345dea224976e78e8dcf7fd957e249c92f7c89e92ae44e984fe294df711fc SHA512 7b935f0f2787a81438f30072f2191138ce3c099e4b22addfbe8ebe579d906604bc6ab03f054d3d6917a08ef5cb7a4371c1a501a7dfbc15c50301261dbf5f6e27
+DIST abseil-cpp-20211102.0.tar.gz 1884080 BLAKE2B a148f3b7cc9516fbeacc25116032a956bfa3cce61b4294c226e826e1171d24c043ab199757a11fae3fec0bc307b2222773a6b4f4563b289f7565b0ce4f72318a SHA512 fed68aa434c02ec6faa9d1c81f1ad35b60ec024b44957e2e0ac31e6075e385c06a3e1b616afeb4bb7c2413191fd7827d82e1f9f0796b52ed21fb2c41dd9031cf
DIST gtest-1.10.0_p20200702.tar.gz 866900 BLAKE2B c162d47868583ba270675abe5df935b8f4b9a9c00dbdc80dd88afa7f2b98266640b32b2ea5e8f9f6d6227196b5d2f79dbfda4e9585106224e814cc1503cf777d SHA512 715d887b59b47d4691c7c90ef0cf0ffc3d1e758e500263c76b50fd506e90a9d1c390af745933cfe3f55e1edac5d72dccedef3cb9a50b71a5b796424471a3017b
+DIST gtest-1b18723e874b256c1e39378c6774a90701d70f7a.tar.gz 833195 BLAKE2B cfeb4fc1569529f8a08557330ab2c88db7703c4f2e8628d18b403f424342ad82b062edb8cc9c0dc122c453235ab327ea742a5ef12e49726e2fa2f60f5ea762d9 SHA512 cb90a54681e0be20a9a8c7a19f960a97cc567931308f4956ee142b86769c062fcf612b9635f5548009ee6d598ae0c1e83692151ec9f1ff1e409b89e158d8b954
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20200225.2-r1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20200225.2-r1.ebuild
deleted file mode 100644
index fe5a91286a0..00000000000
--- a/dev-cpp/abseil-cpp/abseil-cpp-20200225.2-r1.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit cmake flag-o-matic python-any-r1
-
-DESCRIPTION="Abseil Common Libraries (C++), LTS Branch"
-HOMEPAGE="https://abseil.io"
-SRC_URI="https://github.com/abseil/abseil-cpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0/${PV%%.*}"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="${DEPEND}"
-BDEPEND="${PYTHON_DEPS}"
-
-# requires source of gtest and other libs
-RESTRICT=test
-
-PATCHES=(
- "${FILESDIR}/${PN}-20200923-arm_no_crypto.patch"
- "${FILESDIR}/include_limits.patch"
-)
-
-src_prepare() {
- cmake_src_prepare
-
- # un-hardcode abseil compiler flags
- sed -i \
- -e '/"-maes",/d' \
- -e '/"-msse4.1",/d' \
- -e '/"-mfpu=neon"/d' \
- -e '/"-march=armv8-a+crypto"/d' \
- absl/copts/copts.py || die
-
- # now generate cmake files
- python_fix_shebang absl/copts/generate_copts.py
- absl/copts/generate_copts.py || die
-}
-
-src_configure() {
- if use arm || use arm64; then
- # bug #778926
- if [[ $($(tc-getCXX) ${CXXFLAGS} -E -P - <<<$'#if defined(__ARM_FEATURE_CRYPTO)\nHAVE_ARM_FEATURE_CRYPTO\n#endif') != *HAVE_ARM_FEATURE_CRYPTO* ]]; then
- append-cxxflags -DABSL_ARCH_ARM_NO_CRYPTO
- fi
- fi
-
- local mycmakeargs=(
- -DABSL_ENABLE_INSTALL=TRUE
- -DBUILD_SHARED_LIBS=TRUE
- )
- cmake_src_configure
-}
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20200923.3.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20200923.3.ebuild
index 40f5fbae8e2..788d8cd9c0a 100644
--- a/dev-cpp/abseil-cpp/abseil-cpp-20200923.3.ebuild
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20200923.3.ebuild
@@ -36,6 +36,7 @@ RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/${PN}-20200923-arm_no_crypto.patch"
+ "${FILESDIR}/${PN}-20210324.1-glibc-2.34.patch"
)
src_prepare() {
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20210324.2.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20210324.2.ebuild
index 18482a89b9b..af0821bbd99 100644
--- a/dev-cpp/abseil-cpp/abseil-cpp-20210324.2.ebuild
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20210324.2.ebuild
@@ -21,7 +21,7 @@ LICENSE="
test? ( BSD )
"
SLOT="0/${PV%%.*}"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
IUSE="test"
DEPEND=""
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20210324.1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20211102.0.ebuild
index 2414ecd661e..f50605a6fbc 100644
--- a/dev-cpp/abseil-cpp/abseil-cpp-20210324.1.ebuild
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20211102.0.ebuild
@@ -3,13 +3,14 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7,8,9} )
+PYTHON_COMPAT=( python3_{7..10} )
-inherit cmake flag-o-matic python-any-r1 toolchain-funcs
+inherit cmake python-any-r1
# yes, it needs SOURCE, not just installed one
-GTEST_COMMIT="aee0f9d9b5b87796ee8a0ab26b7587ec30e8858e"
-GTEST_FILE="gtest-1.10.0_p20200702.tar.gz"
+# and no, 1.11.0 is not enough
+GTEST_COMMIT="1b18723e874b256c1e39378c6774a90701d70f7a"
+GTEST_FILE="gtest-${GTEST_COMMIT}.tar.gz"
DESCRIPTION="Abseil Common Libraries (C++), LTS Branch"
HOMEPAGE="https://abseil.io"
@@ -21,7 +22,7 @@ LICENSE="
test? ( BSD )
"
SLOT="0/${PV%%.*}"
-KEYWORDS="amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 arm64 ppc64 ~riscv x86"
IUSE="test"
DEPEND=""
@@ -34,10 +35,6 @@ BDEPEND="
RESTRICT="!test? ( test )"
-PATCHES=(
- "${FILESDIR}/${PN}-20200923-arm_no_crypto.patch"
-)
-
src_prepare() {
cmake_src_prepare
@@ -60,17 +57,11 @@ src_prepare() {
}
src_configure() {
- if use arm || use arm64; then
- # bug #778926
- if [[ $($(tc-getCXX) ${CXXFLAGS} -E -P - <<<$'#if defined(__ARM_FEATURE_CRYPTO)\nHAVE_ARM_FEATURE_CRYPTO\n#endif') != *HAVE_ARM_FEATURE_CRYPTO* ]]; then
- append-cxxflags -DABSL_ARCH_ARM_NO_CRYPTO
- fi
- fi
-
local mycmakeargs=(
-DABSL_ENABLE_INSTALL=TRUE
-DABSL_LOCAL_GOOGLETEST_DIR="${WORKDIR}/googletest-${GTEST_COMMIT}"
-DCMAKE_CXX_STANDARD=17
+ -DABSL_PROPAGATE_CXX_STD=TRUE
$(usex test -DBUILD_TESTING=ON '') #intentional usex
)
cmake_src_configure
diff --git a/dev-cpp/abseil-cpp/files/abseil-cpp-20210324.1-glibc-2.34.patch b/dev-cpp/abseil-cpp/files/abseil-cpp-20210324.1-glibc-2.34.patch
new file mode 100644
index 00000000000..99b868d3101
--- /dev/null
+++ b/dev-cpp/abseil-cpp/files/abseil-cpp-20210324.1-glibc-2.34.patch
@@ -0,0 +1,14 @@
+https://bugs.gentoo.org/823990
+https://github.com/abseil/abseil-cpp/commit/a9831f1cbf93fb18dd951453635f488037454ce9.patch
+--- a/absl/debugging/failure_signal_handler.cc
++++ b/absl/debugging/failure_signal_handler.cc
+@@ -136,7 +136,8 @@ static bool SetupAlternateStackOnce() {
+ #else
+ const size_t page_mask = sysconf(_SC_PAGESIZE) - 1;
+ #endif
+- size_t stack_size = (std::max(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
++ size_t stack_size =
++ (std::max<size_t>(SIGSTKSZ, 65536) + page_mask) & ~page_mask;
+ #if defined(ABSL_HAVE_ADDRESS_SANITIZER) || \
+ defined(ABSL_HAVE_MEMORY_SANITIZER) || defined(ABSL_HAVE_THREAD_SANITIZER)
+ // Account for sanitizer instrumentation requiring additional stack space.
diff --git a/dev-cpp/abseil-cpp/files/include_limits.patch b/dev-cpp/abseil-cpp/files/include_limits.patch
deleted file mode 100644
index c64229db984..00000000000
--- a/dev-cpp/abseil-cpp/files/include_limits.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/absl/synchronization/internal/graphcycles.cc
-+++ b/absl/synchronization/internal/graphcycles.cc
-@@ -37,6 +37,7 @@
-
- #include <algorithm>
- #include <array>
-+#include <limits>
- #include "absl/base/internal/hide_ptr.h"
- #include "absl/base/internal/raw_logging.h"
- #include "absl/base/internal/spinlock.h"
diff --git a/dev-cpp/aixlog/aixlog-1.5.0.ebuild b/dev-cpp/aixlog/aixlog-1.5.0.ebuild
index bd6ee183403..17957bb3d65 100644
--- a/dev-cpp/aixlog/aixlog-1.5.0.ebuild
+++ b/dev-cpp/aixlog/aixlog-1.5.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,7 +15,7 @@ if [[ ${PV} == *9999 ]] ; then
EGIT_BRANCH="develop"
else
SRC_URI="https://github.com/badaix/aixlog/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
+ KEYWORDS="~amd64 ~riscv ~x86"
fi
LICENSE="MIT"
diff --git a/dev-cpp/asio/Manifest b/dev-cpp/asio/Manifest
index ccdb995c096..03ae280eb36 100644
--- a/dev-cpp/asio/Manifest
+++ b/dev-cpp/asio/Manifest
@@ -1,3 +1,4 @@
DIST asio-1.10.8.tar.bz2 1270332 BLAKE2B 97e4a6a7c8b4562f10af1d122e9b08c12d567fd0447d1951a907f47f77832dcd42df4cb9b5b392feaaa2ea7c79d8bedfcf12e3052957ec012d8bb6b4d1347eb5 SHA512 d870686d2b19bec9925c311f2f0fd370e9797bbad252176a80a998f9c322ecd502b5081826105712e7caf87c03c3e6b70a0e219019e5bff46077d6e8c3c6db09
DIST asio-1.19.2.tar.bz2 1842597 BLAKE2B b2236c33432984ab660eba4c93be32374bb49f688a1e6a0711d7bac322cc4a7f817db209278f216468c6a72b9d3dd564cf298e1f49f8098c3fd9aec7acd66eb7 SHA512 07f9c29d8f02090b4d4b6a1867bcc07a8e9f3388556dff787ca3ba143022eeb63bfac0b5bc264076fed4db3b2e5ec6b7ff0ebefde40ba4753c832032a72d54cc
DIST asio-1.20.0.tar.bz2 1845826 BLAKE2B a768dc0b9ae380bef07d674507f7571d0bc47e182cdde10b24cee246814874dd7739c523b071dfede61a12059f52e04d7bbd309a03d93070bc1dd4640c253c19 SHA512 6421960abd2cf0c205cc50e86adfe492bca2870b486328b4825dc0cefc9c40cdc085516d474c23e15a73f4c108c0e69add5fab6dbe594a1e53636c5c3027e4c5
+DIST asio-1.21.0.tar.bz2 1967398 BLAKE2B 95e0ba44910e7450e614011b487acac0cd292302c0f502ec678639b70af7e6f9b86ee2c50c7f7e3e3437ce4474323e44b5e371c08f3a9ed464ffb3f428de728b SHA512 62252b2d3ca4fb99579c5fe57bf64b700792198dd7fa45acb4af7f64e83494bade1885b848f9e364f4c42d9db025841324cbd9a0fd3fe45526e7e4be6f60f8c0
diff --git a/dev-cpp/asio/asio-1.20.0.ebuild b/dev-cpp/asio/asio-1.20.0.ebuild
index 0b91e779c0b..0e025f305ee 100644
--- a/dev-cpp/asio/asio-1.20.0.ebuild
+++ b/dev-cpp/asio/asio-1.20.0.ebuild
@@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${PN}/${P}.tar.bz2"
LICENSE="Boost-1.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/asio/asio-1.21.0.ebuild b/dev-cpp/asio/asio-1.21.0.ebuild
new file mode 100644
index 00000000000..0e025f305ee
--- /dev/null
+++ b/dev-cpp/asio/asio-1.21.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Asynchronous Network Library"
+HOMEPAGE="https://think-async.com https://github.com/chriskohlhoff/asio"
+SRC_URI="mirror://sourceforge/${PN}/${PN}/${P}.tar.bz2"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86"
+IUSE="doc examples test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ test? (
+ dev-libs/boost
+ dev-libs/openssl
+ )
+"
+
+src_prepare() {
+ default
+
+ if ! use test; then
+ # Don't build nor install any examples or unittests
+ # since we don't have a script to run them
+ cat > src/Makefile.in <<-EOF || die
+ all:
+
+ install:
+
+ clean:
+ EOF
+ fi
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( doc/. )
+ default
+
+ if use examples; then
+ # Get rid of the object files
+ emake clean
+ dodoc -r src/examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-cpp/atkmm/atkmm-2.28.2.ebuild b/dev-cpp/atkmm/atkmm-2.28.2.ebuild
index ffb10b24f7c..12cb0726d76 100644
--- a/dev-cpp/atkmm/atkmm-2.28.2.ebuild
+++ b/dev-cpp/atkmm/atkmm-2.28.2.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for the ATK library"
diff --git a/dev-cpp/atkmm/atkmm-2.36.1.ebuild b/dev-cpp/atkmm/atkmm-2.36.1.ebuild
index 6889038a2d5..c22677a95a1 100644
--- a/dev-cpp/atkmm/atkmm-2.36.1.ebuild
+++ b/dev-cpp/atkmm/atkmm-2.36.1.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for the ATK library"
diff --git a/dev-cpp/benchmark/Manifest b/dev-cpp/benchmark/Manifest
index fcd377803e1..d96cd79330b 100644
--- a/dev-cpp/benchmark/Manifest
+++ b/dev-cpp/benchmark/Manifest
@@ -1,2 +1,3 @@
DIST benchmark-1.5.6.tar.gz 177911 BLAKE2B ea4e98cb98471b2b8e2371109b96017bc483459dc924deaa1d9770b065de946ea2d69ca36098c27283f15370699f2475448af1e205cfca3d9c64408f08c202a9 SHA512 b3c1fd4407d660456ae51abd7c427460a2c7b029ab6344e21bb61d3ec84e3b60638b7a719655aa04fb9ca639b6371e553e9de18539aca8dd38c361b4c6522538
DIST benchmark-1.6.0.tar.gz 178527 BLAKE2B b31fdd2a00d80c63102ea81ed9d1392f243e0d6d67ebf7d1e1a3d20cf7702acc68a3ddd3edd6ccbcfe76c01438c492c15f4d0146689587ccf8a3dccd6043ed11 SHA512 83788f64322067cedca4e459dd2b4117a80d3dc480e1ce0a4d9c323827e13cb1969889a6049cd487dc28ecb0ff52c868a73492c738283ee1236e527b0ca8b11d
+DIST benchmark-1.6.1.tar.gz 184616 BLAKE2B bcbc69ae4c4f5f21ed8199f34faccf41a9b97d311aaeeba8cecb6acc47780c91d2cb41a1dadfe400accecd46f90f02211a219a0000739c122dc7398ae1fa76a7 SHA512 7d3e3baf5a2d92e9552ab5007c37253b3510ac269edf8922a2794ff3dfbd0bf5b4c519240d4577b1ec30ef9e8a64caa17a809054c3dc7f2b1bcd410596177d67
diff --git a/dev-cpp/benchmark/benchmark-1.5.6.ebuild b/dev-cpp/benchmark/benchmark-1.5.6.ebuild
index 447bfdaa52d..3c1508d4ecd 100644
--- a/dev-cpp/benchmark/benchmark-1.5.6.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.5.6.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit cmake
+inherit cmake flag-o-matic
DESCRIPTION="A microbenchmark support library"
HOMEPAGE="https://github.com/google/benchmark"
diff --git a/dev-cpp/benchmark/benchmark-1.6.0.ebuild b/dev-cpp/benchmark/benchmark-1.6.0.ebuild
index 604dda9d01d..79dd281a1d6 100644
--- a/dev-cpp/benchmark/benchmark-1.6.0.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.6.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit cmake
+inherit cmake flag-o-matic
DESCRIPTION="A microbenchmark support library"
HOMEPAGE="https://github.com/google/benchmark"
diff --git a/dev-cpp/benchmark/benchmark-1.6.1.ebuild b/dev-cpp/benchmark/benchmark-1.6.1.ebuild
new file mode 100644
index 00000000000..41c2180ad81
--- /dev/null
+++ b/dev-cpp/benchmark/benchmark-1.6.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="A microbenchmark support library"
+HOMEPAGE="https://github.com/google/benchmark"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+IUSE="debug doc lto test"
+
+RESTRICT="!test? ( test )"
+
+BDEPEND="doc? ( app-doc/doxygen )
+ test? ( >=dev-cpp/gtest-1.11.0 )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DBENCHMARK_ENABLE_ASSEMBLY_TESTS=OFF
+ -DBENCHMARK_ENABLE_DOXYGEN=$(usex doc)
+ -DBENCHMARK_ENABLE_GTEST_TESTS=$(usex test)
+ -DBENCHMARK_ENABLE_LTO=$(usex lto)
+ -DBENCHMARK_ENABLE_TESTING=$(usex test)
+ -DBENCHMARK_ENABLE_WERROR=OFF
+ -DBENCHMARK_USE_BUNDLED_GTEST=OFF
+ )
+
+ use debug || append-cppflags -DNDEBUG
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/benchmark/metadata.xml b/dev-cpp/benchmark/metadata.xml
index ac75eeab418..1a6a996e42c 100644
--- a/dev-cpp/benchmark/metadata.xml
+++ b/dev-cpp/benchmark/metadata.xml
@@ -10,4 +10,7 @@
<doc lang="en">https://github.com/google/benchmark/tree/master/docs/</doc>
<remote-id type="github">google/benchmark</remote-id>
</upstream>
+ <use>
+ <flag name="lto">Optimize the build using Link Time Optimization (LTO)</flag>
+ </use>
</pkgmetadata>
diff --git a/dev-cpp/cairomm/cairomm-1.16.1.ebuild b/dev-cpp/cairomm/cairomm-1.16.1.ebuild
index a2d8be8732d..c0f5c8564e5 100644
--- a/dev-cpp/cairomm/cairomm-1.16.1.ebuild
+++ b/dev-cpp/cairomm/cairomm-1.16.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz"
LICENSE="LGPL-2+"
SLOT="1.16"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris"
IUSE="doc test"
RESTRICT="!test? ( test )"
@@ -36,7 +36,7 @@ BDEPEND="
multilib_src_configure() {
local emesonargs=(
- $(meson_native_use_bool doc documentation)
+ $(meson_native_use_bool doc build-documentation)
-Dbuild-examples=false
$(meson_use test build-tests)
-Dboost-shared=true
diff --git a/dev-cpp/catch/Manifest b/dev-cpp/catch/Manifest
index 9e33343c115..99ab1a9bcbe 100644
--- a/dev-cpp/catch/Manifest
+++ b/dev-cpp/catch/Manifest
@@ -1,3 +1,3 @@
DIST Catch-1.12.2.tar.gz 377265 BLAKE2B bc27b4daee950f8fb93d65f3aed032e72bc856ee27a8dc28c35b89e33f414d68ba4cf00951e476688eddf9e4c0514036bd6916fa6cfa9e3359e6c625984f114f SHA512 ed963cdca9fe307ee02928677f81cafcb41cd607faaa315182fdf898d0f2aa28f0be2141bd642f46fdfac400c38f6d065e00a595a1e5879fe2335c4a3851e844
-DIST Catch2-2.13.4.tar.gz 656645 BLAKE2B 7a8afb099d410af3a7641c948a59307ac72338174356c1219834f050e0971e410275f1eda911444c3e956320fa25b60f91a3aba75aa36d375ba38626a0246485 SHA512 eac081d750e65d4d8d8d5f32b53bd963c6566caabaff424c479fe080416f59b5387adbdf6dbac30fe265243cb5ed184baf6f8a9625052bd498c098b83463390d
-DIST Catch2-2.13.6.tar.gz 659811 BLAKE2B d876c51589259ef9fa9640811c17049ee5f1559a2863d146b0d8f79e9531b3528db34bc23e4fee090436a92b430756442eee4820083e71225da0f24399131a73 SHA512 f63e240994b5982cf019a33b8999b62237cce174962f00437d64fd287b34f7217d066225d99322431ef60da67b025f36db703dab94b3d58bbd81095d98917278
+DIST Catch2-2.13.7.tar.gz 661014 BLAKE2B 7d874832082db74895bfd696c409a77693ae68c456d1287acf965ec6884c323cd2f3bc4b9eecc3e8210d262a6da8e897dfef09ec035f8bed4d408a28e7147cc5 SHA512 1c3cbdecc6a3b59360a97789c4784d79d027e1b63bdc42b0e152c3272f7bad647fcd1490aa5caf67f968a6311dc9624b5a70d5eb3fbc1d5179d520e09b76c9ed
+DIST Catch2-2.13.8.tar.gz 661711 BLAKE2B 973cc73c1d158140645003e76c0baf85a65252041fdcae3c6ecb1857021f2d24d8e879fec5f00368f4f458e69b450603a1613ac587417725980f1dbfe3ff2e65 SHA512 68a45efa47beb3c85d2d7b8a8eba89b8ec1664b4a72bb223227fef1632778aeaf5cf5cc09f40e47aef50426c8661c7d6a69c2dab0b88fbbf7d9a6b2974d6e32e
diff --git a/dev-cpp/catch/catch-1.12.2.ebuild b/dev-cpp/catch/catch-1.12.2-r1.ebuild
index 22741eef010..d458ced709d 100644
--- a/dev-cpp/catch/catch-1.12.2.ebuild
+++ b/dev-cpp/catch/catch-1.12.2-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit cmake-utils
+inherit cmake
if [[ ${PV} == *9999 ]]; then
inherit git-r3
@@ -12,7 +12,7 @@ if [[ ${PV} == *9999 ]]; then
else
MY_P=${PN^}-${PV}
SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
+ KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86"
S="${WORKDIR}/${PN^}2-${PV}"
fi
@@ -27,14 +27,18 @@ RESTRICT="!test? ( test )"
RDEPEND="!<dev-cpp/catch-1.12.2:0"
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.12.2-glibc-2.34-sigstksz.patch
+)
+
src_configure() {
local mycmakeargs=(
-DNO_SELFTEST=$(usex !test)
)
- cmake-utils_src_configure
+ cmake_src_configure
}
src_install() {
- cmake-utils_src_install
+ cmake_src_install
dodoc -r docs/.
}
diff --git a/dev-cpp/catch/catch-1.9999.ebuild b/dev-cpp/catch/catch-1.9999.ebuild
index 3514580992a..9b275ede982 100644
--- a/dev-cpp/catch/catch-1.9999.ebuild
+++ b/dev-cpp/catch/catch-1.9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-inherit cmake-utils
+inherit cmake
if [[ ${PV} == *9999 ]]; then
inherit git-r3
@@ -31,10 +31,10 @@ src_configure() {
local mycmakeargs=(
-DNO_SELFTEST=$(usex !test)
)
- cmake-utils_src_configure
+ cmake_src_configure
}
src_install() {
- cmake-utils_src_install
+ cmake_src_install
dodoc -r docs/.
}
diff --git a/dev-cpp/catch/catch-2.13.6.ebuild b/dev-cpp/catch/catch-2.13.7.ebuild
index dcf3ff6e118..a57a9d4e9d0 100644
--- a/dev-cpp/catch/catch-2.13.6.ebuild
+++ b/dev-cpp/catch/catch-2.13.7.ebuild
@@ -1,7 +1,7 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
PYTHON_COMPAT=( python3_{8..10} )
@@ -13,9 +13,9 @@ if [[ ${PV} == *9999 ]]; then
else
MY_P=${PN^}2-${PV}
SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
-
S="${WORKDIR}/${MY_P}"
+
+ KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
DESCRIPTION="Modern C++ header-only framework for unit-tests"
@@ -38,7 +38,7 @@ src_configure() {
-DBUILD_TESTING=$(usex test)
)
use test &&
- mycmakeargs+=(-DPYTHON_EXECUTABLE="${PYTHON}")
+ mycmakeargs+=( -DPYTHON_EXECUTABLE="${PYTHON}" )
cmake_src_configure
}
diff --git a/dev-cpp/catch/catch-2.13.4.ebuild b/dev-cpp/catch/catch-2.13.8.ebuild
index 4ef09010228..a57a9d4e9d0 100644
--- a/dev-cpp/catch/catch-2.13.4.ebuild
+++ b/dev-cpp/catch/catch-2.13.8.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-any-r1
@@ -13,9 +13,9 @@ if [[ ${PV} == *9999 ]]; then
else
MY_P=${PN^}2-${PV}
SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
- KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
-
S="${WORKDIR}/${MY_P}"
+
+ KEYWORDS="amd64 ~arm ~arm64 ~ppc64 x86"
fi
DESCRIPTION="Modern C++ header-only framework for unit-tests"
@@ -38,7 +38,7 @@ src_configure() {
-DBUILD_TESTING=$(usex test)
)
use test &&
- mycmakeargs+=(-DPYTHON_EXECUTABLE="${PYTHON}")
+ mycmakeargs+=( -DPYTHON_EXECUTABLE="${PYTHON}" )
cmake_src_configure
}
diff --git a/dev-cpp/catch/catch-9999.ebuild b/dev-cpp/catch/catch-9999.ebuild
index 7501403174d..339f89fdb86 100644
--- a/dev-cpp/catch/catch-9999.ebuild
+++ b/dev-cpp/catch/catch-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit cmake python-any-r1
@@ -13,9 +13,9 @@ if [[ ${PV} == *9999 ]]; then
else
MY_P=${PN^}2-${PV}
SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> ${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
-
S="${WORKDIR}/${MY_P}"
+
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
DESCRIPTION="Modern C++ header-only framework for unit-tests"
@@ -35,11 +35,10 @@ pkg_setup() {
src_configure() {
local mycmakeargs=(
-DCATCH_ENABLE_WERROR=OFF
- -DBUILD_TESTING=$(usex test)
-DCATCH_DEVELOPMENT_BUILD=$(usex test)
)
use test &&
- mycmakeargs+=(-DPYTHON_EXECUTABLE="${PYTHON}")
+ mycmakeargs+=( -DPYTHON_EXECUTABLE="${PYTHON}" )
cmake_src_configure
}
diff --git a/dev-cpp/catch/files/catch-1.12.2-glibc-2.34-sigstksz.patch b/dev-cpp/catch/files/catch-1.12.2-glibc-2.34-sigstksz.patch
new file mode 100644
index 00000000000..3c6e08384a5
--- /dev/null
+++ b/dev-cpp/catch/files/catch-1.12.2-glibc-2.34-sigstksz.patch
@@ -0,0 +1,67 @@
+https://src.fedoraproject.org/rpms/catch1/raw/rawhide/f/catch1-sigstksz.patch
+https://bugs.gentoo.org/803962
+
+commit 34650cd9ea2f7e4aa1e61b84ecf9913b87870680
+Author: Tom Hughes <tom@compton.nu>
+Date: Fri Feb 19 10:45:49 2021 +0000
+
+ Patch for non-constant SIGSTKSZ
+
+--- a/include/internal/catch_fatal_condition.hpp
++++ b/include/internal/catch_fatal_condition.hpp
+@@ -136,7 +136,7 @@ namespace Catch {
+ static bool isSet;
+ static struct sigaction oldSigActions [sizeof(signalDefs)/sizeof(SignalDefs)];
+ static stack_t oldSigStack;
+- static char altStackMem[SIGSTKSZ];
++ static char altStackMem[32768];
+
+ static void handleSignal( int sig ) {
+ std::string name = "<unknown signal>";
+@@ -156,7 +156,7 @@ namespace Catch {
+ isSet = true;
+ stack_t sigStack;
+ sigStack.ss_sp = altStackMem;
+- sigStack.ss_size = SIGSTKSZ;
++ sigStack.ss_size = 32768;
+ sigStack.ss_flags = 0;
+ sigaltstack(&sigStack, &oldSigStack);
+ struct sigaction sa = { 0 };
+@@ -188,7 +188,7 @@ namespace Catch {
+ bool FatalConditionHandler::isSet = false;
+ struct sigaction FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = {};
+ stack_t FatalConditionHandler::oldSigStack = {};
+- char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
++ char FatalConditionHandler::altStackMem[32768] = {};
+
+
+ } // namespace Catch
+--- a/single_include/catch.hpp
++++ b/single_include/catch.hpp
+@@ -6540,7 +6540,7 @@ namespace Catch {
+ static bool isSet;
+ static struct sigaction oldSigActions [sizeof(signalDefs)/sizeof(SignalDefs)];
+ static stack_t oldSigStack;
+- static char altStackMem[SIGSTKSZ];
++ static char altStackMem[32768];
+
+ static void handleSignal( int sig ) {
+ std::string name = "<unknown signal>";
+@@ -6560,7 +6560,7 @@ namespace Catch {
+ isSet = true;
+ stack_t sigStack;
+ sigStack.ss_sp = altStackMem;
+- sigStack.ss_size = SIGSTKSZ;
++ sigStack.ss_size = 32768;
+ sigStack.ss_flags = 0;
+ sigaltstack(&sigStack, &oldSigStack);
+ struct sigaction sa = { 0 };
+@@ -6591,7 +6591,7 @@ namespace Catch {
+ bool FatalConditionHandler::isSet = false;
+ struct sigaction FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = {};
+ stack_t FatalConditionHandler::oldSigStack = {};
+- char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
++ char FatalConditionHandler::altStackMem[32768] = {};
+
+ } // namespace Catch
+
diff --git a/dev-cpp/cpp-hocon/cpp-hocon-0.3.0-r1.ebuild b/dev-cpp/cpp-hocon/cpp-hocon-0.3.0-r1.ebuild
new file mode 100644
index 00000000000..f8f3b60de63
--- /dev/null
+++ b/dev-cpp/cpp-hocon/cpp-hocon-0.3.0-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake prefix
+
+DESCRIPTION="Provides C++ support for the HOCON configuration file format"
+HOMEPAGE="https://github.com/puppetlabs/cpp-hocon"
+SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/boost-1.54:=[nls]
+ >=dev-libs/leatherman-0.9.3:=
+"
+DEPEND="${DEPEND}
+ test? ( dev-cpp/catch:1 )"
+
+#PATCHES=( "${FILESDIR}"/${PN}-0.2.1-cmake.patch )
+PATCHES=( "${FILESDIR}"/${PN}-0.3.0-use-system-catch.patch )
+
+src_prepare() {
+ cmake_src_prepare
+
+ eprefixify lib/tests/CMakeLists.txt
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTING=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/cpp-hocon/files/cpp-hocon-0.3.0-use-system-catch.patch b/dev-cpp/cpp-hocon/files/cpp-hocon-0.3.0-use-system-catch.patch
new file mode 100644
index 00000000000..0964e3e7bc7
--- /dev/null
+++ b/dev-cpp/cpp-hocon/files/cpp-hocon-0.3.0-use-system-catch.patch
@@ -0,0 +1,51 @@
+https://bugs.gentoo.org/823419
+
+Wanted to make this "proper" but Catch2 lacks a pkgconfig file (or a CMake one)
+and it's easier to just do this for now.
+
+Based on patch version of sed commands from upstream bug
+(https://github.com/puppetlabs/cpp-hocon/issues/132) and
+Fedora (https://src.fedoraproject.org/rpms/cpp-hocon/blob/rawhide/f/cpp-hocon.spec#_76).
+
+Makes tests conditional too.
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -16,12 +16,16 @@ if (NOT CMAKE_BUILD_TYPE)
+ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE)
+ endif()
+
+-enable_testing()
+-
+ # Leatherman setup
+-set(LEATHERMAN_COMPONENTS locale catch nowide util)
++set(LEATHERMAN_COMPONENTS locale nowide util)
+ find_package(Leatherman REQUIRED COMPONENTS ${LEATHERMAN_COMPONENTS})
+
++option(BUILD_TESTING "Build test suite (needs Catch)" ON)
++
++if(BUILD_TESTING)
++ enable_testing()
++endif()
++
+ ## Before we find any packages, we want to pull in the common leatherman options, as they can affect commonly-used packages.
+ include(options)
+ ## Pull in common cflags setting from leatherman. Don't override CMAKE_CXX_FLAGS at the project root to avoid impacting 3rd party code.
+--- a/lib/CMakeLists.txt
++++ b/lib/CMakeLists.txt
+@@ -91,4 +91,6 @@ symbol_exports(lib${PROJECT_NAME} "${CMAKE_CURRENT_LIST_DIR}/inc/hocon/export.h"
+ leatherman_install(lib${PROJECT_NAME})
+ install(DIRECTORY inc/hocon DESTINATION include)
+
+-add_subdirectory(tests)
++if (BUILD_TESTING)
++ add_subdirectory(tests)
++endif()
+--- a/lib/tests/CMakeLists.txt
++++ b/lib/tests/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ # Setup compiling the test executable. C++ compile flags are inherited from the parent directory.
+-include_directories(${LEATHERMAN_CATCH_INCLUDE})
++include_directories(@GENTOO_PORTAGE_EPREFIX@/usr/include/catch)
+
+ set(TEST_CASES
+ concatenation_test.cc
diff --git a/dev-cpp/cpp-taskflow/cpp-taskflow-3.2.0.ebuild b/dev-cpp/cpp-taskflow/cpp-taskflow-3.2.0.ebuild
index fc6e30fbb60..9b146d9dc54 100644
--- a/dev-cpp/cpp-taskflow/cpp-taskflow-3.2.0.ebuild
+++ b/dev-cpp/cpp-taskflow/cpp-taskflow-3.2.0.ebuild
@@ -7,17 +7,31 @@ inherit cmake
DESCRIPTION="Modern C++ Parallel Task Programming"
HOMEPAGE="https://cpp-taskflow.github.io"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/taskflow-${PV}"
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/cpp-taskflow/${PN}.git"
+ inherit git-r3
+ S="${WORKDIR}/cpp-taskflow-${PV}"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/taskflow-${PV}"
+fi
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
IUSE="examples test"
RESTRICT="!test? ( test )"
+DEPEND="test? ( dev-cpp/doctest )"
+
HTML_DOCS=( docs/. )
+src_prepare() {
+ rm -r "${S}/3rd-party" || die "rm failed"
+ default
+ cmake_src_prepare
+}
+
src_configure() {
# TODO: enable CUDA via USE flag
local mycmakeargs=(
diff --git a/dev-cpp/cpp-taskflow/cpp-taskflow-9999.ebuild b/dev-cpp/cpp-taskflow/cpp-taskflow-9999.ebuild
new file mode 100644
index 00000000000..9b146d9dc54
--- /dev/null
+++ b/dev-cpp/cpp-taskflow/cpp-taskflow-9999.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Modern C++ Parallel Task Programming"
+HOMEPAGE="https://cpp-taskflow.github.io"
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/cpp-taskflow/${PN}.git"
+ inherit git-r3
+ S="${WORKDIR}/cpp-taskflow-${PV}"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+ S="${WORKDIR}/taskflow-${PV}"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-cpp/doctest )"
+
+HTML_DOCS=( docs/. )
+
+src_prepare() {
+ rm -r "${S}/3rd-party" || die "rm failed"
+ default
+ cmake_src_prepare
+}
+
+src_configure() {
+ # TODO: enable CUDA via USE flag
+ local mycmakeargs=(
+ -DTF_BUILD_CUDA=OFF
+ -DTF_BUILD_EXAMPLES=$(usex examples)
+ -DTF_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/doctest/Manifest b/dev-cpp/doctest/Manifest
index 21c9d2b1246..ce394009932 100644
--- a/dev-cpp/doctest/Manifest
+++ b/dev-cpp/doctest/Manifest
@@ -1 +1,3 @@
DIST doctest-2.4.6.tar.gz 2277281 BLAKE2B e6835ad33522273a3151ccfa1e760a150e2f0ccc15fb739cb518d8c9b4258f4b1529537bb6f41b285660aa00f1791b30a7db14155d9f23ea54dd11bfdeb81ec3 SHA512 a5cccf085af946003140af688f071a6407d42fc685324a537e3b704ef9de0f2228bd06eabfd1df8da70dec001420dd0b2813e5e4320b5c1da450cb0aadd63788
+DIST doctest-2.4.7.tar.gz 2281756 BLAKE2B 9e10a30ca20ab08c4b5e7bc65e6d89e7fde45da7e6ff8ecbf9e848c7c61a7864bc4fbb49b0b1d2d6eeab16da2b4a2d935d06a593dab9be1fdb400e8ab641af7e SHA512 bb2d410397700aa7be1161fcf26949524d4f7c333bb9ffe7d223dfd14e770d6eeff75336f27fe0c8051dcb6c403c6b3af506872f6ba207d2d86cc9e9d1d2bfbf
+DIST doctest-2.4.8.tar.gz 2275833 BLAKE2B 334ed6fda624788adf07fb92a773f3fa69addfbff389e3669e58f66271536d42ff8d20e73e20a4f1d3eee59233d476e527680bb19dcae1d9a6d062e6feedfde5 SHA512 f9b40abfd756331f9b667f3c1e7dcf2652effacac70523834dd3946522f01459c095bdbad04651ad2ad155977e1395025f868ed4dcf5d5712aae9807afb5699c
diff --git a/dev-cpp/doctest/doctest-2.4.6.ebuild b/dev-cpp/doctest/doctest-2.4.6.ebuild
index 4c3df901696..dfa43f1f201 100644
--- a/dev-cpp/doctest/doctest-2.4.6.ebuild
+++ b/dev-cpp/doctest/doctest-2.4.6.ebuild
@@ -6,8 +6,8 @@ EAPI=7
inherit cmake
DESCRIPTION="The fastest feature-rich C++11/14/17/20 single-header testing framework"
-HOMEPAGE="https://github.com/onqtam/doctest"
-SRC_URI="https://github.com/onqtam/doctest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/doctest/doctest"
+SRC_URI="https://github.com/doctest/doctest/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-cpp/doctest/doctest-2.4.7.ebuild b/dev-cpp/doctest/doctest-2.4.7.ebuild
new file mode 100644
index 00000000000..ef28c59976c
--- /dev/null
+++ b/dev-cpp/doctest/doctest-2.4.7.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="The fastest feature-rich C++11/14/17/20 single-header testing framework"
+HOMEPAGE="https://github.com/doctest/doctest"
+SRC_URI="https://github.com/doctest/doctest/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DDOCTEST_WITH_TESTS=$(usex test)
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/doctest/doctest-2.4.8.ebuild b/dev-cpp/doctest/doctest-2.4.8.ebuild
new file mode 100644
index 00000000000..fa60bdec885
--- /dev/null
+++ b/dev-cpp/doctest/doctest-2.4.8.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="The fastest feature-rich C++11/14/17/20 single-header testing framework"
+HOMEPAGE="https://github.com/doctest/doctest"
+SRC_URI="https://github.com/doctest/doctest/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DDOCTEST_WITH_TESTS=$(usex test)
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/doctest/metadata.xml b/dev-cpp/doctest/metadata.xml
index d74c17749c0..02076edda23 100644
--- a/dev-cpp/doctest/metadata.xml
+++ b/dev-cpp/doctest/metadata.xml
@@ -10,6 +10,6 @@
<name>Proxy Maintainers</name>
</maintainer>
<upstream>
- <remote-id type="github">onqtam/doctest</remote-id>
+ <remote-id type="github">doctest/doctest</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
index d6069d9926d..3955c4711b2 100644
--- a/dev-cpp/eigen/Manifest
+++ b/dev-cpp/eigen/Manifest
@@ -1,3 +1 @@
-DIST eigen-3.3.7-gitlab.tar.bz2 1663474 BLAKE2B 70c2f6305ca205d62755cf5e90961088938b8daf56b7cc27abf52f0731064858ada523009d6bf5f014e24b34ceeafe59f918c385d12ccfe249ddb675e13d37a8 SHA512 ea3f1570de3be9ec230d2fbd0f2ae246bf5fd13da79835bf546eb31524796f26f9f633ee779f77942b370a8d540c5cbbd8dd033ccec53a44b692c7e407d6266f
-DIST eigen-3.3.9.tar.gz 2142379 BLAKE2B 437dc190fdf7a416d0a5cf81703ef4cc73c195f0f3e7c853e0ab38cf904608ddd4485cc4e15eb0cd5e3c401276f270f3c86f538f205cc91b8c83e131d1bc916d SHA512 16244cc89f2e1879543232b965cbf653b3ccf10e967c8c437a41e27d8320392bdf584d8c24b8a97406ab7d1481d5154da74e0702ec1334ae6a46de83f4573a46
DIST eigen-3.4.0.tar.gz 2705005 BLAKE2B ae5f774a6ed36f52cf9fc3206e50796abacbba69fd0f67cd5759b4e04d847aa656861d5e06e6cd0d798a17f2b06abdb70b16f795a626bdd29edcc872c33821f8 SHA512 ba75ecb760e32acf4ceaf27115468e65d4f77c44f8d519b5a13e7940af2c03a304ad433368cb6d55431f307c5c39e2666ab41d34442db3cf441638e51f5c3b6a
diff --git a/dev-cpp/eigen/eigen-3.3.7-r1.ebuild b/dev-cpp/eigen/eigen-3.3.7-r1.ebuild
deleted file mode 100644
index 68821a80607..00000000000
--- a/dev-cpp/eigen/eigen-3.3.7-r1.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-FORTRAN_NEEDED="test"
-inherit cmake cuda fortran-2
-
-DESCRIPTION="C++ template library for linear algebra"
-HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
-SRC_URI="https://gitlab.com/libeigen/eigen/-/archive/${PV}/${P}.tar.bz2 -> ${P}-gitlab.tar.bz2"
-
-LICENSE="MPL-2.0"
-SLOT="3"
-KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux"
-IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- doc? (
- app-doc/doxygen[dot]
- dev-texlive/texlive-bibtexextra
- dev-texlive/texlive-fontsextra
- dev-texlive/texlive-fontutils
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- )
- test? ( virtual/pkgconfig )
-"
-DEPEND="
- cuda? ( dev-util/nvidia-cuda-toolkit )
- test? (
- dev-libs/gmp:0
- dev-libs/mpfr:0
- media-libs/freeglut
- media-libs/glew
- sci-libs/adolc[sparse]
- sci-libs/cholmod
- sci-libs/fftw:3.0
- sci-libs/pastix
- sci-libs/scotch
- sci-libs/spqr
- sci-libs/superlu
- sci-libs/umfpack
- virtual/opengl
- )
-"
-# Missing:
-# METIS-5
-# GOOGLEHASH
-
-PATCHES=( "${FILESDIR}"/${P}-gentoo-cmake.patch )
-
-src_prepare() {
- cmake_src_prepare
-
- cmake_comment_add_subdirectory demos
-
- if ! use test; then
- sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
- fi
-
- use cuda && cuda_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKEPACKAGE_INSTALL_DIR="${EPREFIX}"/usr/$(get_libdir)/cmake/${PN}${SLOT}
- )
- use test && mycmakeargs+=(
- -DEIGEN_TEST_CXX11=ON
- -DEIGEN_TEST_NOQT=ON
- -DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec)
- -DEIGEN_TEST_CUDA=$(usex cuda)
- -DEIGEN_TEST_OPENMP=$(usex openmp)
- -DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon)
- -DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx)
- )
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
- use doc && cmake_src_compile doc
- if use test; then
- cmake_src_compile blas
- cmake_src_compile buildtests
- fi
-}
-
-src_install() {
- use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
- cmake_src_install
-}
diff --git a/dev-cpp/eigen/eigen-3.3.9.ebuild b/dev-cpp/eigen/eigen-3.3.9.ebuild
deleted file mode 100644
index 6d4b9b34524..00000000000
--- a/dev-cpp/eigen/eigen-3.3.9.ebuild
+++ /dev/null
@@ -1,107 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-FORTRAN_NEEDED="test"
-inherit cmake cuda fortran-2
-
-DESCRIPTION="C++ template library for linear algebra"
-HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
-SRC_URI="https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
-
-LICENSE="MPL-2.0"
-SLOT="3"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
-IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
-
-RESTRICT="!test? ( test )"
-
-BDEPEND="
- doc? (
- app-doc/doxygen[dot]
- dev-texlive/texlive-bibtexextra
- dev-texlive/texlive-fontsextra
- dev-texlive/texlive-fontutils
- dev-texlive/texlive-latex
- dev-texlive/texlive-latexextra
- )
- test? ( virtual/pkgconfig )
-"
-DEPEND="
- cuda? ( dev-util/nvidia-cuda-toolkit )
- test? (
- dev-libs/gmp:0
- dev-libs/mpfr:0
- media-libs/freeglut
- media-libs/glew
- sci-libs/adolc[sparse]
- sci-libs/cholmod
- sci-libs/fftw:3.0
- sci-libs/pastix
- sci-libs/scotch
- sci-libs/spqr
- sci-libs/superlu
- sci-libs/umfpack
- virtual/opengl
- )
-"
-# Missing:
-# METIS-5
-# GOOGLEHASH
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.3.7-gentoo-cmake.patch
- "${FILESDIR}"/${PN}-3.3.9-max-macro.patch
-)
-
-src_prepare() {
- cmake_src_prepare
-
- cmake_comment_add_subdirectory demos
-
- if ! use test; then
- sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
- fi
-
- use cuda && cuda_src_prepare
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKEPACKAGE_INSTALL_DIR=$(get_libdir)/cmake/${PN}${SLOT}
- )
- use test && mycmakeargs+=(
- # the OpenGL testsuite is extremely brittle, bug #712808
- -DEIGEN_TEST_NO_OPENGL=ON
- # the cholmod tests are broken and always fail
- -DCMAKE_DISABLE_FIND_PACKAGE_Cholmod=ON
- -DEIGEN_TEST_CXX11=ON
- -DEIGEN_TEST_NOQT=ON
- -DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec)
- -DEIGEN_TEST_CUDA=$(usex cuda)
- -DEIGEN_TEST_OPENMP=$(usex openmp)
- -DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon)
- -DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx)
- )
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
- if use doc; then
- cmake_src_compile doc
- HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
- fi
- if use test; then
- cmake_src_compile blas
- cmake_src_compile buildtests
-
- # tests generate random data, which
- # obviously fails for some seeds
- export EIGEN_SEED=712808
- fi
-}
diff --git a/dev-cpp/eigen/eigen-3.4.0-r1.ebuild b/dev-cpp/eigen/eigen-3.4.0-r1.ebuild
index 8bd4d5d6642..173ae17f83f 100644
--- a/dev-cpp/eigen/eigen-3.4.0-r1.ebuild
+++ b/dev-cpp/eigen/eigen-3.4.0-r1.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
LICENSE="MPL-2.0"
SLOT="3"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
# Tests failing again because of compiler issues
@@ -54,6 +54,7 @@ DEPEND="
PATCHES=(
#"${FILESDIR}"/${PN}-3.3.7-gentoo-cmake.patch
"${FILESDIR}"/${PN}-3.3.9-max-macro.patch
+ "${FILESDIR}"/${P}-doc-nocompress.patch # bug 830064
)
src_prepare() {
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch b/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch
new file mode 100644
index 00000000000..b9c252ebb09
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch
@@ -0,0 +1,15 @@
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -112,11 +112,7 @@
+ COMMAND doxygen
+ COMMAND doxygen Doxyfile-unsupported
+ COMMAND ${CMAKE_COMMAND} -E copy ${Eigen_BINARY_DIR}/doc/html/group__TopicUnalignedArrayAssert.html ${Eigen_BINARY_DIR}/doc/html/TopicUnalignedArrayAssert.html
+- COMMAND ${CMAKE_COMMAND} -E rename html eigen-doc
+- COMMAND ${CMAKE_COMMAND} -E remove eigen-doc/eigen-doc.tgz eigen-doc/unsupported/_formulas.log eigen-doc/_formulas.log
+- COMMAND ${CMAKE_COMMAND} -E tar cfz eigen-doc.tgz eigen-doc
+- COMMAND ${CMAKE_COMMAND} -E rename eigen-doc.tgz eigen-doc/eigen-doc.tgz
+- COMMAND ${CMAKE_COMMAND} -E rename eigen-doc html
++ COMMAND ${CMAKE_COMMAND} -E remove html/unsupported/_formulas.log html/_formulas.log
+ WORKING_DIRECTORY ${Eigen_BINARY_DIR}/doc)
+
+ add_dependencies(doc doc-eigen-prerequisites doc-unsupported-prerequisites)
diff --git a/dev-cpp/elfio/Manifest b/dev-cpp/elfio/Manifest
new file mode 100644
index 00000000000..0f9656cf99d
--- /dev/null
+++ b/dev-cpp/elfio/Manifest
@@ -0,0 +1 @@
+DIST elfio-3.9.tar.gz 4265086 BLAKE2B 3f2f40930ad82b9bd4f53f14c117e71e5c8ba39f0952555c51f196ca03b187702347c80db30ecf6ad9d19bc4edfae18d1b3f04d4cd09e2b85f9bba9736e0a78a SHA512 479c4132ac3575940bd1e8190ba5253e54ae57f38319d7bca75ea85ee2f744f5d5b460d2d4ceb17eca0d0561c6e281673f050bbdab2f5ff526c031c220876bf1
diff --git a/dev-cpp/elfio/elfio-3.9.ebuild b/dev-cpp/elfio/elfio-3.9.ebuild
new file mode 100644
index 00000000000..048dd0370aa
--- /dev/null
+++ b/dev-cpp/elfio/elfio-3.9.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="ELF reader/producer header-only C++ library"
+HOMEPAGE="https://github.com/serge1/ELFIO"
+SRC_URI="https://github.com/serge1/${PN}/archive/Release_${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN^^}-Release_${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-libs/boost )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DELFIO_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/rttr/metadata.xml b/dev-cpp/elfio/metadata.xml
index 59df1ad2e3c..430dfaf9ea0 100644
--- a/dev-cpp/rttr/metadata.xml
+++ b/dev-cpp/elfio/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
<upstream>
- <remote-id type="github">rttrorg/rttr</remote-id>
+ <remote-id type="github">serge1/ELFIO</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-cpp/glibmm/Manifest b/dev-cpp/glibmm/Manifest
index d18072c4450..82209c45b74 100644
--- a/dev-cpp/glibmm/Manifest
+++ b/dev-cpp/glibmm/Manifest
@@ -1,2 +1,3 @@
-DIST glibmm-2.66.1.tar.xz 7509820 BLAKE2B 4750940093cadbae7c32d387ac8b16c8230eb08ed1645e457edfa27542a2e8a01d70de08bb41d1872dd1f03d1506bfaefc2af582250ca64ad480ce5f98f20d56 SHA512 caf57c2c9d163fff45041c33ed70d2692040d7bea44660d68e8c16a76be2609e0f857a5e16ad5220a0ec681a560c864dc86c2988a2c40741b4f29c9fe5b7d8b9
-DIST glibmm-2.68.1.tar.xz 7657712 BLAKE2B a8141e53f89c981a9916d5f71dfd8c6d08e45a653b98c507acaadfefbedf2f22e8130a722f3398f5e0dff8196ffc8efa6567ebb2c8290f7373e34377e281db18 SHA512 ca164f986da651e66bb5b98a760853e73d57ff84e035809d4c3b2c0a1b6ddf8ca68ffc49a71d0e0b2e14eca1c00e2e727e3bf3821e0b2b3a808397c3d33c6d5c
+DIST glibmm-2.66.2.tar.xz 7603104 BLAKE2B 5696391bd5dbb35f8c961250af6d9b2644e900ac6a800054e9e7630cbf4882c17ef1bf8cf322e89a3bdbe613d13d4a045920bfc1071442daa3afc78afa8cd759 SHA512 097af6b140a5af3e52cc2c5d251475a5aa923d0c528c3cbc97f31d3a95868bcb3aa2328047ca94a55ef7fd188f271917dfe29faa86f477a441f0a024284216f9
+DIST glibmm-2.68.2.tar.xz 7844508 BLAKE2B 890f3a8f15580891df000acfe365989a6b09a63712b5f24f999a70e62983c725c9aef2b386b8995933c41b345164bb0b330b6cb0af182476f14657db8ba7d0cf SHA512 96b2970ac47e6a8de2d4352412f0107fbdcb61942d27f20a2f533f9704304e5f55c52829567457e7c925f830a69c739bf00676882741ed2969e52caf3e135c46
+DIST glibmm-2.70.0.tar.xz 7874312 BLAKE2B 5d0fb24444b8764e3f972f342a540164debb841f74e5d27db721feff9baa70c9ff5821b26642cb8c5da048f9a1271b1ed7283d9f0338ba0f184be396981310e3 SHA512 059cab7f0b865303cef3cba6c4f3a29ae4e359aba428f5e79cea6fedd3f1e082199f673323cf804902cee14b91739598fbc6ff706ec36f19c4d793d032782518
diff --git a/dev-cpp/glibmm/glibmm-2.66.1.ebuild b/dev-cpp/glibmm/glibmm-2.66.2.ebuild
index 5977b8dd7ac..387dcf44d14 100644
--- a/dev-cpp/glibmm/glibmm-2.66.1.ebuild
+++ b/dev-cpp/glibmm/glibmm-2.66.2.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{7..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for glib2"
diff --git a/dev-cpp/glibmm/glibmm-2.68.2.ebuild b/dev-cpp/glibmm/glibmm-2.68.2.ebuild
new file mode 100644
index 00000000000..4fd62005bab
--- /dev/null
+++ b/dev-cpp/glibmm/glibmm-2.68.2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{7..10} )
+inherit gnome.org meson-multilib python-any-r1
+
+DESCRIPTION="C++ interface for glib2"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="2.68"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris ~x86-solaris"
+IUSE="doc debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.63.0:2[${MULTILIB_USEDEP}]
+ dev-libs/libsigc++:3[doc?,${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen[dot]
+ dev-lang/perl
+ dev-libs/libxslt
+ )
+"
+
+src_prepare() {
+ default
+
+ # giomm_tls_client requires FEATURES=-network-sandbox and glib-networking rdep
+ sed -i -e '/giomm_tls_client/d' tests/meson.build || die
+
+ if ! use test; then
+ sed -i -e "/^subdir('tests')/d" meson.build || die
+ fi
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dwarnings=min
+ -Dbuild-deprecated-api=true
+ $(meson_native_use_bool doc build-documentation)
+ $(meson_use debug debug-refcounting)
+ -Dbuild-examples=false
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/glibmm/glibmm-2.68.1.ebuild b/dev-cpp/glibmm/glibmm-2.70.0.ebuild
index a40dc5dd7ad..8cf7ffdce6e 100644
--- a/dev-cpp/glibmm/glibmm-2.68.1.ebuild
+++ b/dev-cpp/glibmm/glibmm-2.70.0.ebuild
@@ -1,8 +1,8 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for glib2"
@@ -15,7 +15,7 @@ IUSE="doc debug test"
RESTRICT="!test? ( test )"
RDEPEND="
- >=dev-libs/glib-2.63.0:2[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.69.1:2[${MULTILIB_USEDEP}]
dev-libs/libsigc++:3[doc?,${MULTILIB_USEDEP}]
"
DEPEND="${RDEPEND}"
diff --git a/dev-cpp/gstreamermm/gstreamermm-1.10.0.ebuild b/dev-cpp/gstreamermm/gstreamermm-1.10.0-r1.ebuild
index fced073bba0..8f28a2ec3d9 100644
--- a/dev-cpp/gstreamermm/gstreamermm-1.10.0.ebuild
+++ b/dev-cpp/gstreamermm/gstreamermm-1.10.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
diff --git a/dev-cpp/gtest/gtest-1.11.0.ebuild b/dev-cpp/gtest/gtest-1.11.0.ebuild
index 89518bffd1d..7d212e72266 100644
--- a/dev-cpp/gtest/gtest-1.11.0.ebuild
+++ b/dev-cpp/gtest/gtest-1.11.0.ebuild
@@ -22,7 +22,7 @@ else
-> ${P}.tar.gz"
S="${WORKDIR}"/googletest-${GOOGLETEST_COMMIT}
fi
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
DESCRIPTION="Google C++ Testing Framework"
diff --git a/dev-cpp/gtkmm/Manifest b/dev-cpp/gtkmm/Manifest
index 58c7f6edc8e..8fa676283af 100644
--- a/dev-cpp/gtkmm/Manifest
+++ b/dev-cpp/gtkmm/Manifest
@@ -1,3 +1,4 @@
DIST gtkmm-2.24.5.tar.xz 12022024 BLAKE2B 6b2bca9fe6ad81cd956e1f3cc3140bc503b78386cf3931c8eeac08c8b2a08c73450bdbb703d1febaee67cdf834093ff5e89790f866357190822613a68a596ad3 SHA512 c50e52830977c37181439f4b82a30ac8bead0cf9022d2bec8225f8dc33e08414f863bf67056e1938fae8f888c09a5a6d757acc011fa9331a78caa6bb626dd51e
DIST gtkmm-3.24.5.tar.xz 13540488 BLAKE2B b55c55e4bb56bc835be9c09dae59ee103fb0ae80ee99bb54c36c366686f4f1a0309435e91c2e323d7ebfabf7922b76ac85de6a1132c53ab708ba17be661d834b SHA512 8cc5aed26cc631123a5b38bc19643cf9e900beb38681b29ead9049f6b8f930f0b8ace317b8290279ab89cad85075dcb66863174082f77a2b67e4d8bd3c29de49
DIST gtkmm-4.2.0.tar.xz 13850496 BLAKE2B 0e39824085fde11ebe3ecd65e3fbdb1778f307292a51b98955f4fa1418e7d1a349838126093b0a2b6d628b66d39bffffba76f66d2928999f777a4abb7961dc77 SHA512 c4532c427da0a37e4f8ba6f0e6d3975c3f84db461bc08263a4a81e6ee9e750112a2b4b0c5000ba22f8fd4fc5f833ef320f2c1f56580157f7ae41667ff15ccc72
+DIST gtkmm-4.4.0.tar.xz 13829052 BLAKE2B 1572f4fcbd15526b980a511b10eb0663964ea1fdc5b5f728399415bf053f913646c4c5fc7bf6f93feae9749693260e2d09fd04ed93a7150993f36ac17645d7be SHA512 d6f20213e9ea7a13e2b9822f220a5cdeaef9a9406abee813e0eebdb540839f25f4c19cc7669c24184bef471f5529a7897cd16ee679266148f3181dd2cfa39eb4
diff --git a/dev-cpp/gtkmm/gtkmm-3.24.5.ebuild b/dev-cpp/gtkmm/gtkmm-3.24.5.ebuild
index e482e204b76..f386d00d417 100644
--- a/dev-cpp/gtkmm/gtkmm-3.24.5.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-3.24.5.ebuild
@@ -3,7 +3,7 @@
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/gtkmm-4.2.0.ebuild b/dev-cpp/gtkmm/gtkmm-4.2.0.ebuild
index eb7e2245e9f..3d04a8cafe5 100644
--- a/dev-cpp/gtkmm/gtkmm-4.2.0.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-4.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -11,7 +11,7 @@ HOMEPAGE="https://www.gtkmm.org"
LICENSE="LGPL-2.1+"
SLOT="4.0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
IUSE="doc test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/gtkmm/gtkmm-4.4.0.ebuild b/dev-cpp/gtkmm/gtkmm-4.4.0.ebuild
new file mode 100644
index 00000000000..f3e7943a72b
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-4.4.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit gnome.org meson python-any-r1 virtualx
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="4.0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="doc test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.68.0:2.68[doc?]
+ >=gui-libs/gtk-4.4.0:4
+ >=dev-cpp/cairomm-1.15.4:1.16[doc?]
+ >=dev-cpp/pangomm-2.48.0:2.48[doc?]
+ >=x11-libs/gdk-pixbuf-2.35.5:2
+ >=media-libs/libepoxy-1.2
+"
+DEPEND="
+ ${RDEPEND}
+ doc? ( dev-libs/libsigc++:3 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen[dot]
+ dev-lang/perl
+ dev-libs/libxslt
+ )
+ ${PYTHON_DEPS}
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dbuild-demos=false
+ $(meson_use doc build-documentation)
+ $(meson_use test build-tests)
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}
diff --git a/dev-cpp/gulrak-filesystem/Manifest b/dev-cpp/gulrak-filesystem/Manifest
new file mode 100644
index 00000000000..570717e1d82
--- /dev/null
+++ b/dev-cpp/gulrak-filesystem/Manifest
@@ -0,0 +1 @@
+DIST gulrak-filesystem-1.5.10.tar.gz 176873 BLAKE2B 0c9ccfd918ede195c65a25a361c9d3a7acca99d2e5e917911a5dcd7e74c989c291f37e962943771860ea8b14f26d066863faea4dd17cb25d44aa9061913d5e5c SHA512 470dd9e1c4358f9d8d9f531d8c3c6716cdd156c815315748436a1dc3caf095d320e58eae2274df8c15e293cc96170752fb00aed8ad2210d417b174c13297fbac
diff --git a/dev-cpp/gulrak-filesystem/gulrak-filesystem-1.5.10.ebuild b/dev-cpp/gulrak-filesystem/gulrak-filesystem-1.5.10.ebuild
new file mode 100644
index 00000000000..ea6c138fc1a
--- /dev/null
+++ b/dev-cpp/gulrak-filesystem/gulrak-filesystem-1.5.10.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Header-only single-file std::filesystem compatible helper library"
+HOMEPAGE="https://github.com/gulrak/filesystem"
+SRC_URI="https://github.com/gulrak/filesystem/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+S="${WORKDIR}/${P#*-}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DGHC_FILESYSTEM_BUILD_EXAMPLES=OFF
+ -DGHC_FILESYSTEM_BUILD_TESTING=$(usex test)
+ -DGHC_FILESYSTEM_WITH_INSTALL=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ docinto examples
+ use examples && dodoc examples/*.cpp
+}
diff --git a/dev-cpp/gulrak-filesystem/metadata.xml b/dev-cpp/gulrak-filesystem/metadata.xml
new file mode 100644
index 00000000000..e567ba1ed01
--- /dev/null
+++ b/dev-cpp/gulrak-filesystem/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">gulrak/filesystem</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/json11/json11-1.0.0.ebuild b/dev-cpp/json11/json11-1.0.0.ebuild
index 94fcfeb98c4..f19252f78fb 100644
--- a/dev-cpp/json11/json11-1.0.0.ebuild
+++ b/dev-cpp/json11/json11-1.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/dropbox/json11/archive/refs/tags/v${PV}.tar.gz -> ${
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
PATCHES=(
"${FILESDIR}"/${P}-fix-multiarch-install.patch
diff --git a/dev-cpp/json11/metadata.xml b/dev-cpp/json11/metadata.xml
index 87a759d410c..a7fa285c747 100644
--- a/dev-cpp/json11/metadata.xml
+++ b/dev-cpp/json11/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<name>Florian Schmaus</name>
diff --git a/dev-cpp/kokkos/kokkos-3.0.00.ebuild b/dev-cpp/kokkos/kokkos-3.0.00-r1.ebuild
index 26eebf60bcd..3f10ae6936c 100644
--- a/dev-cpp/kokkos/kokkos-3.0.00.ebuild
+++ b/dev-cpp/kokkos/kokkos-3.0.00-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,7 +16,7 @@ IUSE="+openmp test"
RESTRICT="!test? ( test )"
DEPEND="
- sys-apps/hwloc
+ sys-apps/hwloc:=
"
RDEPEND="${DEPEND}"
BDEPEND=""
diff --git a/dev-cpp/kokkos/kokkos-3.1.01.ebuild b/dev-cpp/kokkos/kokkos-3.1.01-r1.ebuild
index 2456f83dc2d..52828debf31 100644
--- a/dev-cpp/kokkos/kokkos-3.1.01.ebuild
+++ b/dev-cpp/kokkos/kokkos-3.1.01-r1.ebuild
@@ -11,11 +11,11 @@ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 -x86"
+KEYWORDS="amd64 -x86"
IUSE="+openmp test"
RESTRICT="!test? ( test )"
-DEPEND="sys-apps/hwloc"
+DEPEND="sys-apps/hwloc:="
RDEPEND="${DEPEND}"
BDEPEND=""
@@ -41,3 +41,14 @@ src_configure() {
cmake_src_configure
}
+
+src_test() {
+ local myctestargs=(
+ # Contains "death tests" which are known/expected(?) to fail
+ # https://github.com/kokkos/kokkos/issues/3033
+ # bug #791514
+ -E "(KokkosCore_UnitTest_OpenMP|KokkosCore_UnitTest_Serial)"
+ )
+
+ cmake_src_test
+}
diff --git a/dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild b/dev-cpp/libglademm/libglademm-2.6.7-r3.ebuild
index 4b75e756ca7..0a8fa5f985c 100644
--- a/dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild
+++ b/dev-cpp/libglademm/libglademm-2.6.7-r3.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
-GCONF_DEBUG="no"
+EAPI=8
+
GNOME_TARBALL_SUFFIX="bz2"
-inherit eutils flag-o-matic gnome2 multilib-minimal
+inherit gnome2 multilib-minimal
DESCRIPTION="C++ bindings for libglade"
HOMEPAGE="https://www.gtkmm.org"
@@ -20,9 +20,8 @@ RDEPEND="
>=dev-cpp/gtkmm-2.24.3:2.4[${MULTILIB_USEDEP}]
>=dev-cpp/glibmm-2.34.1:2[${MULTILIB_USEDEP}]
"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
-"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
src_prepare() {
# we will control install manually in install
@@ -33,8 +32,6 @@ src_prepare() {
sed -i 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
Makefile.am Makefile.in || die "sed Makefile.{am,in} failed (2)"
- append-cxxflags -std=c++11 #566584
-
gnome2_src_prepare
}
@@ -45,30 +42,22 @@ multilib_src_configure() {
multilib_src_compile() {
gnome2_src_compile
- if multilib_is_native_abi && use doc; then
- emake -C "docs/reference" all
- fi
+ multilib_is_native_abi && use doc && emake -C docs/reference all
}
multilib_src_install() {
gnome2_src_install
- if use examples; then
- emake -C "examples" distclean
- fi
+ use examples && emake -C examples distclean
}
multilib_src_install_all() {
+ use doc && HTML_DOCS=( docs/reference/html/. )
einstalldocs
- if use doc ; then
- dohtml -r docs/reference/html/*
- fi
-
if use examples; then
- find "${S}/examples" -name "Makefile*" -delete \
+ find examples/ -name 'Makefile*' -delete \
|| die "examples cleanup failed"
- insinto "/usr/share/doc/${PF}"
- doins -r examples
+ dodoc -r examples
fi
}
diff --git a/dev-cpp/libjson-rpc-cpp/Manifest b/dev-cpp/libjson-rpc-cpp/Manifest
index 6c0de9f1f33..9296ea8ddd5 100644
--- a/dev-cpp/libjson-rpc-cpp/Manifest
+++ b/dev-cpp/libjson-rpc-cpp/Manifest
@@ -1 +1,2 @@
DIST libjson-rpc-cpp-1.3.0.tar.gz 182354 BLAKE2B 512392c37e61833a98c1f682bdbb3ed0e3c72ff56f17407d49e5a0f134795daf5ff4c2702dd5222bfc8962b2c9a56c0c7856cc8fe1b923ea68c369a24d334b5c SHA512 4eb53c7b77845a0e845e42413c491dcfa1d6f72411276e8614dae6612edde8905013588465437ea39c5cc5700c2d48df07d15c83222924fc24e015fb9f7a02ea
+DIST libjson-rpc-cpp-1.4.0.tar.gz 179478 BLAKE2B 1b5807665a5e055790a6ca3e977845ab6b8dc7fbcaf6baece170567cc4c5b16202b74cb72f47136a075352ee408dac26de85cf02e41873cbbb55aeac1145e1a6 SHA512 28774604fe91f0893fb36017f648556dced71cb731f0f76c95084af5dd35e167b69a0f5fdb64557ff273f7dc971bc6c469e4f32ada35d7cac18add18baf2f5ae
diff --git a/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.4.0.ebuild b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.4.0.ebuild
new file mode 100644
index 00000000000..f1b78fc655f
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-1.4.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="JSON-RPC (1.0 & 2.0) framework for C++"
+HOMEPAGE="https://github.com/cinemast/libjson-rpc-cpp"
+SRC_URI="https://github.com/cinemast/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0/1"
+KEYWORDS="~amd64 ~x86"
+IUSE="+http-client +http-server redis-client redis-server +stubgen test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/jsoncpp:=
+ http-client? ( net-misc/curl:= )
+ http-server? ( net-libs/libmicrohttpd:= )
+ redis-client? ( dev-libs/hiredis:= )
+ redis-server? ( dev-libs/hiredis:= )
+ stubgen? ( dev-libs/argtable:= )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? ( dev-cpp/catch:0 )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHTTP_CLIENT=$(usex http-client)
+ -DHTTP_SERVER=$(usex http-server)
+ -DREDIS_CLIENT=$(usex redis-client)
+ -DREDIS_SERVER=$(usex redis-server)
+ # they have no deps
+ -DTCP_SOCKET_CLIENT=ON
+ -DTCP_SOCKET_SERVER=ON
+ -DSERIAL_PORT_CLIENT=ON
+ -DSERIAL_PORT_SERVER=ON
+ -DUNIX_DOMAIN_SOCKET_CLIENT=ON
+ -DUNIX_DOMAIN_SOCKET_SERVER=ON
+ # they are not installed
+ -DCOMPILE_EXAMPLES=OFF
+ -DCOMPILE_STUBGEN=$(usex stubgen)
+ -DCOMPILE_TESTS=$(usex test)
+ -DCATCH_INCLUDE_DIR="${EPREFIX}/usr/include/catch2"
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ # Tests fail randomly when run in parallel
+ local MAKEOPTS=-j1
+ cmake_src_test
+}
diff --git a/dev-cpp/libxmlpp/libxmlpp-2.40.1-r1.ebuild b/dev-cpp/libxmlpp/libxmlpp-2.40.1-r2.ebuild
index dbcdc3dcd83..0cee82eb444 100644
--- a/dev-cpp/libxmlpp/libxmlpp-2.40.1-r1.ebuild
+++ b/dev-cpp/libxmlpp/libxmlpp-2.40.1-r2.ebuild
@@ -1,8 +1,8 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="5"
-GCONF_DEBUG="no"
+EAPI=8
+
GNOME_ORG_MODULE="${PN/pp/++}"
inherit gnome2 multilib-minimal
@@ -19,9 +19,8 @@ RDEPEND="
>=dev-libs/libxml2-2.7.7[${MULTILIB_USEDEP}]
>=dev-cpp/glibmm-2.32:2[${MULTILIB_USEDEP}]
"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
-"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
multilib_src_prepare() {
gnome2_src_prepare
diff --git a/dev-cpp/lucene++/lucene++-3.0.7-r2.ebuild b/dev-cpp/lucene++/lucene++-3.0.7-r3.ebuild
index 30c7d8b5fa3..4084b877157 100644
--- a/dev-cpp/lucene++/lucene++-3.0.7-r2.ebuild
+++ b/dev-cpp/lucene++/lucene++-3.0.7-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -15,7 +15,7 @@ SLOT="0"
KEYWORDS="amd64 ~hppa ppc ppc64 sparc x86"
IUSE="debug"
-DEPEND="dev-libs/boost:="
+DEPEND="dev-libs/boost:=[zlib]"
RDEPEND="${DEPEND}"
RESTRICT="test"
diff --git a/dev-cpp/ms-gsl/ms-gsl-3.1.0.ebuild b/dev-cpp/ms-gsl/ms-gsl-3.1.0.ebuild
index 3e690129c15..f5c2d7ee0ce 100644
--- a/dev-cpp/ms-gsl/ms-gsl-3.1.0.ebuild
+++ b/dev-cpp/ms-gsl/ms-gsl-3.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -13,7 +13,7 @@ S="${WORKDIR}/GSL-${PV}"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/muParser/Manifest b/dev-cpp/muParser/Manifest
index 95b8c055fdc..01cb9ff97db 100644
--- a/dev-cpp/muParser/Manifest
+++ b/dev-cpp/muParser/Manifest
@@ -1 +1,2 @@
DIST muParser-2.2.6.1.tar.gz 755653 BLAKE2B b3b6b8da57c0e8a0bda74038689d444ba8da00d6cce80030d8b35693209f0293874e4822c4941974be21fd4b7c09ba7df2c9cef861bc10b890aae4f641040faf SHA512 01bfc8cc48158c8413ae5e1da2ddbac1c9f0b9075470b1ab75853587d641dd195ebea268e1060a340098fd8015bc5f77d8e9cde5f81cffeade2f157c5f295496
+DIST muParser-2.3.2.tar.gz 103979 BLAKE2B f892b4d440a1b7326be27aa0a2b703ccafc02de5e881ef4780e8907688cf7905284f3e5f5855ad2596683f1dad309d287ebae527d917ebf5e0dad045551df7de SHA512 8ef5c8b3834da3995a782b7364a4eb4197fb706bee4cadabe5511d2a9cf2912c3db6de422a91eff7f9690f8c9c355b9900335e940749d5c243cb732ac1992aef
diff --git a/dev-cpp/muParser/files/muParser-2.3-export-cmake.patch b/dev-cpp/muParser/files/muParser-2.3-export-cmake.patch
new file mode 100644
index 00000000000..79254626db6
--- /dev/null
+++ b/dev-cpp/muParser/files/muParser-2.3-export-cmake.patch
@@ -0,0 +1,405 @@
+From a9e6626c9b2e250eb9161c767d2fb2e5a07315e2 Mon Sep 17 00:00:00 2001
+From: Francis Giraldeau <francis.giraldeau@nrc-cnrc.gc.ca>
+Date: Wed, 8 Jul 2020 14:59:27 -0400
+Subject: [PATCH] Export muparser cmake targets
+
+Export muparser targets, such that client projects can
+import it using find_package(). This mechanism for both the build tree
+and the install tree. The provided example3 shows how to import muparser
+targets.
+
+Signed-off-by: Francis Giraldeau <francis.giraldeau@nrc-cnrc.gc.ca>
+Signed-off-by: Alexey Shvetsov <alexxy@gentoo.org>
+---
+ CMakeLists.txt | 39 ++++++-
+ CMakeLists.txt.orig | 173 ++++++++++++++++++++++++++++++++
+ muparserConfig.cmake.in | 6 ++
+ samples/example3/CMakeLists.txt | 12 +++
+ samples/example3/README.md | 2 +
+ samples/example3/build.sh | 23 +++++
+ samples/example3/example3.cpp | 49 +++++++++
+ 7 files changed, 301 insertions(+), 3 deletions(-)
+ create mode 100644 CMakeLists.txt.orig
+ create mode 100644 muparserConfig.cmake.in
+ create mode 100644 samples/example3/CMakeLists.txt
+ create mode 100644 samples/example3/README.md
+ create mode 100755 samples/example3/build.sh
+ create mode 100644 samples/example3/example3.cpp
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index cfdce99..aecc67d 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -55,6 +55,11 @@ add_library(muparser
+ src/muParserTest.cpp
+ src/muParserTokenReader.cpp
+ )
++# use the headers in the build-tree or the installed ones
++target_include_directories(muparser PUBLIC
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
++ $<INSTALL_INTERFACE:include>
++)
+
+ # this compiles the "DLL" interface (C API)
+ target_compile_definitions(muparser PRIVATE MUPARSER_DLL)
+@@ -77,9 +82,6 @@ set_target_properties(muparser PROPERTIES
+ SOVERSION ${MUPARSER_VERSION_MAJOR}
+ )
+
+-# Install the export set for use with the install-tree
+-export(TARGETS muparser FILE "${CMAKE_BINARY_DIR}/muparser-targets.cmake")
+-
+ if(ENABLE_SAMPLES)
+ add_executable(example1 samples/example1/example1.cpp)
+ target_link_libraries(example1 muparser)
+@@ -91,8 +93,10 @@ endif()
+ # The GNUInstallDirs defines ${CMAKE_INSTALL_DATAROOTDIR}
+ # See https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
+ include (GNUInstallDirs)
++set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/muparser)
+
+ install(TARGETS muparser
++ EXPORT muparser-export
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT RuntimeLibraries
+@@ -116,6 +120,35 @@ install(FILES
+ COMPONENT Development
+ )
+
++# Export the target under the build-tree (no need to install)
++export(EXPORT muparser-export
++ FILE "${CMAKE_BINARY_DIR}/muparser-targets.cmake"
++ NAMESPACE muparser::
++)
++
++# Export the installed target (typically for packaging)
++include(CMakePackageConfigHelpers)
++write_basic_package_version_file(
++ "${CMAKE_CURRENT_BINARY_DIR}/muparserConfigVersion.cmake"
++ VERSION ${MUPARSER_VERSION}
++ COMPATIBILITY AnyNewerVersion
++)
++configure_file(muparserConfig.cmake.in
++ "${CMAKE_CURRENT_BINARY_DIR}/muparserConfig.cmake"
++ COPYONLY
++)
++install(EXPORT muparser-export
++ FILE muparser-targets.cmake
++ NAMESPACE muparser::
++ DESTINATION ${INSTALL_CONFIGDIR}
++)
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/muparserConfig.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/muparserConfigVersion.cmake
++ DESTINATION ${INSTALL_CONFIGDIR}
++ COMPONENT Development
++)
++
+ # Define variables for the pkg-config file
+ set(PACKAGE_NAME muparser)
+ configure_file(
+diff --git a/CMakeLists.txt.orig b/CMakeLists.txt.orig
+new file mode 100644
+index 0000000..b496584
+--- /dev/null
++++ b/CMakeLists.txt.orig
+@@ -0,0 +1,173 @@
++# CMake based on work from @xantares
++cmake_minimum_required (VERSION 3.1.0)
++set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD_REQUIRED ON)
++
++# By default, build in Release mode. Must appear before project() command
++if (NOT DEFINED CMAKE_BUILD_TYPE)
++ set (CMAKE_BUILD_TYPE Release CACHE STRING "Build type")
++endif ()
++
++project(muParserProject)
++
++
++
++# Bump versions on release
++set(MUPARSER_VERSION_MAJOR 2)
++set(MUPARSER_VERSION_MINOR 3)
++set(MUPARSER_VERSION_PATCH 2)
++set(MUPARSER_VERSION ${MUPARSER_VERSION_MAJOR}.${MUPARSER_VERSION_MINOR}.${MUPARSER_VERSION_PATCH})
++
++# Build options
++option(ENABLE_SAMPLES "Build the samples" ON)
++option(ENABLE_OPENMP "Enable OpenMP for multithreading" ON)
++option(BUILD_SHARED_LIBS "Build shared/static libs" ON)
++
++if(ENABLE_OPENMP)
++ find_package(OpenMP REQUIRED)
++ set(CMAKE_CXX_FLAGS "${OpenMP_CXX_FLAGS} ${CMAKE_CXX_FLAGS}")
++ set(CMAKE_SHARED_LIBRARY_CXX_FLAGS "${OpenMP_CXX_FLAGS} ${CMAKE_SHARED_LIBRARY_CXX_FLAGS}")
++endif()
++
++
++# Credit: https://stackoverflow.com/questions/2368811/how-to-set-warning-level-in-cmake/3818084
++if(MSVC)
++ # Force to always compile with W4
++ if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
++ string(REGEX REPLACE "/W[0-4]" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
++ else()
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4")
++ endif()
++elseif(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
++ # Update if necessary
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-long-long -pedantic")
++endif()
++
++include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
++add_library(muparser
++ src/muParserBase.cpp
++ src/muParserBytecode.cpp
++ src/muParserCallback.cpp
++ src/muParser.cpp
++ src/muParserDLL.cpp
++ src/muParserError.cpp
++ src/muParserInt.cpp
++ src/muParserTest.cpp
++ src/muParserTokenReader.cpp
++)
++<<<<<<< HEAD
++=======
++# use the headers in the build-tree or the installed ones
++target_include_directories(muparser PUBLIC
++ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
++ $<INSTALL_INTERFACE:include>
++)
++>>>>>>> e259981 (Export muparser cmake targets)
++
++# this compiles the "DLL" interface (C API)
++target_compile_definitions(muparser PRIVATE MUPARSER_DLL)
++
++if (BUILD_SHARED_LIBS)
++ target_compile_definitions(muparser PRIVATE MUPARSERLIB_EXPORTS)
++else ()
++ target_compile_definitions(muparser PUBLIC MUPARSER_STATIC)
++endif()
++
++if (CMAKE_BUILD_TYPE STREQUAL Debug)
++ target_compile_definitions(muparser PRIVATE _DEBUG)
++endif ()
++
++if(ENABLE_OPENMP)
++ target_compile_definitions(muparser PRIVATE MUP_USE_OPENMP)
++endif()
++set_target_properties(muparser PROPERTIES
++ VERSION ${MUPARSER_VERSION}
++ SOVERSION ${MUPARSER_VERSION_MAJOR}
++)
++
++if(ENABLE_SAMPLES)
++ add_executable(example1 samples/example1/example1.cpp)
++ target_link_libraries(example1 muparser)
++
++ add_executable(example2 samples/example2/example2.c)
++ target_link_libraries(example2 muparser)
++endif()
++
++# The GNUInstallDirs defines ${CMAKE_INSTALL_DATAROOTDIR}
++# See https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
++include (GNUInstallDirs)
++set(INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/muparser)
++
++install(TARGETS muparser
++ EXPORT muparser-export
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT RuntimeLibraries
++)
++
++install(FILES
++ include/muParserBase.h
++ include/muParserBytecode.h
++ include/muParserCallback.h
++ include/muParserDef.h
++ include/muParserDLL.h
++ include/muParserError.h
++ include/muParserFixes.h
++ include/muParser.h
++ include/muParserInt.h
++ include/muParserTemplateMagic.h
++ include/muParserTest.h
++ include/muParserToken.h
++ include/muParserTokenReader.h
++ DESTINATION include
++ COMPONENT Development
++)
++
++# Export the target under the build-tree (no need to install)
++export(EXPORT muparser-export
++ FILE "${CMAKE_BINARY_DIR}/muparser-targets.cmake"
++ NAMESPACE muparser::
++)
++
++# Export the installed target (typically for packaging)
++include(CMakePackageConfigHelpers)
++write_basic_package_version_file(
++ "${CMAKE_CURRENT_BINARY_DIR}/muparserConfigVersion.cmake"
++ VERSION ${MUPARSER_VERSION}
++ COMPATIBILITY AnyNewerVersion
++)
++configure_file(muparserConfig.cmake.in
++ "${CMAKE_CURRENT_BINARY_DIR}/muparserConfig.cmake"
++ COPYONLY
++)
++install(EXPORT muparser-export
++ FILE muparser-targets.cmake
++ NAMESPACE muparser::
++ DESTINATION ${INSTALL_CONFIGDIR}
++)
++install(FILES
++ ${CMAKE_CURRENT_BINARY_DIR}/muparserConfig.cmake
++ ${CMAKE_CURRENT_BINARY_DIR}/muparserConfigVersion.cmake
++ DESTINATION ${INSTALL_CONFIGDIR}
++ COMPONENT Development
++)
++
++# Define variables for the pkg-config file
++set(PACKAGE_NAME muparser)
++configure_file(
++ muparser.pc.in
++ ${CMAKE_BINARY_DIR}/muparser.pc
++ @ONLY
++)
++install(
++ FILES ${CMAKE_BINARY_DIR}/muparser.pc
++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
++)
++
++include(CTest)
++enable_testing()
++
++add_executable (t_ParserTest test/t_ParserTest.cpp)
++target_link_libraries(t_ParserTest muparser)
++add_test (NAME ParserTest COMMAND t_ParserTest)
++
+diff --git a/muparserConfig.cmake.in b/muparserConfig.cmake.in
+new file mode 100644
+index 0000000..6a28a5e
+--- /dev/null
++++ b/muparserConfig.cmake.in
+@@ -0,0 +1,6 @@
++get_filename_component(muparser_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
++include(CMakeFindDependencyMacro)
++
++if(NOT TARGET muparser::muparser)
++ include("${muparser_CMAKE_DIR}/muparser-targets.cmake")
++endif()
+diff --git a/samples/example3/CMakeLists.txt b/samples/example3/CMakeLists.txt
+new file mode 100644
+index 0000000..0049c3e
+--- /dev/null
++++ b/samples/example3/CMakeLists.txt
+@@ -0,0 +1,12 @@
++cmake_minimum_required(VERSION 3.2)
++project(muparser-example3)
++
++# find muparser target already installed
++find_package(muparser 2.0 REQUIRED)
++
++add_executable(example3 example3.cpp)
++target_link_libraries(example3 muparser::muparser)
++
++include(CTest)
++add_test(example3 example3)
++
+diff --git a/samples/example3/README.md b/samples/example3/README.md
+new file mode 100644
+index 0000000..73e15d4
+--- /dev/null
++++ b/samples/example3/README.md
+@@ -0,0 +1,2 @@
++The example3 shows how to import and use muparser as an installed external
++dependency using cmake `find_package()`.
+diff --git a/samples/example3/build.sh b/samples/example3/build.sh
+new file mode 100755
+index 0000000..289fac9
+--- /dev/null
++++ b/samples/example3/build.sh
+@@ -0,0 +1,23 @@
++#!/bin/bash -x
++
++CWD="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
++MP_SOURCES=${CWD}/../../
++MP_BUILD=${CWD}/muparser-build
++MP_INSTALL=${CWD}/muparser-install
++EX3_BUILD_TREE=${CWD}/example3-using-buildtree
++EX3_INSTALL_TREE=${CWD}/example3-using-installtree
++
++# Build muparser and install it
++cmake -H${MP_SOURCES} -B${MP_BUILD} -DCMAKE_INSTALL_PREFIX=${MP_INSTALL}
++cmake --build ${MP_BUILD} --target install
++
++# Build the example using muparser build tree
++cmake -H${CWD} -B${EX3_BUILD_TREE} -DCMAKE_PREFIX_PATH=${MP_BUILD}
++cmake --build ${EX3_BUILD_TREE} --target all
++cmake --build ${EX3_BUILD_TREE} --target test
++
++# Build the example using muparser install tree
++cmake -H${CWD} -B${EX3_INSTALL_TREE} -DCMAKE_PREFIX_PATH=${MP_INSTALL}
++cmake --build ${EX3_INSTALL_TREE} --target all
++cmake --build ${EX3_INSTALL_TREE} --target test
++
+diff --git a/samples/example3/example3.cpp b/samples/example3/example3.cpp
+new file mode 100644
+index 0000000..78df86f
+--- /dev/null
++++ b/samples/example3/example3.cpp
+@@ -0,0 +1,49 @@
++/*
++
++ _____ __ _____________ _______ ______ ___________
++ / \| | \____ \__ \\_ __ \/ ___// __ \_ __ \
++ | Y Y \ | / |_> > __ \| | \/\___ \\ ___/| | \/
++ |__|_| /____/| __(____ /__| /____ >\___ >__|
++ \/ |__| \/ \/ \/
++ Copyright (C) 2004 - 2020 Ingo Berg
++
++ Redistribution and use in source and binary forms, with or without modification, are permitted
++ provided that the following conditions are met:
++
++ * Redistributions of source code must retain the above copyright notice, this list of
++ conditions and the following disclaimer.
++ * Redistributions in binary form must reproduce the above copyright notice, this list of
++ conditions and the following disclaimer in the documentation and/or other materials provided
++ with the distribution.
++
++ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
++ IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
++ FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
++ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
++ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
++ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
++ IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
++ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++*/
++
++// Small example using the cmake imported target. Include file and link library
++// should work automagically.
++
++#include <muParser.h>
++#include <muParserDef.h>
++
++int main()
++{
++ mu::Parser parser;
++
++ mu::value_type values[] = { 1, 2 };
++ parser.DefineVar("a", &values[0]);
++ parser.DefineVar("b", &values[1]);
++
++ std::string expr = "a + b";
++ parser.SetExpr("a + b");
++ mu::value_type ans = parser.Eval();
++ std::cout << expr << " == " << ans << "\n";
++
++ return (ans == 3.0) ? 0 : -1;
++}
+--
+2.33.1
+
diff --git a/dev-cpp/muParser/muParser-2.2.6.1.ebuild b/dev-cpp/muParser/muParser-2.2.6.1.ebuild
index 9dd3c113920..d8bd2f678d9 100644
--- a/dev-cpp/muParser/muParser-2.2.6.1.ebuild
+++ b/dev-cpp/muParser/muParser-2.2.6.1.ebuild
@@ -4,7 +4,7 @@
EAPI=7
DESCRIPTION="Library for parsing mathematical expressions"
-HOMEPAGE="http://muparser.beltoforion.de/"
+HOMEPAGE="https://beltoforion.de/en/muparser/"
SRC_URI="https://github.com/beltoforion/muparser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}"/muparser-${PV}
diff --git a/dev-cpp/muParser/muParser-2.3.2-r1.ebuild b/dev-cpp/muParser/muParser-2.3.2-r1.ebuild
new file mode 100644
index 00000000000..612fd5ad566
--- /dev/null
+++ b/dev-cpp/muParser/muParser-2.3.2-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Library for parsing mathematical expressions"
+HOMEPAGE="https://beltoforion.de/en/muparser/"
+SRC_URI="https://github.com/beltoforion/muparser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/muparser-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc openmp test"
+RESTRICT="!test? ( test )"
+
+PATCHES=( "${FILESDIR}/muParser-2.3-export-cmake.patch" )
+
+src_configure() {
+ mycmakeargs=(
+ -DENABLE_OPENMP=$(usex openmp)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_src_compile test
+}
+
+src_install() {
+ cmake_src_install
+ dodoc Changes.txt
+}
diff --git a/dev-cpp/nlohmann_json/Manifest b/dev-cpp/nlohmann_json/Manifest
index 5234c2e1989..002d3c70b34 100644
--- a/dev-cpp/nlohmann_json/Manifest
+++ b/dev-cpp/nlohmann_json/Manifest
@@ -1,5 +1,6 @@
DIST nlohmann_json-3.10.0.tar.gz 7006504 BLAKE2B 2ccb2e50a46a8579b6a848f6fee35ad1ff11a1491157bdf5d343133f24d4468ddfabc4fe4e9909b47011d52b3604566d5d7e275f0731c8d91efd1e1b9c545ef2 SHA512 1531780110260ea4cd8fbe79d860f1ea46fa8377d520669f938ddb5f8a4b11fe550fc7d2d978a281d5ddcc511447d160a2f68c06583672496c57c6672a4036a1
DIST nlohmann_json-3.10.2.tar.gz 7054440 BLAKE2B e7da213fb75d528b1f5425822f5b598e882f232a67670aaae2d8f89c76e72ee23fa3344d1acfef2b0338a6a423d17b231b7e047ff064c984c2ec7783b721a22c SHA512 9a399dfc8aab19c9fc12470e8087895b1c05d48a9bcc731b483d8670c361cffb2adc3ccced822b7f17255e88387a441d619c4e1f1afeb702d1d035ad24fe22ed
DIST nlohmann_json-3.10.4.tar.gz 7062443 BLAKE2B 7f526d12c4ce8148c874c76d280090ef69ae3adf817b63758bbcc23ff9476e119ede90bebc397b9bb84b54012f057e3e010d643c595b4699a8ecd437a5a3f913 SHA512 f78592db6218165cbc74c10bcba40366f1bfea84405b7ee25fe97a056d5b7a15aeeb956d93296673928dcbd6e26ffcfb152f885b4a44d5d55751396ccf090835
+DIST nlohmann_json-3.10.5.tar.gz 7021996 BLAKE2B d4219d2f3168341eb8bd8f84af364e53f6caae67aa080b1ca0479216a98ee0256d5436243273b3c12ccdca904b4b17dbb90cf445fc273424d7dab6d2b95632bc SHA512 4a9d6416f383e76bf95425fc02a4e12c605fcbcae910b704e354396a493454cf8a1ffbecba11f231e020ffd2842908df7e67dbc09f62d1202d40b6815c24cfd2
DIST nlohmann_json-3.9.1.tar.gz 6882818 BLAKE2B 97276dc2345ac2070ac2d30d0a2e1953bb2f6ecde437eaed87dad46c108daa4b21c662a047e7d4e7c180179df9e7dfb71f545f3e42b2528201630d9093539090 SHA512 e0eb4727bea993af984f832e069d03a21219befae0f24ee49e67a1144cf1e8428dcf2e37f683aedb8d14118545d5087f2b7d822a576944cef3e590a12be51642
DIST nlohmann_json-testdata-3.0.0.tar.gz 112348454 BLAKE2B f0a47b41805bf1426f612e9a82efea2a3e5b1c15740c1c531d859e60dc5daeb85209b4fe363fd8fb84e3bbf01a2578c74538ba3e769726494047979f5a4d468d SHA512 d9af8419b837c592ec7519cd5772651c761078a9c43cf2a309cee55c323aee0df0c233fb58a07d5ee2e77492ac8b16398de234b387eae037a60e3c9ba5b08891
diff --git a/dev-cpp/nlohmann_json/nlohmann_json-3.10.5.ebuild b/dev-cpp/nlohmann_json/nlohmann_json-3.10.5.ebuild
new file mode 100644
index 00000000000..8bc260638ed
--- /dev/null
+++ b/dev-cpp/nlohmann_json/nlohmann_json-3.10.5.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+#DOCS_BUILDER="mkdocs"
+# Needs unpackaged plantuml-markdown too
+# ... but plantuml (Python bindings anyway) need network access to generate bits at runtime.
+#DOCS_DEPEND="dev-python/mkdocs-material-extensions dev-python/mkdocs-minify-plugin"
+#DOCS_DIR="doc/mkdocs"
+inherit cmake
+
+# Check https://github.com/nlohmann/json/blob/develop/cmake/download_test_data.cmake to find test archive version
+TEST_VERSION="3.0.0"
+DESCRIPTION="JSON for Modern C++"
+HOMEPAGE="https://github.com/nlohmann/json https://nlohmann.github.io/json/"
+SRC_URI="
+ https://github.com/nlohmann/json/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ test? ( https://github.com/nlohmann/json_test_data/archive/v${TEST_VERSION}.tar.gz -> ${PN}-testdata-${TEST_VERSION}.tar.gz )"
+S="${WORKDIR}/json-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+# Need to report failing tests upstream
+# Tests only just added, large test suite, majority pass
+RESTRICT="test"
+
+DOCS=( ChangeLog.md README.md )
+
+src_configure() {
+ # Tests are built by default so we can't group the test logic below
+ local mycmakeargs=(
+ -DJSON_MultipleHeaders=ON
+ -DJSON_BuildTests=$(usex test)
+ )
+
+ # Define test data directory here to avoid unused var QA warning, bug #747826
+ use test && mycmakeargs+=( -DJSON_TestDataDirectory="${S}"/json_test_data )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+}
+
+src_test() {
+ cd "${BUILD_DIR}/test" || die
+
+ # Skip certain tests needing git per upstream
+ # https://github.com/nlohmann/json/issues/2189
+ local myctestargs=(
+ "-LE git_required"
+ )
+
+ cmake_src_test
+}
diff --git a/dev-cpp/notcurses/Manifest b/dev-cpp/notcurses/Manifest
index 186a731fc8e..2521355cf60 100644
--- a/dev-cpp/notcurses/Manifest
+++ b/dev-cpp/notcurses/Manifest
@@ -1,2 +1,2 @@
-DIST notcurses-2.4.3.tar.gz 10070959 BLAKE2B 8be967d7f1d49936c12c46f4d9c54ac83e974e4f637fa224000a2459d4143590264dc75c4d36d55ec9cfaa0d737de3298e42156a25b3eef84109883b3e80e8ae SHA512 a16d4e8d8108f565fd6f073b9529b6d7d52569d5241ee0df7186b44800a82a5e488d275c01c6af045419a2ae960f14a99fffe0cf5d600b5901973d93d3c82f82
-DIST notcurses-doc-2.4.3.tar.gz 132158 BLAKE2B f96f41c659903e6fbac56318adf1de1b26dd7052e4c5958d60ff7f51c4c30ccf2a522f2581a69a7f54d1cd7774bb72fffc0bba760366294a261a7086611ff696 SHA512 7972d61cefcfa4cfdc3f6138202e1448c37dc2b3154307e4a7c0734e67b80919db75520f40f53c198c268f0f905720e75de4ef0ea7a6c0cd196a355b8dbf1e5c
+DIST notcurses-3.0.0.tar.gz 10101772 BLAKE2B 9caa1421d0c499548151ed6d673d6ba6435bdd5608ead3f029b724dc7b3cb9dd5f64204ec32fa38ff17744d9f4691aba083579c983bd9c8fa6afeb10ce5c9c0d SHA512 0bc2a5256feb73a047b7d9c9fb69809aeee41c21a564f7c4be1cd3c0ab6fe68b3db2c5959f678748a2340203e8822459c370b674a3ef6867c17b4b63956f5d25
+DIST notcurses-doc-3.0.0.tar.gz 141494 BLAKE2B 7c4e464672239065432b0381c67b79540a9bddf304be90b9140ed360193b7face0aabf5086a877cdc5ef12aca69a76dc30702a65d703a28b2a61d5876752a0c8 SHA512 ab4ddac027963c5c9203f48a4a51bdcecaca28cef3158c7cc505f48eb89eee9b7f3399f0fa1919ee8959b69139a051c860c72b5feef9e417750fb3141f521ab6
diff --git a/dev-cpp/notcurses/notcurses-2.4.3.ebuild b/dev-cpp/notcurses/notcurses-3.0.0.ebuild
index 238a985a305..1f79a82691e 100644
--- a/dev-cpp/notcurses/notcurses-2.4.3.ebuild
+++ b/dev-cpp/notcurses/notcurses-3.0.0.ebuild
@@ -17,13 +17,12 @@ KEYWORDS="~amd64 ~x86"
DEPEND="dev-libs/libunistring:=
media-video/ffmpeg:=
sys-libs/gpm
- sys-libs/ncurses:=
- >=sys-libs/readline-8.0:=
- sys-libs/zlib"
+ sys-libs/ncurses:="
RDEPEND="${DEPEND}"
src_configure() {
local mycmakeargs=(
+ -DUSE_DEFLATE=OFF
-DUSE_DOCTEST=OFF
-DUSE_GPM=ON
-DUSE_MULTIMEDIA=ffmpeg
diff --git a/dev-cpp/pangomm/Manifest b/dev-cpp/pangomm/Manifest
index 3fdd6184d2b..06c798d3e1b 100644
--- a/dev-cpp/pangomm/Manifest
+++ b/dev-cpp/pangomm/Manifest
@@ -1,2 +1,4 @@
DIST pangomm-2.42.2.tar.xz 656760 BLAKE2B 8fae779aa78b2337b83759adc7aadec1f61c08c54d892e3cdd05180e2ab032a61faa72c39281fab649bcd08591c5d7ace9ea65b25f76ce17d6f4d96f38900b6a SHA512 5e4826d64c0178527b4df73e901d2fdf5661d41777e189f5e2d4b26577e42689efaccf5a28502246c6b3926571ccd5876cb23d33267b44ace7ee164322c14667
+DIST pangomm-2.46.2.tar.xz 674892 BLAKE2B ac86ef1a229dca29eeb41d3751128bed56d182cecfc6655a478b5a7473d10782fe98cdfee4db6f5afbfe9fb8adbf0e646004aa69c4c4058191078c7b5716434b SHA512 79cad137ec9f22e57a177332df6c6e735aa3baf81df36fc706e81e7a89f23ce3179337507388f65a0d0a74733990dc3547c50243a4559dfd0bb065b1828c0474
DIST pangomm-2.48.1.tar.xz 675452 BLAKE2B bb012fc5cb66d5cb98f522e3706fdd35bcc5692fcd942f86ee1e20116590ceca26874c5a58bd3f8fac4f154700dfb37ea060747a6c3069e67adf83ba551e7abc SHA512 c204a1cb7a404f055d62880a760716c5567a835ca495cc5e01589ed59fabb332490e529de716c3438cefbc4428c025d6d01c71e4412b2843e3ab3a3175ccc2f4
+DIST pangomm-2.50.0.tar.xz 753592 BLAKE2B 0db7d43fe2d23e4cfc2b083a4d832c7875c63a261c6b10c62898bf428351ea7d8d05136a46f9498cdb78c51a0223ca988cbc3481041b997dc5d6a9f16f02ec91 SHA512 844850db93b8c4dab19dd364e674ee3d61b2fcb8e020ab3d314f240065ee17aeceea21e9ddc438a7d09d56410e3f82147a57425f76bb01e26d82872934269477
diff --git a/dev-cpp/pangomm/pangomm-2.42.2.ebuild b/dev-cpp/pangomm/pangomm-2.42.2-r1.ebuild
index 1415ead43d3..b5acddc83b1 100644
--- a/dev-cpp/pangomm/pangomm-2.42.2.ebuild
+++ b/dev-cpp/pangomm/pangomm-2.42.2-r1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for pango"
@@ -18,7 +18,7 @@ DEPEND="
>=dev-cpp/cairomm-1.2.2:0[doc?,${MULTILIB_USEDEP}]
>=dev-cpp/glibmm-2.48.0:2[doc?,${MULTILIB_USEDEP}]
dev-libs/libsigc++:2[doc?,${MULTILIB_USEDEP}]
- >=x11-libs/pango-1.41.0[${MULTILIB_USEDEP}]
+ <x11-libs/pango-1.50.0[${MULTILIB_USEDEP}]
"
RDEPEND="${DEPEND}"
BDEPEND="
@@ -33,6 +33,7 @@ BDEPEND="
multilib_src_configure() {
local emesonargs=(
+ -Dmaintainer-mode=false
$(meson_native_use_bool doc build-documentation)
)
meson_src_configure
diff --git a/dev-cpp/pangomm/pangomm-2.46.2.ebuild b/dev-cpp/pangomm/pangomm-2.46.2.ebuild
new file mode 100644
index 00000000000..9bb444efdde
--- /dev/null
+++ b/dev-cpp/pangomm/pangomm-2.46.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit gnome.org meson-multilib python-any-r1
+
+DESCRIPTION="C++ interface for pango"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="1.4"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="doc"
+
+DEPEND="
+ >=dev-cpp/cairomm-1.2.2:0[doc?,${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.48.0:2[doc?,${MULTILIB_USEDEP}]
+ dev-libs/libsigc++:2[doc?,${MULTILIB_USEDEP}]
+ >=x11-libs/pango-1.45.1[${MULTILIB_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen[dot]
+ dev-lang/perl
+ dev-libs/libxslt
+ )
+ ${PYTHON_DEPS}
+"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dmaintainer-mode=false
+ $(meson_native_use_bool doc build-documentation)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/pangomm/pangomm-2.48.1.ebuild b/dev-cpp/pangomm/pangomm-2.48.1.ebuild
index a7d98ee56e4..d3180893fed 100644
--- a/dev-cpp/pangomm/pangomm-2.48.1.ebuild
+++ b/dev-cpp/pangomm/pangomm-2.48.1.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_COMPAT=( python3_{8..10} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for pango"
@@ -11,7 +11,7 @@ HOMEPAGE="https://www.gtkmm.org"
LICENSE="LGPL-2.1+"
SLOT="2.48"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
IUSE="doc"
DEPEND="
@@ -33,6 +33,7 @@ BDEPEND="
multilib_src_configure() {
local emesonargs=(
+ -Dmaintainer-mode=false
$(meson_native_use_bool doc build-documentation)
)
meson_src_configure
diff --git a/dev-cpp/pangomm/pangomm-2.50.0.ebuild b/dev-cpp/pangomm/pangomm-2.50.0.ebuild
new file mode 100644
index 00000000000..7cbee5d0f71
--- /dev/null
+++ b/dev-cpp/pangomm/pangomm-2.50.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit gnome.org meson-multilib python-any-r1
+
+DESCRIPTION="C++ interface for pango"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="2.48"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="doc"
+
+DEPEND="
+ >=dev-cpp/cairomm-1.16.0:1.16[doc?,${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.68.0:2.68[doc?,${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-3:3[doc?,${MULTILIB_USEDEP}]
+ >=x11-libs/pango-1.49.4[${MULTILIB_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen[dot]
+ dev-lang/perl
+ dev-libs/libxslt
+ )
+ ${PYTHON_DEPS}
+"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dmaintainer-mode=false
+ $(meson_native_use_bool doc build-documentation)
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/popl/popl-1.2.0.ebuild b/dev-cpp/popl/popl-1.2.0.ebuild
index a83ee4c545b..c86b01b390a 100644
--- a/dev-cpp/popl/popl-1.2.0.ebuild
+++ b/dev-cpp/popl/popl-1.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -16,7 +16,7 @@ if [[ ${PV} == *9999 ]] ; then
else
SRC_URI="https://github.com/badaix/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 x86"
+ KEYWORDS="amd64 ~riscv x86"
fi
LICENSE="MIT"
diff --git a/dev-cpp/prometheus-cpp/Manifest b/dev-cpp/prometheus-cpp/Manifest
index e4f552e6847..eb903509a93 100644
--- a/dev-cpp/prometheus-cpp/Manifest
+++ b/dev-cpp/prometheus-cpp/Manifest
@@ -1,3 +1,2 @@
-DIST prometheus-cpp-0.12.2.tar.gz 55191 BLAKE2B f1430cf6b8ca8272c447e8c2a25af5fb0d515389cb1078f8836a9a1f1ba0e26cc43236e9c147219384df40d601b843219acb95ebc46bb1c2fce6d83a86724182 SHA512 9907658939b7956219c3623bd5997f341f4374fbce2ee606bd1d8df820779ed8dc70658a30aafbb47b9af645205c048270b23e701203e13286bc365094a441d3
-DIST prometheus-cpp-0.12.3.tar.gz 55510 BLAKE2B 8a9dffb4608f1d1f141726cf7bec3a19ca9040baca9871ff3aa950aa979b34319e704539ff3f2830a5c145645e9c3c0efc9e9b2c5c534d8b3745aaf1e9426763 SHA512 e8093db6e58d1672fd94daeed94f2c11f663145195bf878e0403973f2f4f62a3f9430cf6de1fc9ac0821b4b323e3faeb96199d450b3d7a04a5dee0e6f94ddc01
DIST prometheus-cpp-0.13.0.tar.gz 55448 BLAKE2B 5790e74f5bb783070b6928adf9d850dc59ff8507d580a96549e62a2ea9ca1cf5b5de0fb445dd373bbae6da3fdae59d1dbf2eca5e04dc3d6adb58e5c52da1e666 SHA512 d2c6708047cec1998697931d5e9b420dfa513ade9f298761b08ae87a5526cbe64476ebc56793c21d8c3d741e3a4db5ce8d27af1d39b4ca30a45de34f40fdca67
+DIST prometheus-cpp-1.0.0.tar.gz 56244 BLAKE2B 51ff199c0cd09367de873310a835b7a4a5893de11a6115b3de8ef142eb12b326ea7498a8adc155f3bbea6389da41eef91b5ef23cb0227ef1d1ceb64e4d7eac2e SHA512 baeb12725dd47b170e1ac94c23b2b18ba8aa11dedd95af7adee8fdf9ddebaddfca1ef75c30b1d65c94e1cfbcba2c41e0f4686f1a1de66beaba7dcd70ab190164
diff --git a/dev-cpp/prometheus-cpp/prometheus-cpp-0.12.2.ebuild b/dev-cpp/prometheus-cpp/prometheus-cpp-0.12.2.ebuild
deleted file mode 100644
index 9f22bf74150..00000000000
--- a/dev-cpp/prometheus-cpp/prometheus-cpp-0.12.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake
-
-DESCRIPTION="Prometheus Client Library for Modern C++"
-HOMEPAGE="https://github.com/jupp0r/prometheus-cpp"
-SRC_URI="https://github.com/jupp0r/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test zlib"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- net-misc/curl
- sys-libs/zlib
- www-servers/civetweb[cxx]"
-DEPEND="${RDEPEND}
- test? (
- dev-cpp/benchmark
- dev-cpp/gtest
- )"
-BDEPEND="virtual/pkgconfig"
-
-src_configure() {
- local mycmakeargs=(
- -DENABLE_PULL=yes
- -DENABLE_PUSH=yes
- -DENABLE_COMPRESSION=$(usex zlib)
- -DENABLE_TESTING=$(usex test)
- -DUSE_THIRDPARTY_LIBRARIES=OFF
- -DGENERATE_PKGCONFIG=ON
- -DRUN_IWYU=OFF
- )
-
- cmake_src_configure
-}
diff --git a/dev-cpp/prometheus-cpp/prometheus-cpp-0.12.3.ebuild b/dev-cpp/prometheus-cpp/prometheus-cpp-1.0.0.ebuild
index 62457df7398..07f8033472a 100644
--- a/dev-cpp/prometheus-cpp/prometheus-cpp-0.12.3.ebuild
+++ b/dev-cpp/prometheus-cpp/prometheus-cpp-1.0.0.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit cmake
diff --git a/dev-cpp/pystring/pystring-1.1.3-r1.ebuild b/dev-cpp/pystring/pystring-1.1.3-r1.ebuild
index cb58e2b9e1b..2a716f8f1a5 100644
--- a/dev-cpp/pystring/pystring-1.1.3-r1.ebuild
+++ b/dev-cpp/pystring/pystring-1.1.3-r1.ebuild
@@ -13,7 +13,7 @@ if [[ "${PV}" == "9999" ]]; then
EGIT_REPO_URI="https://github.com/imageworks/pystring.git"
else
SRC_URI="https://github.com/imageworks/pystring/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+ KEYWORDS="amd64 ~arm ~arm64 ~ppc64 ~x86"
fi
BDEPEND="
diff --git a/dev-cpp/range-v3/range-v3-0.11.0.ebuild b/dev-cpp/range-v3/range-v3-0.11.0.ebuild
index c1e6dbe55a0..a23c13d6994 100644
--- a/dev-cpp/range-v3/range-v3-0.11.0.ebuild
+++ b/dev-cpp/range-v3/range-v3-0.11.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2021 Gentoo Authors
+# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/ericniebler/${PN}/archive/${PV}.tar.gz -> ${P}.tar.g
LICENSE="Boost-1.0"
SLOT="0"
-KEYWORDS="amd64 ~ppc64"
+KEYWORDS="amd64 ~ppc64 ~riscv"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/rapidyaml/Manifest b/dev-cpp/rapidyaml/Manifest
new file mode 100644
index 00000000000..c1afe3db738
--- /dev/null
+++ b/dev-cpp/rapidyaml/Manifest
@@ -0,0 +1,4 @@
+DIST c4fs-1abba005074022f07d2d9d11ec6a786f2a1f1380.tar.gz 22104 BLAKE2B ea9a063de87962d620e98bad573b1eef9a65cffdacdeab241fd91982f3da93ab01b1bfd6fd87eac5def0b8523f6f2ce32e9321385fb07a6f108dcb68630af1f5 SHA512 00aa29f818a13301df3506ae2b0bc8b527a6d292eb09ccc69681c2ad92ec270aeb635680543dfe1e761a82206c97f8347337a152728eb49d918284e043d32096
+DIST c4log-b8b86f33fc7539661e302171ee6dcc4a17859e67.tar.gz 11983 BLAKE2B 8f2f18e85e01ffe76a2705d181260c7f1c0979009c09c6037097c7711d590f576816e39e869b30cad7b8134114eef55edad327e6224b09c6ba34dd389917af22 SHA512 a3f8f78ffe38426bab2f79748ecadb07e688d98ac75f907a9898ea93f0e7b1818253846412de24f4f755e0a7099aa886515cdd0b28b8c87786ad656a85bd3f9b
+DIST rapidyaml-0.3.0-src.tgz 696476 BLAKE2B 30b077e3ddff56f68108a02545efc77ae3684273891f36db61b714a9af414f1f01d147a7132619647796c863ec6ae2f2586c8bfe9e1c2d3c6e7e99d11d41ee8e SHA512 52a469b18c484d8def9239f6f7697f3c3b7760855c7af68a36988cc5a8031e1f5f900819b2af9770722628d0c14fa2cc776d1c07db7a8e85602c4d00aa4199a2
+DIST yaml-test-suite-bcd49a2d4919c1b1ac3b9d6e5ebe6b140b5089e3.tar.gz 54806 BLAKE2B 6574bed549759a1f3df7bcaa8051ab5e37ebb6dec878e1935dbf8f5c234f852c9ea037f90cc7bb93306cc5b1cd95f6fa8df885e51131eae50c9187d360110185 SHA512 814a654b6b04cf4e9b89ae40ba7daddb8f013da96e929ed618764c55dd23a45d8a97c456f526548cd95d673bcada3650383c3626bbbd0caa3fbdbc4b94496a6f
diff --git a/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-libdir.patch b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-libdir.patch
new file mode 100644
index 00000000000..a10fbc49585
--- /dev/null
+++ b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-libdir.patch
@@ -0,0 +1,9 @@
+--- a/ext/c4core/cmake/c4Project.cmake
++++ b/ext/c4core/cmake/c4Project.cmake
+@@ -2643,4 +2643,4 @@
+ set(_RUNTIME_INSTALL_DIR bin/)
+- set(_ARCHIVE_INSTALL_DIR lib/)
+- set(_LIBRARY_INSTALL_DIR lib/) # TODO on Windows, ARCHIVE and LIBRARY dirs must be different to prevent name clashes
++ set(_ARCHIVE_INSTALL_DIR lib/ CACHE STRING "")
++ set(_LIBRARY_INSTALL_DIR lib/ CACHE STRING "")
+ set(_INCLUDE_INSTALL_DIR include/)
diff --git a/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-no-download.patch b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-no-download.patch
new file mode 100644
index 00000000000..97c4926cd9d
--- /dev/null
+++ b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-no-download.patch
@@ -0,0 +1,23 @@
+--- a/ext/testbm.cmake
++++ b/ext/testbm.cmake
+@@ -1,4 +1,2 @@
+ # these are used both for testing and benchmarking
+-c4_require_subproject(c4fs REMOTE
+- GIT_REPOSITORY https://github.com/biojppm/c4fs
+- GIT_TAG master)
++c4_require_subproject(c4fs SUBDIRECTORY ext/c4fs)
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -103,10 +103,5 @@
+
+- c4_require_subproject(c4log REMOTE
+- GIT_REPOSITORY https://github.com/biojppm/c4log
+- GIT_TAG master)
++ c4_require_subproject(c4log SUBDIRECTORY ../ext/c4log)
+
+- set(tsdir ${ed}/yaml-test-suite)
+- c4_download_remote_proj(yaml-test-suite tsdir
+- GIT_REPOSITORY https://github.com/yaml/yaml-test-suite
+- GIT_TAG bcd49a2d4919c1b1ac3b9d6e5ebe6b140b5089e3)
++ set(tsdir ${CMAKE_SOURCE_DIR}/ext/yaml-test-suite)
+ set(suite_dir ${tsdir}/src)
diff --git a/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-system-gtest.patch b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-system-gtest.patch
new file mode 100644
index 00000000000..0e404f09d78
--- /dev/null
+++ b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-system-gtest.patch
@@ -0,0 +1,8 @@
+--- a/ext/c4core/cmake/c4Project.cmake
++++ b/ext/c4core/cmake/c4Project.cmake
+@@ -2762,2 +2762,5 @@
+ if(NOT TARGET gtest)
++ find_package(GTest REQUIRED)
++ endif()
++ if(FALSE)
+ c4_import_remote_proj(gtest ${CMAKE_CURRENT_BINARY_DIR}/ext/gtest
diff --git a/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-tests-no-install.patch b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-tests-no-install.patch
new file mode 100644
index 00000000000..97aeb72ee1a
--- /dev/null
+++ b/dev-cpp/rapidyaml/files/rapidyaml-0.3.0-tests-no-install.patch
@@ -0,0 +1,18 @@
+--- a/ext/c4fs/CMakeLists.txt
++++ b/ext/c4fs/CMakeLists.txt
+@@ -18,6 +18,4 @@
+ )
+
+-c4_install_target(c4fs)
+-c4_install_exports()
+
+ c4_add_dev_targets()
+--- a/ext/c4log/CMakeLists.txt
++++ b/ext/c4log/CMakeLists.txt
+@@ -21,6 +21,4 @@
+ )
+
+-c4_install_target(c4log)
+-c4_install_exports()
+
+ c4_add_dev_targets()
diff --git a/dev-cpp/rapidyaml/metadata.xml b/dev-cpp/rapidyaml/metadata.xml
new file mode 100644
index 00000000000..0955cf95463
--- /dev/null
+++ b/dev-cpp/rapidyaml/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ionen@gentoo.org</email>
+ <name>Ionen Wolkens</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">biojppm/rapidyaml</remote-id>
+ <remote-id type="pypi">rapidyaml</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/rapidyaml/rapidyaml-0.3.0.ebuild b/dev-cpp/rapidyaml/rapidyaml-0.3.0.ebuild
new file mode 100644
index 00000000000..64b80e29312
--- /dev/null
+++ b/dev-cpp/rapidyaml/rapidyaml-0.3.0.ebuild
@@ -0,0 +1,80 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+C4FS_COMMIT="1abba005074022f07d2d9d11ec6a786f2a1f1380"
+C4LOG_COMMIT="b8b86f33fc7539661e302171ee6dcc4a17859e67"
+YAMLTS_COMMIT="bcd49a2d4919c1b1ac3b9d6e5ebe6b140b5089e3"
+C4FS_P="c4fs-${C4FS_COMMIT}"
+C4LOG_P="c4log-${C4LOG_COMMIT}"
+YAMLTS_P="yaml-test-suite-${YAMLTS_COMMIT}"
+
+DESCRIPTION="Library to parse and emit YAML, and do it fast"
+HOMEPAGE="https://github.com/biojppm/rapidyaml/"
+SRC_URI="
+ https://github.com/biojppm/rapidyaml/releases/download/v${PV}/${P}-src.tgz
+ test? (
+ https://github.com/biojppm/c4fs/archive/${C4FS_COMMIT}.tar.gz -> ${C4FS_P}.tar.gz
+ https://github.com/biojppm/c4log/archive/${C4LOG_COMMIT}.tar.gz -> ${C4LOG_P}.tar.gz
+ https://github.com/yaml/yaml-test-suite/archive/${YAMLTS_COMMIT}.tar.gz -> ${YAMLTS_P}.tar.gz
+ )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="MIT Boost-1.0 BSD"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="debug test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( dev-cpp/gtest )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-libdir.patch
+ "${FILESDIR}"/${P}-no-download.patch
+ "${FILESDIR}"/${P}-system-gtest.patch
+)
+
+DOCS=( README.md ROADMAP.md changelog )
+
+src_prepare() {
+ if use test; then
+ mv ../${C4FS_P} ext/c4fs &&
+ rmdir ext/c4fs/ext/c4core &&
+ ln -s ../../c4core ext/c4fs/ext || die
+
+ mv ../${C4LOG_P} ext/c4log &&
+ rmdir ext/c4log/ext/c4core &&
+ ln -s ../../c4core ext/c4log/ext || die
+
+ mv ../${YAMLTS_P} ext/yaml-test-suite || die
+
+ PATCHES+=( "${FILESDIR}"/${P}-tests-no-install.patch )
+ fi
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DRYML_BUILD_API=no # TODO if a consumer needs it
+ -DRYML_BUILD_TESTS=$(usex test)
+ -DRYML_DBG=$(usex debug)
+ -D_{ARCHIVE,LIBRARY}_INSTALL_DIR=$(get_libdir)
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_build test
+}
+
+src_install() {
+ cmake_src_install
+
+ # remove shared private library that is statically linked
+ rm "${ED}"/usr/$(get_libdir)/libc4core.so* || die
+}
diff --git a/dev-cpp/robin-map/metadata.xml b/dev-cpp/robin-map/metadata.xml
index dfc0dd5e019..7d3acaf5d25 100644
--- a/dev-cpp/robin-map/metadata.xml
+++ b/dev-cpp/robin-map/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>gentoo@aisha.cc</email>
- <name>Aisha Tammy</name>
- </maintainer>
<maintainer type="project">
<email>sci@gentoo.org</email>
<name>Gentoo Science Project</name>
diff --git a/dev-cpp/rttr/Manifest b/dev-cpp/rttr/Manifest
deleted file mode 100644
index 88fa670091c..00000000000
--- a/dev-cpp/rttr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rttr-0.9.6-src.tar.gz 1137269 BLAKE2B 53bb4ed75e20a82d2bd2e6c5667efe1ba6b6f2d8a83a3bd486870daeae57a36cdcb9f2acb6d47a6d1b2f36f00a262170efa4e321f6e7faf8d2c35c431bf47133 SHA512 7e0d4fa87f83feda0b926d4d0e52aaf0f369f25fe7e23e5ffe86c0bba159e8353cef44eed37611a81e8ccc8d6facb36942f940d0d0b965f873177d7078f91cf4
diff --git a/dev-cpp/rttr/files/rttr-0.9.6-cmake.patch b/dev-cpp/rttr/files/rttr-0.9.6-cmake.patch
deleted file mode 100644
index e313014d70a..00000000000
--- a/dev-cpp/rttr/files/rttr-0.9.6-cmake.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-Install cmake files to the correct directory.
-
-Avoid installing docs to the wrong directory (will be installed by the ebuild instead).
-
---- a/CMake/config.cmake
-+++ b/CMake/config.cmake
-@@ -69,7 +69,7 @@
-
- set(RTTR_INSTALL_FULL_LIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}")
-
-- set(RTTR_CMAKE_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/rttr/cmake")
-+ set(RTTR_CMAKE_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}/cmake/rttr")
- set(RTTR_ADDITIONAL_FILES_INSTALL_DIR "${CMAKE_INSTALL_DATADIR}/rttr")
-
- elseif(WIN32)
-@@ -169,8 +169,4 @@
- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/CMake/rttr-config-version.cmake"
- DESTINATION ${RTTR_CMAKE_CONFIG_INSTALL_DIR}
- COMPONENT Devel)
--
-- install(FILES "${LICENSE_FILE}" "${README_FILE}"
-- DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR}
-- PERMISSIONS OWNER_READ)
- endif()
-
diff --git a/dev-cpp/rttr/files/rttr-0.9.6-permission.patch b/dev-cpp/rttr/files/rttr-0.9.6-permission.patch
deleted file mode 100644
index bec7ac36bfc..00000000000
--- a/dev-cpp/rttr/files/rttr-0.9.6-permission.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Avoid installing headers with mode 700.
-
---- a/CMake/utility.cmake
-+++ b/CMake/utility.cmake
-@@ -165,7 +165,7 @@
- getNameOfDir(CMAKE_CURRENT_SOURCE_DIR DIRNAME)
- if (${shouldInstall})
- if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$") # we don't want to install header files which are marked as private
-- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ)
-+ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}")
- endif()
- endif()
- endforeach()
diff --git a/dev-cpp/rttr/files/rttr-0.9.6-tests.patch b/dev-cpp/rttr/files/rttr-0.9.6-tests.patch
deleted file mode 100644
index bd966c3d327..00000000000
--- a/dev-cpp/rttr/files/rttr-0.9.6-tests.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Avoid running a custom testsuite unconditionally.
-
---- a/src/unit_tests/CMakeLists.txt
-+++ b/src/unit_tests/CMakeLists.txt
-@@ -54,17 +54,17 @@
- endif()
-
- # run tests
--add_custom_target(run_tests ALL
-- COMMAND "$<TARGET_FILE:unit_tests>"
-- DEPENDS unit_tests
-- COMMENT "Running unit_tests")
-+#add_custom_target(run_tests ALL
-+# COMMAND "$<TARGET_FILE:unit_tests>"
-+# DEPENDS unit_tests
-+# COMMENT "Running unit_tests")
-
--set_target_properties(run_tests PROPERTIES
-- FOLDER "Testing")
-+#set_target_properties(run_tests PROPERTIES
-+# FOLDER "Testing")
-
- add_subdirectory(plugin)
-
- add_dependencies(unit_tests unit_test_plugin)
-
- message(STATUS "Scanning " ${PROJECT_NAME} " module finished!")
--message(STATUS "")
-\ No newline at end of file
-+message(STATUS "")
diff --git a/dev-cpp/rttr/files/rttr-0.9.6-werror.patch b/dev-cpp/rttr/files/rttr-0.9.6-werror.patch
deleted file mode 100644
index 04c65203ac9..00000000000
--- a/dev-cpp/rttr/files/rttr-0.9.6-werror.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-This causes build failures with modern GCC, and is against Gentoo policy in any case.
-
---- a/CMake/utility.cmake
-+++ b/CMake/utility.cmake
-@@ -392,11 +392,9 @@
- ####################################################################################
- function( set_compiler_warnings target)
- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
-- set(WARNINGS "-Werror"
-- "-Wall")
-+ set(WARNINGS "-Wall")
- elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
-- set(WARNINGS "-Werror"
-- "-Wall")
-+ set(WARNINGS "-Wall")
- elseif(MSVC)
- set(WARNINGS "/WX"
- "/W4")
diff --git a/dev-cpp/rttr/rttr-0.9.6.ebuild b/dev-cpp/rttr/rttr-0.9.6.ebuild
deleted file mode 100644
index e682b7bc1d2..00000000000
--- a/dev-cpp/rttr/rttr-0.9.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake
-
-DESCRIPTION="Run Time Type Reflection - library adding reflection to C++"
-HOMEPAGE="https://www.rttr.org/"
-SRC_URI="https://github.com/rttrorg/${PN}/releases/download/v${PV}/${P}-src.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 x86"
-IUSE=""
-
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}/${P}-cmake.patch"
- "${FILESDIR}/${P}-permission.patch"
- "${FILESDIR}/${P}-tests.patch"
- "${FILESDIR}/${P}-werror.patch"
-)
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_DOCUMENTATION=off #broken
- )
-
- cmake_src_configure
-}
-
-src_test() {
- "${BUILD_DIR}"/bin/unit_tests || die
-}
diff --git a/dev-cpp/tbb/Manifest b/dev-cpp/tbb/Manifest
index d2d3f1d78cf..b048b94c211 100644
--- a/dev-cpp/tbb/Manifest
+++ b/dev-cpp/tbb/Manifest
@@ -1 +1,3 @@
DIST tbb-2020.3.tar.gz 2639788 BLAKE2B 3e92bccdc8179fc049379ccbb8ad7f615623177abc61d813b1a601020c345137bfd7d4c4600cf5b0d587e5ebef677635c3c8124d06b05fdd3325128ed8c9f84a SHA512 04c4b5501418792827190691d03d20d4dc1fd3cbbcf459a4d40c5c2281d964e658f31f133ad3907b78e17ed04f4ff16728ed89487ed0ce2cb239f23feb34bd87
+DIST tbb-2021.4.0.tar.gz 2452533 BLAKE2B a635c6efa1894c33e2f75c1aa03b6c0f4a86ebef3b58fa42bd25b53d661ed7a9d21f49f121dd3679735f219fbfc35604600bcc72ba60d3602e6de77b0d62e37b SHA512 96da2bc351fd64dfa854f8e6cabc1c4e53af3d55760e99d6f83ad53779c727af333d13d6be0828ed70371cf796498d2063e9dd0e4b2f6451623bb5d28ccbf20b
+DIST tbb-2021.5.0.tar.gz 2463218 BLAKE2B 2d50d312b86318ba4923afe68753b3781f9646cbdb33861f3458301a3a19b7ca3aab6959dca085294dfc743d7f552635f80fb524ec5d780a46f58ffe02e3280d SHA512 0e7b71022e397a6d7abb0cea106847935ae79a1e12a6976f8d038668c6eca8775ed971202c5bd518f7e517092b67af805cc5feb04b5c3a40e9fbf972cc703a46
diff --git a/dev-cpp/tbb/files/tbb-2021.4.0-lto.patch b/dev-cpp/tbb/files/tbb-2021.4.0-lto.patch
new file mode 100644
index 00000000000..1c970557600
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2021.4.0-lto.patch
@@ -0,0 +1,249 @@
+https://github.com/oneapi-src/oneTBB/pull/608
+
+From 6feeba8035ea2bdf652d473a35730b19427752db Mon Sep 17 00:00:00 2001
+From: Ivan Kochin <kochin.ivan@intel.com>
+Date: Wed, 27 Oct 2021 17:23:32 +0300
+Subject: [PATCH] Use native CMake way to detect the IPO support (#608)
+
+* Use native CMake way to detect the IPO support
+
+Signed-off-by: Kochin Ivan <kochin.ivan@intel.com>
+---
+ CMakeLists.txt | 17 +++++++++++++++++
+ cmake/README.md | 1 +
+ cmake/compilers/Clang.cmake | 8 ++------
+ cmake/compilers/GNU.cmake | 8 +++-----
+ cmake/compilers/MSVC.cmake | 1 +
+ cmake/utils.cmake | 13 +++++++++++++
+ src/tbb/CMakeLists.txt | 5 ++---
+ src/tbbbind/CMakeLists.txt | 6 +++---
+ src/tbbmalloc/CMakeLists.txt | 5 ++---
+ 9 files changed, 44 insertions(+), 20 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 13b1dbc2c..4dbdadb97 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -103,6 +103,7 @@ option(TBBMALLOC_BUILD "Enable tbbmalloc build" ON)
+ option(TBB_CPF "Enable preview features of the library" OFF)
+ option(TBB_FIND_PACKAGE "Enable search for external oneTBB using find_package instead of build from sources" OFF)
+ option(TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH "Disable HWLOC automatic search by pkg-config tool" OFF)
++option(TBB_ENABLE_IPO "Enable Interprocedural Optimization (IPO) during the compilation" ON)
+
+ if (NOT DEFINED BUILD_SHARED_LIBS)
+ set(BUILD_SHARED_LIBS ON)
+@@ -181,6 +182,22 @@ foreach(FILE_WITH_EXTRA_TARGETS ${FILES_WITH_EXTRA_TARGETS})
+ include(${FILE_WITH_EXTRA_TARGETS})
+ endforeach()
+
++# - Enabling LTO on Android causes the NDK bug.
++# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
++# - For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
++if (TBB_ENABLE_IPO AND BUILD_SHARED_LIBS AND NOT ANDROID_PLATFORM AND NOT TBB_SANITIZE MATCHES "thread")
++ if (NOT CMAKE_VERSION VERSION_LESS 3.9)
++ cmake_policy(SET CMP0069 NEW)
++ include(CheckIPOSupported)
++ check_ipo_supported(RESULT TBB_IPO_PROPERTY)
++ else()
++ set(TBB_IPO_FLAGS TRUE)
++ endif()
++ if (TBB_IPO_PROPERTY OR TBB_IPO_FLAGS)
++ message(STATUS "IPO enabled")
++ endif()
++endif()
++
+ set(TBB_COMPILER_SETTINGS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/cmake/compilers/${CMAKE_CXX_COMPILER_ID}.cmake)
+ if (EXISTS ${TBB_COMPILER_SETTINGS_FILE})
+ include(${TBB_COMPILER_SETTINGS_FILE})
+diff --git a/cmake/README.md b/cmake/README.md
+index ec56e423c..ed1631de3 100644
+--- a/cmake/README.md
++++ b/cmake/README.md
+@@ -16,6 +16,7 @@ TBB_CPF:BOOL - Enable preview features of the library (OFF by default)
+ TBB_INSTALL_VARS:BOOL - Enable auto-generated vars installation(packages generated by `cpack` and `make install` will also include the vars script)(OFF by default)
+ TBB_VALGRIND_MEMCHECK:BOOL - Enable scan for memory leaks using Valgrind (OFF by default)
+ TBB_DISABLE_HWLOC_AUTOMATIC_SEARCH - Disable HWLOC automatic search by pkg-config tool (OFF by default)
++TBB_ENABLE_IPO - Enable Interprocedural Optimization (IPO) during the compilation (ON by default)
+ ```
+
+ ## Configure, build and test
+diff --git a/cmake/compilers/Clang.cmake b/cmake/compilers/Clang.cmake
+index 183341fcc..69aa51932 100644
+--- a/cmake/compilers/Clang.cmake
++++ b/cmake/compilers/Clang.cmake
+@@ -58,12 +58,8 @@ if (MINGW)
+ list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
+ endif()
+
+-# Enabling LTO on Android causes the NDK bug.
+-# NDK throws the warning: "argument unused during compilation: '-Wa,--noexecstack'"
+-if (NOT ANDROID_PLATFORM AND BUILD_SHARED_LIBS)
+- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+-endif()
++set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
++set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+
+ # TBB malloc settings
+ set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
+diff --git a/cmake/compilers/GNU.cmake b/cmake/compilers/GNU.cmake
+index fa14c869e..a9cfa8927 100644
+--- a/cmake/compilers/GNU.cmake
++++ b/cmake/compilers/GNU.cmake
+@@ -63,11 +63,9 @@ if (MINGW)
+ list(APPEND TBB_COMMON_COMPILE_FLAGS -U__STRICT_ANSI__)
+ endif()
+
+-# For some reason GCC does not instrument code with Thread Sanitizer when lto is enabled and C linker is used.
+-if (NOT TBB_SANITIZE MATCHES "thread")
+- set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+- set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+-endif()
++set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
++set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
++
+
+ # TBB malloc settings
+ set(TBBMALLOC_LIB_COMPILE_FLAGS -fno-rtti -fno-exceptions)
+diff --git a/cmake/compilers/MSVC.cmake b/cmake/compilers/MSVC.cmake
+index 3447418cc..5767235a0 100644
+--- a/cmake/compilers/MSVC.cmake
++++ b/cmake/compilers/MSVC.cmake
+@@ -77,6 +77,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "(Clang|IntelLLVM)")
+ endif()
+ set(TBB_OPENMP_NO_LINK_FLAG TRUE)
+ set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
++ set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-flto>)
+ else()
+ set(TBB_IPO_COMPILE_FLAGS $<$<NOT:$<CONFIG:Debug>>:/GL>)
+ set(TBB_IPO_LINK_FLAGS $<$<NOT:$<CONFIG:Debug>>:-LTCG> $<$<NOT:$<CONFIG:Debug>>:-INCREMENTAL:NO>)
+diff --git a/cmake/utils.cmake b/cmake/utils.cmake
+index 06d3a9aee..f74abfcf9 100644
+--- a/cmake/utils.cmake
++++ b/cmake/utils.cmake
+@@ -44,3 +44,16 @@ macro(tbb_install_target target)
+ COMPONENT devel)
+ endif()
+ endmacro()
++
++macro(tbb_handle_ipo target)
++ if (TBB_IPO_PROPERTY)
++ set_target_properties(${target} PROPERTIES INTERPROCEDURAL_OPTIMIZATION TRUE)
++ elseif (TBB_IPO_FLAGS)
++ target_compile_options(${target} PRIVATE ${TBB_IPO_COMPILE_FLAGS})
++ if (COMMAND target_link_options)
++ target_link_options(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
++ else()
++ target_link_libraries(${target} PRIVATE ${TBB_IPO_LINK_FLAGS})
++ endif()
++ endif()
++endmacro()
+diff --git a/src/tbb/CMakeLists.txt b/src/tbb/CMakeLists.txt
+index 80fdcdcde..021392d89 100644
+--- a/src/tbb/CMakeLists.txt
++++ b/src/tbb/CMakeLists.txt
+@@ -79,7 +79,6 @@ target_compile_options(tbb
+ ${TBB_WARNING_SUPPRESS}
+ ${TBB_LIB_COMPILE_FLAGS}
+ ${TBB_COMMON_COMPILE_FLAGS}
+- ${TBB_IPO_COMPILE_FLAGS}
+ )
+
+ # Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
+@@ -89,6 +88,8 @@ set_target_properties(tbb PROPERTIES
+ SOVERSION ${TBB_BINARY_VERSION}
+ )
+
++tbb_handle_ipo(tbb)
++
+ if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
+ set_target_properties(tbb PROPERTIES
+ LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbb.def
+@@ -103,14 +104,12 @@ if (COMMAND target_link_options)
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ else()
+ target_link_libraries(tbb
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ endif()
+
+diff --git a/src/tbbbind/CMakeLists.txt b/src/tbbbind/CMakeLists.txt
+index 99b7ccaac..3233ec718 100644
+--- a/src/tbbbind/CMakeLists.txt
++++ b/src/tbbbind/CMakeLists.txt
+@@ -46,7 +46,6 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
+ ${TBB_WARNING_LEVEL}
+ ${TBB_LIB_COMPILE_FLAGS}
+ ${TBB_COMMON_COMPILE_FLAGS}
+- ${TBB_IPO_COMPILE_FLAGS}
+ )
+
+ # Avoid use of target_link_libraries here as it changes /DEF option to \DEF on Windows.
+@@ -55,6 +54,9 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
+ VERSION ${TBBBIND_BINARY_VERSION}.${TBB_BINARY_MINOR_VERSION}
+ SOVERSION ${TBBBIND_BINARY_VERSION}
+ )
++
++ tbb_handle_ipo(${TBBBIND_NAME})
++
+ if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
+ set_target_properties(${TBBBIND_NAME} PROPERTIES
+ LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbbind.def
+@@ -69,14 +71,12 @@ function(tbbbind_build TBBBIND_NAME REQUIRED_HWLOC_TARGET)
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ else()
+ target_link_libraries(${TBBBIND_NAME}
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ endif()
+
+diff --git a/src/tbbmalloc/CMakeLists.txt b/src/tbbmalloc/CMakeLists.txt
+index f77bc8f10..5a851851f 100644
+--- a/src/tbbmalloc/CMakeLists.txt
++++ b/src/tbbmalloc/CMakeLists.txt
+@@ -59,7 +59,6 @@ target_compile_options(tbbmalloc
+ ${TBB_LIB_COMPILE_FLAGS}
+ ${TBBMALLOC_LIB_COMPILE_FLAGS}
+ ${TBB_COMMON_COMPILE_FLAGS}
+- ${TBB_IPO_COMPILE_FLAGS}
+ )
+
+ enable_language(C)
+@@ -72,6 +71,8 @@ set_target_properties(tbbmalloc PROPERTIES
+ LINKER_LANGUAGE C
+ )
+
++tbb_handle_ipo(tbbmalloc)
++
+ if (TBB_DEF_FILE_PREFIX) # If there's no prefix, assume we're using export directives
+ set_target_properties(tbbmalloc PROPERTIES
+ LINK_FLAGS ${TBB_LINK_DEF_FILE_FLAG}${CMAKE_CURRENT_SOURCE_DIR}/def/${TBB_DEF_FILE_PREFIX}-tbbmalloc.def
+@@ -88,14 +89,12 @@ if (COMMAND target_link_options)
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ else()
+ target_link_libraries(tbbmalloc
+ PRIVATE
+ ${TBB_LIB_LINK_FLAGS}
+ ${TBB_COMMON_LINK_FLAGS}
+- ${TBB_IPO_LINK_FLAGS}
+ )
+ endif()
+
diff --git a/dev-cpp/tbb/files/tbb-2021.4.0-missing-TBB_machine_fetchadd4.patch b/dev-cpp/tbb/files/tbb-2021.4.0-missing-TBB_machine_fetchadd4.patch
new file mode 100644
index 00000000000..091cad5821e
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2021.4.0-missing-TBB_machine_fetchadd4.patch
@@ -0,0 +1,23 @@
+https://github.com/oneapi-src/oneTBB/issues/186
+https://github.com/oneapi-src/oneTBB/pull/550
+https://bugs.gentoo.org/827883
+
+From: Felix Yan <felixonmars@archlinux.org>
+Date: Thu, 7 Oct 2021 14:16:16 +0800
+Subject: [PATCH] Define ITT_ARCH_IA64 when undefiend (#550)
+
+Upstream-Status: Merged in commit later than 2021.5.0
+
+--- a/src/tbb/tools_api/ittnotify_config.h
++++ b/src/tbb/tools_api/ittnotify_config.h
+@@ -147,6 +147,10 @@
+ # define ITT_ARCH_IA32E 2
+ #endif /* ITT_ARCH_IA32E */
+
++#ifndef ITT_ARCH_IA64
++# define ITT_ARCH_IA64 3
++#endif /* ITT_ARCH_IA64 */
++
+ #ifndef ITT_ARCH_ARM
+ # define ITT_ARCH_ARM 4
+ #endif /* ITT_ARCH_ARM */
diff --git a/dev-cpp/tbb/files/tbb-2021.5.0-musl-deepbind.patch b/dev-cpp/tbb/files/tbb-2021.5.0-musl-deepbind.patch
new file mode 100644
index 00000000000..014a3863f45
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2021.5.0-musl-deepbind.patch
@@ -0,0 +1,25 @@
+https://github.com/oneapi-src/oneTBB/commit/883c2e5245c39624b3b5d6d56d5b203cf09eac38
+https://bugs.gentoo.org/830698
+
+From: Khem Raj <raj.khem@gmail.com>
+Date: Wed, 15 Dec 2021 08:08:07 -0800
+Subject: [PATCH] Musl/linux can not use RTLD_DEEPBIND (#684)
+
+Exclude non-glibc linux systems along with android
+Fixes
+src/tbb/dynamic_link.cpp:417:29: error: use
+ of undeclared identifier 'RTLD_DEEPBIND' | flags = flags | RTLD_DEEPBIND;
+| ^
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/src/tbb/dynamic_link.cpp
++++ b/src/tbb/dynamic_link.cpp
+@@ -413,7 +413,7 @@ namespace r1 {
+ int flags = RTLD_NOW;
+ if (local_binding) {
+ flags = flags | RTLD_LOCAL;
+-#if __linux__ && !__ANDROID__ && !__TBB_USE_SANITIZERS
++#if (__linux__ && __GLIBC__) && !__TBB_USE_SANITIZERS
+ flags = flags | RTLD_DEEPBIND;
+ #endif
+ } else {
diff --git a/dev-cpp/tbb/files/tbb-2021.5.0-musl-mallinfo.patch b/dev-cpp/tbb/files/tbb-2021.5.0-musl-mallinfo.patch
new file mode 100644
index 00000000000..e46c16f42f5
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2021.5.0-musl-mallinfo.patch
@@ -0,0 +1,32 @@
+https://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/tbb/tbb/0001-mallinfo-is-glibc-specific-API-mark-it-so.patch
+https://github.com/oneapi-src/oneTBB/pull/203
+https://bugs.gentoo.org/828704
+
+From: Naveen Saini <naveen.kumar.saini@intel.com>
+Date: Wed, 7 Apr 2021 11:14:13 +0800
+Subject: [PATCH] mallinfo() is glibc specific API mark it so
+
+Helps compiling with musl
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Naveen Saini <naveen.kumar.saini@intel.com>
+--- a/src/tbbmalloc_proxy/proxy.cpp
++++ b/src/tbbmalloc_proxy/proxy.cpp
+@@ -260,6 +260,7 @@ int mallopt(int /*param*/, int /*value*/
+ return 1;
+ }
+
++#ifdef __GLIBC__
+ struct mallinfo mallinfo() __THROW
+ {
+ struct mallinfo m;
+@@ -267,6 +268,7 @@ struct mallinfo mallinfo() __THROW
+
+ return m;
+ }
++#endif
+
+ #if __ANDROID__
+ // Android doesn't have malloc_usable_size, provide it to be compatible
diff --git a/dev-cpp/tbb/tbb-2021.4.0.ebuild b/dev-cpp/tbb/tbb-2021.4.0.ebuild
new file mode 100644
index 00000000000..ff94b74527c
--- /dev/null
+++ b/dev-cpp/tbb/tbb-2021.4.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="https://www.threadingbuildingblocks.org"
+SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/oneTBB-${PV}"
+
+LICENSE="Apache-2.0"
+# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
+# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
+SLOT="0/12-2-3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-apps/hwloc:="
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-lto.patch
+ # bug 827883
+ "${FILESDIR}"/${P}-missing-TBB_machine_fetchadd4.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DTBB_TEST=$(usex test)
+ -DTBB_ENABLE_IPO=OFF
+ -DTBB_STRICT=OFF
+ )
+
+ cmake-multilib_src_configure
+}
diff --git a/dev-cpp/tbb/tbb-2021.5.0.ebuild b/dev-cpp/tbb/tbb-2021.5.0.ebuild
new file mode 100644
index 00000000000..6b2ff50c7c4
--- /dev/null
+++ b/dev-cpp/tbb/tbb-2021.5.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="https://www.threadingbuildingblocks.org"
+SRC_URI="https://github.com/oneapi-src/oneTBB/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/oneTBB-${PV}"
+
+LICENSE="Apache-2.0"
+# https://github.com/oneapi-src/oneTBB/blob/master/CMakeLists.txt#L53
+# libtbb<SONAME>-libtbbmalloc<SONAME>-libtbbbind<SONAME>
+SLOT="0/12.5-2.5-3.5"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-apps/hwloc:="
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=(
+ # should be in.. 2022?
+ "${FILESDIR}"/${PN}-2021.4.0-lto.patch
+ "${FILESDIR}"/${PN}-2021.5.0-musl-deepbind.patch
+ # bug 827883
+ "${FILESDIR}"/${PN}-2021.4.0-missing-TBB_machine_fetchadd4.patch
+ # need to verify this is in master
+ "${FILESDIR}"/${PN}-2021.5.0-musl-mallinfo.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DTBB_TEST=$(usex test)
+ -DTBB_ENABLE_IPO=OFF
+ -DTBB_STRICT=OFF
+ )
+
+ cmake-multilib_src_configure
+}
diff --git a/dev-cpp/tclap/Manifest b/dev-cpp/tclap/Manifest
index a38364264aa..03f98edcb5c 100644
--- a/dev-cpp/tclap/Manifest
+++ b/dev-cpp/tclap/Manifest
@@ -1 +1,2 @@
DIST tclap-1.2.2.tar.gz 231714 BLAKE2B 94fc3d5253c08a305e5f75f6b4b7ab556e94980193502b64665ff828609cde20f340e3fe18cef12011da07ae2db2c2bb52a08f112d052d74c45be8290d525092 SHA512 516ec17f82a61277922bc8c0ed66973300bf42a738847fbbd2912c6405c34f94a13e47dc964854a5b26a9a9f1f518cce682ca54e769d6016851656c647866107
+DIST tclap-1.2.5.tar.gz 4140723 BLAKE2B e3b48dc602ddd64887ca7764008e2ac406866fd7c17bd5b6f31e248b43f18ed6b1c8415fc29a505b3035befcb9716b3259680c7e53a51ad9df107e1cbad92eea SHA512 3b5b3d76e8ff21133001f5f9589fa6ec143729909bf0b9cc9934377bce178360c161fb5c1f4c4d9e9c74b09cff3d65f1d5100e61d4a732283524a78b6f236b10
diff --git a/dev-cpp/tclap/tclap-1.2.2.ebuild b/dev-cpp/tclap/tclap-1.2.2.ebuild
index 7a86a74f833..60b7212faf4 100644
--- a/dev-cpp/tclap/tclap-1.2.2.ebuild
+++ b/dev-cpp/tclap/tclap-1.2.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2007-2021 Gentoo Authors
+# Copyright 2007-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -9,7 +9,7 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux"
+KEYWORDS="amd64 ~arm arm64 ~hppa ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux"
IUSE="doc"
BDEPEND="doc? ( app-doc/doxygen )"
diff --git a/dev-cpp/tclap/tclap-1.2.5.ebuild b/dev-cpp/tclap/tclap-1.2.5.ebuild
new file mode 100644
index 00000000000..635d82ad2d8
--- /dev/null
+++ b/dev-cpp/tclap/tclap-1.2.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2007-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Simple templatized C++ library for parsing command line arguments"
+HOMEPAGE="http://tclap.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux"
+IUSE="doc"
+
+BDEPEND="doc? ( app-doc/doxygen )"
+
+src_configure() {
+ econf $(use_enable doc doxygen)
+}
+
+src_test() {
+ emake -j1 check
+}
+
+src_install() {
+ emake DESTDIR="${D}" docdir="${EPREFIX}"/usr/share/doc/${PF}/html install
+}
diff --git a/dev-cpp/termcolor/Manifest b/dev-cpp/termcolor/Manifest
new file mode 100644
index 00000000000..49924bd31aa
--- /dev/null
+++ b/dev-cpp/termcolor/Manifest
@@ -0,0 +1 @@
+DIST termcolor-2.0.0.tar.gz 88582 BLAKE2B 3e7a4a99af3586fff103d0de0601e019881745e2921b4750dbf476439138a71120b6513a287c5fe26fd96a9c6115cb82295810d9bea11d0992f48fcd5d0a8d18 SHA512 72dead77fb9f3ff79432b1659b57c3d961a57b46305937acd0c221f5abb016f609dfaf7a9bf508bd7a073338ee604cf55f9915c8e8a76ddfaf6c68bc031e37f9
diff --git a/dev-cpp/termcolor/metadata.xml b/dev-cpp/termcolor/metadata.xml
new file mode 100644
index 00000000000..d8347ef2cc4
--- /dev/null
+++ b/dev-cpp/termcolor/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ikalnytskyi/termcolor</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/termcolor/termcolor-2.0.0.ebuild b/dev-cpp/termcolor/termcolor-2.0.0.ebuild
new file mode 100644
index 00000000000..34e39e78886
--- /dev/null
+++ b/dev-cpp/termcolor/termcolor-2.0.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="A header-only C++ library for printing colored messages to the terminal"
+HOMEPAGE="https://github.com/ikalnytskyi/termcolor https://termcolor.readthedocs.io"
+SRC_URI="https://github.com/ikalnytskyi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+# It's just a visual test, nothing automated / no way to detect failure in an ebuild.
+RESTRICT="!test? ( test ) test"
+
+src_configure() {
+ local mycmakeargs=(
+ -DTERMCOLOR_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ "${BUILD_DIR}"/test_termcolor || die
+}
diff --git a/dev-cpp/websocketpp/websocketpp-0.8.2.ebuild b/dev-cpp/websocketpp/websocketpp-0.8.2.ebuild
index 3e9339f27db..f9e11a9d8c9 100644
--- a/dev-cpp/websocketpp/websocketpp-0.8.2.ebuild
+++ b/dev-cpp/websocketpp/websocketpp-0.8.2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://github.com/zaphoyd/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~sparc x86"
IUSE="examples test"
RESTRICT="!test? ( test )"