summaryrefslogtreecommitdiff
path: root/dev-cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/ada/Manifest1
-rw-r--r--dev-cpp/ada/ada-3.2.4.ebuild26
-rw-r--r--dev-cpp/benchmark/Manifest1
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.3.ebuild93
-rw-r--r--dev-cpp/cppgir/Manifest1
-rw-r--r--dev-cpp/cppgir/cppgir-2.0_p20250508.ebuild46
-rw-r--r--dev-cpp/expected-lite/Manifest1
-rw-r--r--dev-cpp/expected-lite/expected-lite-0.8.0.ebuild25
-rw-r--r--dev-cpp/lucene++/lucene++-3.0.9.ebuild2
-rw-r--r--dev-cpp/muParserX/Manifest1
-rw-r--r--dev-cpp/muParserX/files/muParserX-4.0.12-cmake-4.patch49
-rw-r--r--dev-cpp/muParserX/muParserX-4.0.12-r1.ebuild (renamed from dev-cpp/muParserX/muParserX-4.0.11.ebuild)16
-rw-r--r--dev-cpp/robin-map/Manifest1
-rw-r--r--dev-cpp/robin-map/robin-map-1.4.0.ebuild37
-rw-r--r--dev-cpp/waylandpp/files/waylandpp-1.0.0-cmake4.patch13
-rw-r--r--dev-cpp/waylandpp/waylandpp-1.0.0-r2.ebuild46
-rw-r--r--dev-cpp/websocketpp/files/websocketpp-0.8.2-cmake4.patch23
-rw-r--r--dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild4
18 files changed, 381 insertions, 5 deletions
diff --git a/dev-cpp/ada/Manifest b/dev-cpp/ada/Manifest
index 04842d7450dc..4dfc049caf31 100644
--- a/dev-cpp/ada/Manifest
+++ b/dev-cpp/ada/Manifest
@@ -1 +1,2 @@
DIST ada-2.9.1.tar.gz 384701 BLAKE2B ad4a03100de06179c71c4d368cc349a630f8273550840cb19ba3e0cc4d296bfc59fa827bd3ea261609e4f80ebd2adbe7be1450040b519be5844febdcbc55f0f6 SHA512 74bad3f234dfe7b72e2057583e077e6a0f78f34b9c699751972d079b8027ef2dc34e6ef07c0dedeb923d8979f91c58a8a90473e69152c89e76baaa3659fa575b
+DIST ada-3.2.4.tar.gz 459344 BLAKE2B f2dc83313be73152c42cfafa352f5b7374197ec013e76007cd67e5268fb08fb9946fa715a294e0c1326cc761ea34d61aa65a8456089e5dfaf1443cd49890e050 SHA512 a61f3f851881fb092397647ed8e8e5ae0c47265fbb760471c64da64c7256e4bde4d778c69f00187868367a5fec467e445f72c9d5a810a3a3365292776a598296
diff --git a/dev-cpp/ada/ada-3.2.4.ebuild b/dev-cpp/ada/ada-3.2.4.ebuild
new file mode 100644
index 000000000000..61e1ba4e5132
--- /dev/null
+++ b/dev-cpp/ada/ada-3.2.4.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="WHATWG-compliant and fast URL parser written in modern C++"
+HOMEPAGE="https://github.com/ada-url/ada"
+
+SRC_URI="https://github.com/ada-url/ada/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 MIT"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+RESTRICT="test"
+
+src_configure() {
+ local mycmakeargs=(
+ # Building anything other than the library requires the CPM package manager
+ # which isn't very well equipped for packaging...
+ -DADA_TESTING=NO
+ -DADA_TOOLS=NO
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/benchmark/Manifest b/dev-cpp/benchmark/Manifest
index 0f60ff59f1aa..00fd5931123a 100644
--- a/dev-cpp/benchmark/Manifest
+++ b/dev-cpp/benchmark/Manifest
@@ -1,3 +1,4 @@
DIST benchmark-1.8.4.tar.gz 253916 BLAKE2B 78a290a5013d8371e87b7c918e518e3ec0e8247e25e211d160ab8dea51d8871d8dac54ee91ee0c512af86a60d1f4e9baedadc20d4a7fa28ef790411fda0399c8 SHA512 835d12b88fe52309ce6b2ffbc8b3c178ac594be7d249b5daca0373d1d03ec83ea3c7b94224f67f22d21919376985867eeff0d1c0721501cfd8a9e9b8a9c48882
DIST benchmark-1.9.1.tar.gz 255148 BLAKE2B 39b78afcb333c750960f476476b625d7f72b7cb787176deda1bd939d030e39b16fd008816c64447f7bb224983f2e80b047636f727a3d6d938f1b44dc25bddb55 SHA512 fc787d3d60a55abb3edaa575bf947c72e1ad1404a35bfddf585299411bcd04d32503bba563f9a36dccf128fce6261b97d460d6c293ed2c2d0807cf0154c86aa7
DIST benchmark-1.9.2.tar.gz 258938 BLAKE2B fed5a3d2447ac32c6e717a936c662d7ef7464978e6ff2d1e625576eee3a225e33d9125d7be5cd287fc069399ddaf76c0c2904caeec467f3f89755e59d3fe75e6 SHA512 64e964f02c118935305ca3e7d3f732f2e093f927371bd1729467f6cb75dc0c42492f9f02c3191e3d8affdc9bab2e66becf10bd4250b768854074bf69efa7e4f2
+DIST benchmark-1.9.3.tar.gz 262114 BLAKE2B 978baf8380d81d98e7d465458953503881a12d4bc66f4bb3daf66b94c1bb1c268d4cc2733cd806af6e262faea1a7db2d71bdd86216a1c5f08b132b27fb0bff11 SHA512 bd1bc103c89ec74a7dfdb09aa4b308496f79ccfe0a728e31eed2814b9ff0f19aa930c58827d044dac07e2e776f990f74ebc4c7cd9c86b37871f8868e1581d4e1
diff --git a/dev-cpp/benchmark/benchmark-1.9.3.ebuild b/dev-cpp/benchmark/benchmark-1.9.3.ebuild
new file mode 100644
index 000000000000..6314ed631234
--- /dev/null
+++ b/dev-cpp/benchmark/benchmark-1.9.3.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit cmake-multilib flag-o-matic python-single-r1
+
+DESCRIPTION="A microbenchmark support library"
+HOMEPAGE="https://github.com/google/benchmark/"
+SRC_URI="https://github.com/google/benchmark/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0/$(ver_cut 1)"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="doc debug libpfm test +tools"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="tools? ( ${PYTHON_REQUIRED_USE} )"
+
+DEPEND="libpfm? ( dev-libs/libpfm:= )"
+
+RDEPEND="
+ ${DEPEND}
+
+ tools? (
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.10.0[${PYTHON_USEDEP}]
+ ')
+
+ ${PYTHON_DEPS}
+ )
+"
+
+BDEPEND="
+ doc? ( app-text/doxygen )
+ test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-1.9.0-fix-documentation-installation.patch" )
+
+pkg_setup() {
+ use tools && python-single-r1_pkg_setup
+}
+
+multilib_src_configure() {
+ # bug #943629
+ use debug || append-cppflags -DNDEBUG
+
+ local mycmakeargs=(
+ -DBENCHMARK_ENABLE_DOXYGEN="$(usex doc)"
+ -DBENCHMARK_ENABLE_GTEST_TESTS="$(usex test)"
+
+ # Users should control this via *FLAGS
+ -DBENCHMARK_ENABLE_LTO=OFF
+
+ -DBENCHMARK_ENABLE_LIBPFM="$(multilib_native_usex libpfm)"
+ -DBENCHMARK_ENABLE_TESTING="$(usex test)"
+ -DBENCHMARK_ENABLE_WERROR=OFF
+ -DBENCHMARK_INSTALL_DOCS="$(usex doc)"
+ -DBENCHMARK_USE_BUNDLED_GTEST=OFF
+
+ # This is determined by profile
+ -DBENCHMARK_USE_LIBCXX=OFF
+ )
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ CMAKE_SKIP_TESTS=(
+ # CMake already warns on these being brittle w/ diff
+ # compiler versions. Could do with investigation if bored
+ # but not critical. See bug #941538.
+
+ run_donotoptimize_assembly_test_CHECK
+ run_state_assembly_test_CHECK
+ run_clobber_memory_assembly_test_CHECK
+ )
+
+ cmake_src_test
+}
+
+multilib_src_install_all() {
+ dodoc CONTRIBUTING.md
+ dodoc CONTRIBUTORS
+
+ if use tools; then
+ python_domodule tools/gbench
+ python_doscript tools/compare.py
+ python_doscript tools/strip_asm.py
+ fi
+}
diff --git a/dev-cpp/cppgir/Manifest b/dev-cpp/cppgir/Manifest
index 49a377a5abab..d8867021f146 100644
--- a/dev-cpp/cppgir/Manifest
+++ b/dev-cpp/cppgir/Manifest
@@ -1 +1,2 @@
DIST cppgir-2.0_p20240928.tar.bz2 137200 BLAKE2B 8841b721120add8f75516d63217ffa1c293d7ffba7599353f8cb34400ebb0984224e49f434498bbe879a9864697b5e85fc7908a7977fd6c4874111daec5af72c SHA512 b2e0cf180b9ebe527d90c81cb4587282c71848fe6e54dee24d5fc88643adfd9915f63fa43f45f45177459d05a1f7deaa414caf0d41378849db968c8bfbd4e24c
+DIST cppgir-2.0_p20250508.tar.bz2 142126 BLAKE2B baccddc384ea55712ad7fc3ec09e47e2f4a4e34d1be2246ca4b4e54f758c64f827f78026e638662498fbdcf0988a552a76fba8284f1b57f9a1beaf9089575b1b SHA512 43f5266bc0c21b794f66467e7daf8de16c0eb682a30884cc13a8aa082a33046197a9d50b51aca995a6ee32aba082ecd942421d794ba30bff19923b18f8fcb6dc
diff --git a/dev-cpp/cppgir/cppgir-2.0_p20250508.ebuild b/dev-cpp/cppgir/cppgir-2.0_p20250508.ebuild
new file mode 100644
index 000000000000..2f834b2ed82e
--- /dev/null
+++ b/dev-cpp/cppgir/cppgir-2.0_p20250508.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="GObject-Introspection C++ binding wrapper generator"
+HOMEPAGE="https://gitlab.com/mnauw/cppgir"
+
+MY_PV="2f8680bb8278b0940c7d2347213fed5bcc098923"
+SRC_URI="https://gitlab.com/mnauw/cppgir/-/archive/${MY_PV}/cppgir-${MY_PV}.tar.bz2 -> ${P}.tar.bz2"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/boost:=
+ dev-libs/libfmt:=
+"
+DEPEND="${RDEPEND}
+ dev-cpp/expected-lite
+"
+BDEPEND="
+ doc? ( app-text/ronn-ng )
+ test? ( dev-libs/glib )
+"
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_DOC=$(usex doc)
+ -DBUILD_TESTING=$(usex test)
+ -DBUILD_EXAMPLES=no
+ -DINTERNAL_EXPECTED=no
+ )
+
+ append-cppflags \
+ -UDEFAULT_GIRPATH \
+ -DDEFAULT_GIRPATH="${EPREFIX}/usr/share:${EPREFIX}/usr/local/share"
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/expected-lite/Manifest b/dev-cpp/expected-lite/Manifest
index fb7e7d57e588..e7198f324ac6 100644
--- a/dev-cpp/expected-lite/Manifest
+++ b/dev-cpp/expected-lite/Manifest
@@ -1 +1,2 @@
DIST expected-lite-0.6.3.tar.gz 51878 BLAKE2B 7b9eb948d674d4fb4904c6deb4f2c8c2d578d73d8401dc386a49c5f09cc75c6fd70e0c6aa72cd1e1fb9d82cf55917c8a6d60868190ba063340eda4f3191ebc56 SHA512 d6a4f30f90494dda002ad27d227f17ce0201752178418d7dfada26441e853590d46816c88922e7d458dda68ad4414ddfe6b7fa4ed2a5854e4e3b22675b13f92a
+DIST expected-lite-0.8.0.tar.gz 57707 BLAKE2B 49323f17b7bf4224617349d938fcb0f7c0e13c5184ea83b1d45fe80a917cc3337ca498adbfdb2439abb48e30616f33a76188e7dae001abb29995becdfc626bd8 SHA512 1e2b36e4966d66aa202c9fd9c251e643593cd3e08d5ecbff8849e2a41abab199188aaca25f1d4e84f1b3cb2387875a9750900dfc4ee56c2dbf153af9c2520943
diff --git a/dev-cpp/expected-lite/expected-lite-0.8.0.ebuild b/dev-cpp/expected-lite/expected-lite-0.8.0.ebuild
new file mode 100644
index 000000000000..8b4a7b3add9a
--- /dev/null
+++ b/dev-cpp/expected-lite/expected-lite-0.8.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Expected objects in C++11 and later in a single-file header-only library"
+HOMEPAGE="https://github.com/martinmoene/expected-lite"
+
+SRC_URI="https://github.com/martinmoene/expected-lite/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DEXPECTED_LITE_OPT_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/lucene++/lucene++-3.0.9.ebuild b/dev-cpp/lucene++/lucene++-3.0.9.ebuild
index 649549be2b75..987c6da8e592 100644
--- a/dev-cpp/lucene++/lucene++-3.0.9.ebuild
+++ b/dev-cpp/lucene++/lucene++-3.0.9.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="|| ( LGPL-3 Apache-2.0 )"
SLOT="0"
-KEYWORDS="~amd64 ~hppa ~loong ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~amd64 ~hppa ~loong ppc ppc64 ~sparc ~x86"
IUSE="debug test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/muParserX/Manifest b/dev-cpp/muParserX/Manifest
index 601fb009cea9..d31f14ca5824 100644
--- a/dev-cpp/muParserX/Manifest
+++ b/dev-cpp/muParserX/Manifest
@@ -1,2 +1 @@
-DIST muParserX-4.0.11.tar.gz 215824 BLAKE2B f077fee44d4b67b02a0c559ce492b27107b0f5294eca7266e968c852e1e2503a4f5fc4d32b07e5c6ebca8ab95d7f30cdacd257439f70a7943c5ad22d111139c9 SHA512 67846a91b57e41731a656cfee68effdd9166e738108764be5d3080854d8a01bedbeacaaade7bee11c6b5f83019abddeca3b2c9acdfbb48629da6d9b92c79c7af
DIST muParserX-4.0.12.tar.gz 223342 BLAKE2B 63a5545a53ec1903b9315376edf6d01a455477994e36943fe1eb059f252f440db2e489aa1f32d34d3cff570817f48319fc914585504fbbf71f943d50ef5f9475 SHA512 5be7d846105c2eae7f9a7929147ff6890496ca80348c1b08c62fdf199a6b33d48225c4aeec00e03283e233c91574943b60ee4282169715f5ded8aa18fd9a732d
diff --git a/dev-cpp/muParserX/files/muParserX-4.0.12-cmake-4.patch b/dev-cpp/muParserX/files/muParserX-4.0.12-cmake-4.patch
new file mode 100644
index 000000000000..4b4f7a8a7279
--- /dev/null
+++ b/dev-cpp/muParserX/files/muParserX-4.0.12-cmake-4.patch
@@ -0,0 +1,49 @@
+https://github.com/beltoforion/muparserx/commit/d671af0882d4ba09a4bba810877b796f1877d41e
+https://github.com/beltoforion/muparserx/commit/c605872591d542e1630e3fcc4b292d8a0702acd2
+
+From d671af0882d4ba09a4bba810877b796f1877d41e Mon Sep 17 00:00:00 2001
+From: nalinigans <nalini@omicsautomation.com>
+Date: Tue, 21 Mar 2023 10:13:14 -0400
+Subject: [PATCH] Move to at least 3.3 to support
+ https://www.cmake.org/cmake/help/latest/policy/CMP0063.html
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2bc28fc..2d43781 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ ########################################################################
+ # Project setup
+ ########################################################################
+-cmake_minimum_required(VERSION 2.8.12)
++cmake_minimum_required(VERSION 3.3)
+ project(muparserx CXX)
+
+ ########################################################################
+From c605872591d542e1630e3fcc4b292d8a0702acd2 Mon Sep 17 00:00:00 2001
+From: Nalini Ganapati <nalini@datma.com>
+Date: Mon, 18 Dec 2023 11:46:35 -0800
+Subject: [PATCH] Move to 3.17 as cmake is dropping compatibility for <3.5
+ versions
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2d43781..00156e9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ ########################################################################
+ # Project setup
+ ########################################################################
+-cmake_minimum_required(VERSION 3.3)
++cmake_minimum_required(VERSION 3.17)
+ project(muparserx CXX)
+
+ ########################################################################
diff --git a/dev-cpp/muParserX/muParserX-4.0.11.ebuild b/dev-cpp/muParserX/muParserX-4.0.12-r1.ebuild
index 373e92ac6637..f17d00b61ac2 100644
--- a/dev-cpp/muParserX/muParserX-4.0.11.ebuild
+++ b/dev-cpp/muParserX/muParserX-4.0.12-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,9 +8,21 @@ inherit cmake
DESCRIPTION="Parsing Expressions with Strings, Complex Numbers, Vectors, Matrices and more"
HOMEPAGE="https://beltoforion.de/en/muparser/"
SRC_URI="https://github.com/beltoforion/muparserx/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/muparserx-${PV}
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~amd64"
-S="${WORKDIR}"/muparserx-${PV}
+PATCHES=(
+ "${FILESDIR}"/${P}-cmake-4.patch
+)
+
+src_configure() {
+ # TODO: -DUSE_WIDE_STRING?
+ local mycmakeargs=(
+ -DBUILD_EXAMPLES=OFF
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/robin-map/Manifest b/dev-cpp/robin-map/Manifest
index 53022c8d1cb2..7b0ac2fd37cc 100644
--- a/dev-cpp/robin-map/Manifest
+++ b/dev-cpp/robin-map/Manifest
@@ -1 +1,2 @@
DIST robin-map-1.3.0.tar.gz 70562 BLAKE2B be6ee47ea06edd2485c16e02eecf8db28c7d18c2eb933450df54e0bab8c7ded79954a295a65a8990b641896186efef391a9f9f0f5b236ba96154bfa6cac45e14 SHA512 862cb98d771d1acb692e27d1cc8a4f2cda0883b66af7b38b63ea702ed2d4fc4d49e5700ca4d5f5148fee132f36e111c4839d4f8c52c96a9c60f3937d941b2320
+DIST robin-map-1.4.0.tar.gz 70352 BLAKE2B 01eb44931454d06b353b0d2a517c1f61ff0f0ba638a2d722031b89c14988919063c23e810e6beca7b199d9a17b3318ae86780eef3260a89604661427786507c8 SHA512 d65831ac9d1ae1b26d26386ee06835d788d18529d1cd9132f892091377572b2f9d68aaecfce79956238d327764fea7a144ad2922ced3cbe47cda8734b2df419f
diff --git a/dev-cpp/robin-map/robin-map-1.4.0.ebuild b/dev-cpp/robin-map/robin-map-1.4.0.ebuild
new file mode 100644
index 000000000000..41a9aa3db6b5
--- /dev/null
+++ b/dev-cpp/robin-map/robin-map-1.4.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="C++ fast hash map and hash set using robin hood hashing"
+HOMEPAGE="https://github.com/Tessil/robin-map"
+
+if [[ ${PV} == 9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Tessil/robin-map"
+else
+ SRC_URI="https://github.com/Tessil/robin-map/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ test? ( dev-libs/boost )
+"
+
+src_test() {
+ cd tests || die
+ sed -i \
+ -e '/Boost_USE_STATIC_LIBS/d' \
+ -e 's/-Werror//' \
+ CMakeLists.txt || die
+ cmake -S "${S}/tests" -B . -GNinja || die
+ eninja
+ ./tsl_robin_map_tests || die
+}
diff --git a/dev-cpp/waylandpp/files/waylandpp-1.0.0-cmake4.patch b/dev-cpp/waylandpp/files/waylandpp-1.0.0-cmake4.patch
new file mode 100644
index 000000000000..994fc2f45668
--- /dev/null
+++ b/dev-cpp/waylandpp/files/waylandpp-1.0.0-cmake4.patch
@@ -0,0 +1,13 @@
+https://github.com/NilsBrause/waylandpp/pull/85
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -21,7 +21,7 @@
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+-cmake_minimum_required(VERSION 3.4)
++cmake_minimum_required(VERSION 3.4...4.0)
+ project(waylandpp VERSION 1.0.0 LANGUAGES CXX)
+
+ # packages
diff --git a/dev-cpp/waylandpp/waylandpp-1.0.0-r2.ebuild b/dev-cpp/waylandpp/waylandpp-1.0.0-r2.ebuild
new file mode 100644
index 000000000000..27ada98d76b3
--- /dev/null
+++ b/dev-cpp/waylandpp/waylandpp-1.0.0-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Wayland C++ bindings"
+HOMEPAGE="https://github.com/NilsBrause/waylandpp"
+
+LICENSE="MIT"
+IUSE="doc"
+SLOT="0/$(ver_cut 1-2)"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/NilsBrause/waylandpp.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/NilsBrause/waylandpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+fi
+
+RDEPEND="
+ >=dev-libs/wayland-1.11.0
+ media-libs/mesa[wayland]
+ >=dev-libs/pugixml-1.9-r1
+"
+DEPEND="${RDEPEND}
+ doc? (
+ app-text/doxygen
+ media-gfx/graphviz
+ )
+ "
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.0.0-gcc-13.patch
+ "${FILESDIR}"/${PN}-1.0.0-cmake4.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_DOCUMENTATION=$(usex doc)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/websocketpp/files/websocketpp-0.8.2-cmake4.patch b/dev-cpp/websocketpp/files/websocketpp-0.8.2-cmake4.patch
new file mode 100644
index 000000000000..9badaeb2105d
--- /dev/null
+++ b/dev-cpp/websocketpp/files/websocketpp-0.8.2-cmake4.patch
@@ -0,0 +1,23 @@
+From deb0a334471362608958ce59a6b0bcd3e5b73c24 Mon Sep 17 00:00:00 2001
+From: Alexander Bock <mail@alexanderbock.eu>
+Date: Mon, 31 Mar 2025 22:04:07 +0200
+Subject: [PATCH] Update minimum required CMake version to comply with CMake
+ 4.0
+
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 4f93e243a..92990c7dc 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -2,7 +2,7 @@
+ ############ Setup project and cmake
+ # Minimum cmake requirement. We should require a quite recent
+ # cmake for the dependency find macros etc. to be up to date.
+-cmake_minimum_required (VERSION 2.8.8)
++cmake_minimum_required (VERSION 3.10)
+
+ ############ Paths
+
diff --git a/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild b/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild
index 34177441a2c2..471fcd07c69e 100644
--- a/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild
+++ b/dev-cpp/websocketpp/websocketpp-0.8.2-r1.ebuild
@@ -14,7 +14,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc x86"
IUSE="examples test"
RESTRICT="!test? ( test )"
@@ -35,6 +35,8 @@ PATCHES=(
"${FILESDIR}/${P}-c++20-compat.patch"
# From https://github.com/zaphoyd/websocketpp/pull/1164
"${WORKDIR}/${P}-boost-1.87-compat.patch"
+ # https://github.com/zaphoyd/websocketpp/commit/deb0a334471362608958ce59a6b0bcd3e5b73c24
+ "${FILESDIR}/${P}-cmake4.patch" # bug 953936
)
src_configure() {