summaryrefslogtreecommitdiff
path: root/dev-cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/ETL/metadata.xml2
-rw-r--r--dev-cpp/abseil-cpp/Manifest2
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20250127.1.ebuild2
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20250512.1.ebuild2
-rw-r--r--dev-cpp/abseil-cpp/abseil-cpp-20260107.1.ebuild121
-rw-r--r--dev-cpp/abseil-cpp/metadata.xml2
-rw-r--r--dev-cpp/ada/ada-3.4.4.ebuild2
-rw-r--r--dev-cpp/ada/metadata.xml2
-rw-r--r--dev-cpp/aixlog/metadata.xml2
-rw-r--r--dev-cpp/amqp-cpp/metadata.xml2
-rw-r--r--dev-cpp/antlr-cpp/metadata.xml2
-rw-r--r--dev-cpp/argparse/metadata.xml2
-rw-r--r--dev-cpp/asio/metadata.xml2
-rw-r--r--dev-cpp/atkmm/atkmm-2.28.4.ebuild2
-rw-r--r--dev-cpp/atkmm/atkmm-2.36.3.ebuild2
-rw-r--r--dev-cpp/atkmm/metadata.xml2
-rw-r--r--dev-cpp/aws-crt-cpp/metadata.xml2
-rw-r--r--dev-cpp/aws-sdk-cpp/metadata.xml2
-rw-r--r--dev-cpp/azure-core/metadata.xml2
-rw-r--r--dev-cpp/azure-identity/metadata.xml2
-rw-r--r--dev-cpp/azure-security-keyvault-certificates/metadata.xml2
-rw-r--r--dev-cpp/azure-security-keyvault-keys/metadata.xml2
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild2
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.2.ebuild2
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.3.ebuild2
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.4.ebuild2
-rw-r--r--dev-cpp/benchmark/benchmark-1.9.5.ebuild2
-rw-r--r--dev-cpp/benchmark/metadata.xml2
-rw-r--r--dev-cpp/blurhash/metadata.xml2
-rw-r--r--dev-cpp/boxed-cpp/metadata.xml2
-rw-r--r--dev-cpp/cairomm/cairomm-1.14.5.ebuild2
-rw-r--r--dev-cpp/cairomm/cairomm-1.18.0.ebuild2
-rw-r--r--dev-cpp/cairomm/metadata.xml2
-rw-r--r--dev-cpp/catch/catch-2.13.10.ebuild2
-rw-r--r--dev-cpp/catch/catch-3.12.0.ebuild2
-rw-r--r--dev-cpp/catch/catch-3.13.0.ebuild2
-rw-r--r--dev-cpp/catch/catch-9999.ebuild4
-rw-r--r--dev-cpp/catch/metadata.xml2
-rw-r--r--dev-cpp/cctz/metadata.xml2
-rw-r--r--dev-cpp/cld3/cld3-3.0.13_p20220331.ebuild21
-rw-r--r--dev-cpp/cld3/metadata.xml2
-rw-r--r--dev-cpp/clhpp/metadata.xml2
-rw-r--r--dev-cpp/cli11/metadata.xml2
-rw-r--r--dev-cpp/clipp/metadata.xml2
-rw-r--r--dev-cpp/clucene/metadata.xml2
-rw-r--r--dev-cpp/coeurl/coeurl-0.3.1.ebuild2
-rw-r--r--dev-cpp/coeurl/coeurl-0.3.2.ebuild2
-rw-r--r--dev-cpp/coeurl/metadata.xml2
-rw-r--r--dev-cpp/cpp-httplib/Manifest4
-rw-r--r--dev-cpp/cpp-httplib/cpp-httplib-0.45.0.ebuild (renamed from dev-cpp/cpp-httplib/cpp-httplib-0.43.4.ebuild)0
-rw-r--r--dev-cpp/cpp-httplib/cpp-httplib-0.46.0.ebuild (renamed from dev-cpp/cpp-httplib/cpp-httplib-0.44.0.ebuild)0
-rw-r--r--dev-cpp/cpp-httplib/metadata.xml2
-rw-r--r--dev-cpp/cpp-jwt/metadata.xml2
-rw-r--r--dev-cpp/cpp-utilities/metadata.xml2
-rw-r--r--dev-cpp/cppdap/metadata.xml2
-rw-r--r--dev-cpp/cppgir/cppgir-2.0_p20260321.ebuild2
-rw-r--r--dev-cpp/cppgir/metadata.xml2
-rw-r--r--dev-cpp/cpprestsdk/metadata.xml2
-rw-r--r--dev-cpp/cpptoml/metadata.xml2
-rw-r--r--dev-cpp/cpptrace/metadata.xml2
-rw-r--r--dev-cpp/ctemplate/ctemplate-2.4.ebuild2
-rw-r--r--dev-cpp/ctemplate/metadata.xml2
-rw-r--r--dev-cpp/curlpp/metadata.xml2
-rw-r--r--dev-cpp/doctest/metadata.xml2
-rw-r--r--dev-cpp/dpp/Manifest1
-rw-r--r--dev-cpp/dpp/dpp-10.1.5.ebuild52
-rw-r--r--dev-cpp/dpp/metadata.xml2
-rw-r--r--dev-cpp/drogon/metadata.xml2
-rw-r--r--dev-cpp/edencommon/metadata.xml2
-rw-r--r--dev-cpp/eigen/Manifest4
-rw-r--r--dev-cpp/eigen/eigen-3.4.1.ebuild651
-rw-r--r--dev-cpp/eigen/eigen-3.4.9999.ebuild533
-rw-r--r--dev-cpp/eigen/eigen-5.0.1.ebuild665
-rw-r--r--dev-cpp/eigen/eigen-5.0.9999.ebuild665
-rw-r--r--dev-cpp/eigen/eigen-9999.ebuild524
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch6
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch30
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch25
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch72
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch136
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch35
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch29
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch29
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch57
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch248
-rw-r--r--dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch61
-rw-r--r--dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch29
-rw-r--r--dev-cpp/eigen/files/eigen-9999-please_protect_your_min_with_parentheses.patch54
-rw-r--r--dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch22
-rw-r--r--dev-cpp/eigen/metadata.xml15
-rw-r--r--dev-cpp/elfio/metadata.xml2
-rw-r--r--dev-cpp/expected-lite/metadata.xml2
-rw-r--r--dev-cpp/expected/metadata.xml2
-rw-r--r--dev-cpp/exprtk/metadata.xml2
-rw-r--r--dev-cpp/fast_double_parser/metadata.xml2
-rw-r--r--dev-cpp/fast_float/metadata.xml2
-rw-r--r--dev-cpp/fb303/metadata.xml2
-rw-r--r--dev-cpp/fbthrift/metadata.xml2
-rw-r--r--dev-cpp/finalcut/files/metadata.xml2
-rw-r--r--dev-cpp/finalcut/metadata.xml2
-rw-r--r--dev-cpp/fizz/metadata.xml2
-rw-r--r--dev-cpp/fkYAML/files/fkYAML-0.4.2_p20250522-Strip-Werror.patch30
-rw-r--r--dev-cpp/fkYAML/fkYAML-0.4.2_p20250522.ebuild1
-rw-r--r--dev-cpp/fkYAML/metadata.xml2
-rw-r--r--dev-cpp/folly/metadata.xml2
-rw-r--r--dev-cpp/frugally-deep/frugally-deep-0.15.30.ebuild4
-rw-r--r--dev-cpp/frugally-deep/metadata.xml2
-rw-r--r--dev-cpp/functional-plus/metadata.xml2
-rw-r--r--dev-cpp/gflags/metadata.xml2
-rw-r--r--dev-cpp/glaze/glaze-5.2.1.ebuild2
-rw-r--r--dev-cpp/glaze/glaze-5.5.4.ebuild2
-rw-r--r--dev-cpp/glaze/glaze-6.5.1.ebuild2
-rw-r--r--dev-cpp/glaze/metadata.xml2
-rw-r--r--dev-cpp/glibmm/Manifest1
-rw-r--r--dev-cpp/glibmm/glibmm-2.66.8.ebuild2
-rw-r--r--dev-cpp/glibmm/glibmm-2.84.0.ebuild2
-rw-r--r--dev-cpp/glibmm/glibmm-2.88.0.ebuild52
-rw-r--r--dev-cpp/glibmm/metadata.xml2
-rw-r--r--dev-cpp/glog/metadata.xml2
-rw-r--r--dev-cpp/gpgmepp/Manifest2
-rw-r--r--dev-cpp/gpgmepp/gpgmepp-2.1.0.ebuild40
-rw-r--r--dev-cpp/gpgmepp/metadata.xml2
-rw-r--r--dev-cpp/gsl-lite/Manifest2
-rw-r--r--dev-cpp/gsl-lite/gsl-lite-1.1.0.ebuild (renamed from dev-cpp/gsl-lite/gsl-lite-0.38.0-r1.ebuild)0
-rw-r--r--dev-cpp/gsl-lite/metadata.xml2
-rw-r--r--dev-cpp/gstreamermm/metadata.xml2
-rw-r--r--dev-cpp/gtest/gtest-1.14.0-r2.ebuild2
-rw-r--r--dev-cpp/gtest/metadata.xml2
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.24.10.ebuild2
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.24.9.ebuild2
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.14.0-r1.ebuild2
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild2
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.20.0.ebuild2
-rw-r--r--dev-cpp/gtkmm/metadata.xml2
-rw-r--r--dev-cpp/gtksourceviewmm/metadata.xml2
-rw-r--r--dev-cpp/gulrak-filesystem/metadata.xml2
-rw-r--r--dev-cpp/highway/metadata.xml2
-rw-r--r--dev-cpp/htmlcxx/metadata.xml2
-rw-r--r--dev-cpp/indicators/metadata.xml2
-rw-r--r--dev-cpp/json11/metadata.xml2
-rw-r--r--dev-cpp/jsoncons/metadata.xml2
-rw-r--r--dev-cpp/jwt-cpp/jwt-cpp-0.7.2-r1.ebuild96
-rw-r--r--dev-cpp/jwt-cpp/metadata.xml3
-rw-r--r--dev-cpp/kokkos/Manifest3
-rw-r--r--dev-cpp/kokkos/kokkos-4.0.1-r1.ebuild56
-rw-r--r--dev-cpp/kokkos/kokkos-4.6.2-r1.ebuild61
-rw-r--r--dev-cpp/kokkos/kokkos-4.7.4.ebuild114
-rw-r--r--dev-cpp/kokkos/kokkos-5.1.1.ebuild112
-rw-r--r--dev-cpp/kokkos/metadata.xml2
-rw-r--r--dev-cpp/libcmis/metadata.xml2
-rw-r--r--dev-cpp/libjson-rpc-cpp/metadata.xml2
-rw-r--r--dev-cpp/libmcpp/metadata.xml2
-rw-r--r--dev-cpp/libxmlpp/metadata.xml2
-rw-r--r--dev-cpp/lucene++/metadata.xml2
-rw-r--r--dev-cpp/magic_enum/metadata.xml2
-rw-r--r--dev-cpp/mm-common/metadata.xml2
-rw-r--r--dev-cpp/mm-common/mm-common-1.0.6.ebuild2
-rw-r--r--dev-cpp/mm-common/mm-common-1.0.7.ebuild2
-rw-r--r--dev-cpp/ms-gsl/metadata.xml2
-rw-r--r--dev-cpp/msgpack-cxx/metadata.xml2
-rw-r--r--dev-cpp/muParser/metadata.xml2
-rw-r--r--dev-cpp/mustache/metadata.xml2
-rw-r--r--dev-cpp/mvfst/metadata.xml2
-rw-r--r--dev-cpp/nlohmann_json/metadata.xml2
-rw-r--r--dev-cpp/notcurses/metadata.xml2
-rw-r--r--dev-cpp/opentelemetry-cpp/metadata.xml2
-rw-r--r--dev-cpp/pangomm/metadata.xml2
-rw-r--r--dev-cpp/pangomm/pangomm-2.46.4.ebuild2
-rw-r--r--dev-cpp/pangomm/pangomm-2.50.2.ebuild2
-rw-r--r--dev-cpp/pangomm/pangomm-2.56.1.ebuild2
-rw-r--r--dev-cpp/parallel-hashmap/metadata.xml2
-rw-r--r--dev-cpp/pcg-cpp/metadata.xml2
-rw-r--r--dev-cpp/picojson/metadata.xml2
-rw-r--r--dev-cpp/popl/metadata.xml2
-rw-r--r--dev-cpp/prometheus-cpp/metadata.xml2
-rw-r--r--dev-cpp/pystring/metadata.xml2
-rw-r--r--dev-cpp/qt-jdenticon/metadata.xml2
-rw-r--r--dev-cpp/random123/metadata.xml2
-rw-r--r--dev-cpp/range-v3/metadata.xml2
-rw-r--r--dev-cpp/rapidcheck/metadata.xml2
-rw-r--r--dev-cpp/rapidfuzz-cpp/metadata.xml2
-rw-r--r--dev-cpp/rapidyaml/metadata.xml2
-rw-r--r--dev-cpp/reflection-cpp/metadata.xml2
-rw-r--r--dev-cpp/robin-map/metadata.xml2
-rw-r--r--dev-cpp/robin-map/robin-map-1.4.1.ebuild2
-rw-r--r--dev-cpp/robotraconteur-companion/Manifest1
-rw-r--r--dev-cpp/robotraconteur-companion/metadata.xml2
-rw-r--r--dev-cpp/robotraconteur-companion/robotraconteur-companion-0.4.3.ebuild34
-rw-r--r--dev-cpp/robotraconteur/Manifest1
-rw-r--r--dev-cpp/robotraconteur/metadata.xml2
-rw-r--r--dev-cpp/robotraconteur/robotraconteur-1.2.7.ebuild2
-rw-r--r--dev-cpp/robotraconteur/robotraconteur-1.2.8.ebuild89
-rw-r--r--dev-cpp/safeint/files/safeint-3.0.28a-strip-O3.patch28
-rw-r--r--dev-cpp/safeint/metadata.xml2
-rw-r--r--dev-cpp/safeint/safeint-3.0.28a.ebuild1
-rw-r--r--dev-cpp/scitokens-cpp/metadata.xml2
-rw-r--r--dev-cpp/scnlib/metadata.xml2
-rw-r--r--dev-cpp/sdbus-c++/Manifest2
-rw-r--r--dev-cpp/sdbus-c++/metadata.xml2
-rw-r--r--dev-cpp/sdbus-c++/sdbus-c++-2.3.1.ebuild (renamed from dev-cpp/sdbus-c++/sdbus-c++-2.1.0.ebuild)2
-rw-r--r--dev-cpp/simdutf/metadata.xml2
-rw-r--r--dev-cpp/simdutf/simdutf-7.7.1.ebuild2
-rw-r--r--dev-cpp/simdutf/simdutf-8.2.0.ebuild2
-rw-r--r--dev-cpp/simdutf/simdutf-9.0.0.ebuild2
-rw-r--r--dev-cpp/simpleini/metadata.xml2
-rw-r--r--dev-cpp/sol2/metadata.xml2
-rw-r--r--dev-cpp/sparsehash/metadata.xml2
-rw-r--r--dev-cpp/sprout/metadata.xml2
-rw-r--r--dev-cpp/string-theory/metadata.xml2
-rw-r--r--dev-cpp/taskflow/Manifest1
-rw-r--r--dev-cpp/taskflow/metadata.xml2
-rw-r--r--dev-cpp/taskflow/taskflow-4.0.0.ebuild38
-rw-r--r--dev-cpp/tbb/metadata.xml2
-rw-r--r--dev-cpp/tclap/metadata.xml2
-rw-r--r--dev-cpp/termcolor/metadata.xml2
-rw-r--r--dev-cpp/tinygltf/metadata.xml2
-rw-r--r--dev-cpp/tinygltf/tinygltf-2.9.6.ebuild2
-rw-r--r--dev-cpp/tlfloat/metadata.xml2
-rw-r--r--dev-cpp/toml11/metadata.xml2
-rw-r--r--dev-cpp/tomlplusplus/metadata.xml2
-rw-r--r--dev-cpp/trantor/metadata.xml2
-rw-r--r--dev-cpp/tree/metadata.xml2
-rw-r--r--dev-cpp/trompeloeil/Manifest1
-rw-r--r--dev-cpp/trompeloeil/metadata.xml2
-rw-r--r--dev-cpp/trompeloeil/trompeloeil-49.ebuild38
-rw-r--r--dev-cpp/units/Manifest3
-rw-r--r--dev-cpp/units/files/units-2.3.3-disable-failing-tests.patch13
-rw-r--r--dev-cpp/units/metadata.xml2
-rw-r--r--dev-cpp/units/units-2.3.4.ebuild28
-rw-r--r--dev-cpp/units/units-3.3.0.ebuild (renamed from dev-cpp/units/units-2.3.3.ebuild)9
-rw-r--r--dev-cpp/ut2-glaze/metadata.xml2
-rw-r--r--dev-cpp/valijson/metadata.xml2
-rw-r--r--dev-cpp/wangle/metadata.xml2
-rw-r--r--dev-cpp/waylandpp/metadata.xml2
-rw-r--r--dev-cpp/websocketpp/metadata.xml2
-rw-r--r--dev-cpp/workflow/metadata.xml2
-rw-r--r--dev-cpp/wt/metadata.xml2
-rw-r--r--dev-cpp/xsimd/Manifest1
-rw-r--r--dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch58
-rw-r--r--dev-cpp/xsimd/metadata.xml2
-rw-r--r--dev-cpp/xsimd/xsimd-13.2.0.ebuild2
-rw-r--r--dev-cpp/xsimd/xsimd-14.0.0.ebuild6
-rw-r--r--dev-cpp/xsimd/xsimd-14.2.0.ebuild70
-rw-r--r--dev-cpp/xtensor/metadata.xml2
-rw-r--r--dev-cpp/xtensor/xtensor-0.26.0.ebuild2
-rw-r--r--dev-cpp/xtl/metadata.xml2
-rw-r--r--dev-cpp/xtl/xtl-0.8.0.ebuild2
-rw-r--r--dev-cpp/yaml-cpp/metadata.xml2
248 files changed, 4695 insertions, 765 deletions
diff --git a/dev-cpp/ETL/metadata.xml b/dev-cpp/ETL/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/ETL/metadata.xml
+++ b/dev-cpp/ETL/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/abseil-cpp/Manifest b/dev-cpp/abseil-cpp/Manifest
index 24eecd1c8dc0..f1e04e0fe1e4 100644
--- a/dev-cpp/abseil-cpp/Manifest
+++ b/dev-cpp/abseil-cpp/Manifest
@@ -2,3 +2,5 @@ DIST abseil-cpp-20250127.0-PR1834.patch 968 BLAKE2B b563725afcae9fcbddde9aef1e49
DIST abseil-cpp-20250127.1.tar.gz 2267282 BLAKE2B 61a6f0340c3883f097c56161d67f0046398513ef716d33a7b26e55e33032262f2e5f02c678318688f7f72a5eea7a88b37abf6d2f84e52626a258c497bea80a83 SHA512 8312acf0ed74fa28c6397f3e41ada656dbd5ca2bf8db484319d74b144ad19c0ebdc77f7f03436be6c6ca1cde706b9055079233cf0d6b5ada4ca48406f8a55dd8
DIST abseil-cpp-20250512.1.tar.gz 2221441 BLAKE2B f84faffcc606b0e4ece3cd8494e6727d74faf74c2900928c317dbce1393a4e3095ecdea4529311323b99459879957841a7300fed0499eba28fc9d764c9ddca40 SHA512 d3ba654ed7dd7b432494918b2de5d8e2b0ad1c42752c5d726f20d6fe2841828fb4e8beb853e3570a11efecef725029ce5ffa3ebc434efff007e7f60735eb9856
DIST abseil-cpp-20250814.1.tar.gz 2235716 BLAKE2B ae29b10f7efb18e20a4c7e4931f20ee169775022cd9ce15c0a23e28a2c3c577d2cf30f60f0890112e45378684485b8b11b101eaf6827faa604e5ef38fb794862 SHA512 7083b73c3cf763f6f7a7edb70a5171f44d27045a0f5e52ca043e0a86379af2c50cf85dbfea30ebaa22a7bb2929452581d26b1ba18945023b057267d4c3bad2f7
+DIST abseil-cpp-20260107.0-c++23.patch 3916 BLAKE2B 63d23b1604d43f1954e51569c77f122aa93a96ceafd6f8edd8d5500140804b564f0b23f9d10432ed9ec83ec99dc852cedbf31ec9be1ceba571550a1ed711adaa SHA512 a37dd86d6cf985a614419c5cb7931535cb7624c6684ca8044fc775b7715730c8d65cd7d66616a4b09e0e1edd69390e81d5c9fad0288d7b5e140063ac6e863fe8
+DIST abseil-cpp-20260107.1.tar.gz 2301097 BLAKE2B 1c0814eefb6181a82437128c9d3c08dec0540c2353b8a317204c49b1510b311173897de4a737da6f0cc034bf1b23717dea54f0338e3794f6a56f7292f53937bc SHA512 f5012885d6b6844a9cf5ed92ad5468b8757db33dfe1364bfb232fff928e06c550c7eb4557f45186a8ac4d18b178df9be267681abab4a6de40823b574afbe9960
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20250127.1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20250127.1.ebuild
index e6cf7eb68e89..3d14e6851015 100644
--- a/dev-cpp/abseil-cpp/abseil-cpp-20250127.1.ebuild
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20250127.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit cmake-multilib python-any-r1
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20250512.1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20250512.1.ebuild
index 85e48cd9b255..11c45a8d6168 100644
--- a/dev-cpp/abseil-cpp/abseil-cpp-20250512.1.ebuild
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20250512.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit cmake-multilib python-any-r1
diff --git a/dev-cpp/abseil-cpp/abseil-cpp-20260107.1.ebuild b/dev-cpp/abseil-cpp/abseil-cpp-20260107.1.ebuild
new file mode 100644
index 000000000000..1e09118841f2
--- /dev/null
+++ b/dev-cpp/abseil-cpp/abseil-cpp-20260107.1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 2020-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit cmake-multilib edo 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
+ https://github.com/abseil/abseil-cpp/commit/28e6a799ba550f8d499bfda5e100d16937804f72.patch
+ -> ${PN}-20260107.0-c++23.patch
+"
+
+LICENSE="Apache-2.0"
+
+# ABI, we want rebuilds to avoid hidden breakage
+SLOT="0/${PV:2:4}.$(ver_cut 2).0-cpp20"
+# SONAME
+# SLOT="0/${PV:2:4}.0.0-cpp20"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="debug test test-helpers"
+
+RDEPEND="
+ test? (
+ dev-cpp/gtest:=[${MULTILIB_USEDEP}]
+ )
+ test-helpers? (
+ dev-cpp/gtest:=[${MULTILIB_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ sys-libs/timezone-data
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-20230802.0-sdata-tests.patch"
+ "${FILESDIR}/${PN}-20240722.0-lto-odr.patch"
+ # https://github.com/abseil/abseil-cpp/issues/1992
+ "${DISTDIR}/${PN}-20260107.0-c++23.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ use ppc && eapply "${FILESDIR}/${PN}-atomic.patch"
+
+ # un-hardcode abseil compiler flags
+ # 942192
+ sed -i \
+ -e '/NOMINMAX/d' \
+ absl/copts/copts.py || die
+
+ # now generate cmake files
+ python_fix_shebang absl/copts/generate_copts.py
+ edo absl/copts/generate_copts.py
+}
+
+multilib_src_configure() {
+ append-cxxflags "$(usex debug '-DDEBUG' '-DNDEBUG')"
+
+ if [[ ${ABI} == x86 ]]; then
+ # error: ‘_mm_cvtsi128_si64’ was not declared in this scope
+ # maybe fixed in 4bd9ee20
+ local _CXXFLAGS="${CXXFLAGS}"
+ local CXXFLAGS="${_CXXFLAGS} -mno-aes"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD=20
+ -DABSL_ENABLE_INSTALL="yes"
+ -DABSL_USE_EXTERNAL_GOOGLETEST="yes"
+ -DABSL_PROPAGATE_CXX_STD="yes"
+
+ # TEST_HELPERS needed for protobuf (bug #915902)
+ -DABSL_BUILD_TEST_HELPERS="$(usex test-helpers)"
+
+ -DABSL_BUILD_TESTING="$(usex test)"
+ )
+ # intentional use, it requires both variables for tests.
+ # (BUILD_TESTING AND ABSL_BUILD_TESTING)
+ if use test; then
+ mycmakeargs+=(
+ -DBUILD_TESTING="yes"
+ )
+ fi
+
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ if ! use amd64; then
+ CMAKE_SKIP_TESTS=(
+ absl_symbolize_test
+ )
+
+ if use ppc; then
+ CMAKE_SKIP_TESTS+=(
+ absl_failure_signal_handler_test
+ )
+ fi
+ else
+ if ! multilib_is_native_abi; then
+ CMAKE_SKIP_TESTS+=(
+ absl_hash_instantiated_test
+ )
+ fi
+ fi
+
+ cmake_src_test
+}
diff --git a/dev-cpp/abseil-cpp/metadata.xml b/dev-cpp/abseil-cpp/metadata.xml
index 20649dffbf60..09f8f50b8f5b 100644
--- a/dev-cpp/abseil-cpp/metadata.xml
+++ b/dev-cpp/abseil-cpp/metadata.xml
@@ -13,5 +13,5 @@
<use>
<flag name="test-helpers">Build libraries that you can use to write tests against Abseil code.</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/ada/ada-3.4.4.ebuild b/dev-cpp/ada/ada-3.4.4.ebuild
index 5f29d430cdc2..e4821e4e5e20 100644
--- a/dev-cpp/ada/ada-3.4.4.ebuild
+++ b/dev-cpp/ada/ada-3.4.4.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/ada-url/ada/archive/refs/tags/v${PV}.tar.gz -> ${P}.
LICENSE="Apache-2.0 MIT"
SLOT="0/$(ver_cut 1)"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv ~x86"
RESTRICT="test"
src_configure() {
diff --git a/dev-cpp/ada/metadata.xml b/dev-cpp/ada/metadata.xml
index 5ae172f655f1..b5d32eb8aca3 100644
--- a/dev-cpp/ada/metadata.xml
+++ b/dev-cpp/ada/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/aixlog/metadata.xml b/dev-cpp/aixlog/metadata.xml
index 923d160c1006..17d69ccf7580 100644
--- a/dev-cpp/aixlog/metadata.xml
+++ b/dev-cpp/aixlog/metadata.xml
@@ -12,5 +12,5 @@
</maintainer>
<bugs-to>https://github.com/badaix/aixlog/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/amqp-cpp/metadata.xml b/dev-cpp/amqp-cpp/metadata.xml
index 841d0e2c422c..fadef03f10df 100644
--- a/dev-cpp/amqp-cpp/metadata.xml
+++ b/dev-cpp/amqp-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>Alexey Shvetsov</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/antlr-cpp/metadata.xml b/dev-cpp/antlr-cpp/metadata.xml
index 66ee50826efd..da4360c8272a 100644
--- a/dev-cpp/antlr-cpp/metadata.xml
+++ b/dev-cpp/antlr-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Science Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/argparse/metadata.xml b/dev-cpp/argparse/metadata.xml
index 841d0e2c422c..fadef03f10df 100644
--- a/dev-cpp/argparse/metadata.xml
+++ b/dev-cpp/argparse/metadata.xml
@@ -6,5 +6,5 @@
<name>Alexey Shvetsov</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/asio/metadata.xml b/dev-cpp/asio/metadata.xml
index d2524e65418b..e930ba360f2d 100644
--- a/dev-cpp/asio/metadata.xml
+++ b/dev-cpp/asio/metadata.xml
@@ -14,5 +14,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>ports</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/atkmm/atkmm-2.28.4.ebuild b/dev-cpp/atkmm/atkmm-2.28.4.ebuild
index b38f476a1d49..a54b4344c8e9 100644
--- a/dev-cpp/atkmm/atkmm-2.28.4.ebuild
+++ b/dev-cpp/atkmm/atkmm-2.28.4.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for the ATK library"
diff --git a/dev-cpp/atkmm/atkmm-2.36.3.ebuild b/dev-cpp/atkmm/atkmm-2.36.3.ebuild
index 3ffd062a328c..a7ae4416dfe1 100644
--- a/dev-cpp/atkmm/atkmm-2.36.3.ebuild
+++ b/dev-cpp/atkmm/atkmm-2.36.3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for the ATK library"
diff --git a/dev-cpp/atkmm/metadata.xml b/dev-cpp/atkmm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/atkmm/metadata.xml
+++ b/dev-cpp/atkmm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/aws-crt-cpp/metadata.xml b/dev-cpp/aws-crt-cpp/metadata.xml
index 054a68275071..c207121138e5 100644
--- a/dev-cpp/aws-crt-cpp/metadata.xml
+++ b/dev-cpp/aws-crt-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>Jaco Kroon</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/aws-sdk-cpp/metadata.xml b/dev-cpp/aws-sdk-cpp/metadata.xml
index 8d4554afb752..2316dc3036dd 100644
--- a/dev-cpp/aws-sdk-cpp/metadata.xml
+++ b/dev-cpp/aws-sdk-cpp/metadata.xml
@@ -22,5 +22,5 @@
<flag name="management">Adds access to operational management related services.</flag>
<flag name="uncategorized">Add access to services that do not easily fit into existing groups.</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/azure-core/metadata.xml b/dev-cpp/azure-core/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/azure-core/metadata.xml
+++ b/dev-cpp/azure-core/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/azure-identity/metadata.xml b/dev-cpp/azure-identity/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/azure-identity/metadata.xml
+++ b/dev-cpp/azure-identity/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/azure-security-keyvault-certificates/metadata.xml b/dev-cpp/azure-security-keyvault-certificates/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/azure-security-keyvault-certificates/metadata.xml
+++ b/dev-cpp/azure-security-keyvault-certificates/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/azure-security-keyvault-keys/metadata.xml b/dev-cpp/azure-security-keyvault-keys/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/azure-security-keyvault-keys/metadata.xml
+++ b/dev-cpp/azure-security-keyvault-keys/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild b/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
index 4c8099a35a29..febd9dccef01 100644
--- a/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.1-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake-multilib flag-o-matic python-single-r1
diff --git a/dev-cpp/benchmark/benchmark-1.9.2.ebuild b/dev-cpp/benchmark/benchmark-1.9.2.ebuild
index e996372c4b77..d361eadc3b6b 100644
--- a/dev-cpp/benchmark/benchmark-1.9.2.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake-multilib flag-o-matic python-single-r1
diff --git a/dev-cpp/benchmark/benchmark-1.9.3.ebuild b/dev-cpp/benchmark/benchmark-1.9.3.ebuild
index e0dcb139d443..bbbfda607170 100644
--- a/dev-cpp/benchmark/benchmark-1.9.3.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.3.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake-multilib flag-o-matic python-single-r1
diff --git a/dev-cpp/benchmark/benchmark-1.9.4.ebuild b/dev-cpp/benchmark/benchmark-1.9.4.ebuild
index e0dcb139d443..bbbfda607170 100644
--- a/dev-cpp/benchmark/benchmark-1.9.4.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.4.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake-multilib flag-o-matic python-single-r1
diff --git a/dev-cpp/benchmark/benchmark-1.9.5.ebuild b/dev-cpp/benchmark/benchmark-1.9.5.ebuild
index 4a8ffcf9f028..50b88a10ebc9 100644
--- a/dev-cpp/benchmark/benchmark-1.9.5.ebuild
+++ b/dev-cpp/benchmark/benchmark-1.9.5.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit cmake-multilib flag-o-matic python-single-r1
diff --git a/dev-cpp/benchmark/metadata.xml b/dev-cpp/benchmark/metadata.xml
index 49591ea6e6b9..8774526f916d 100644
--- a/dev-cpp/benchmark/metadata.xml
+++ b/dev-cpp/benchmark/metadata.xml
@@ -25,5 +25,5 @@
<flag name="libpfm">Activer le support de <pkg>dev-libs/libpfm</pkg></flag>
<flag name="tools">Installer des outils Python additionnels</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/blurhash/metadata.xml b/dev-cpp/blurhash/metadata.xml
index c4838a0906e5..3d8e3d9bbb0b 100644
--- a/dev-cpp/blurhash/metadata.xml
+++ b/dev-cpp/blurhash/metadata.xml
@@ -6,5 +6,5 @@
<name>tea</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/boxed-cpp/metadata.xml b/dev-cpp/boxed-cpp/metadata.xml
index 97d84b677ff0..4787336d3f68 100644
--- a/dev-cpp/boxed-cpp/metadata.xml
+++ b/dev-cpp/boxed-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>David Roman</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cairomm/cairomm-1.14.5.ebuild b/dev-cpp/cairomm/cairomm-1.14.5.ebuild
index c70f462b690e..4aa19aab3e01 100644
--- a/dev-cpp/cairomm/cairomm-1.14.5.ebuild
+++ b/dev-cpp/cairomm/cairomm-1.14.5.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit meson-multilib python-any-r1
DESCRIPTION="C++ bindings for the Cairo vector graphics library"
diff --git a/dev-cpp/cairomm/cairomm-1.18.0.ebuild b/dev-cpp/cairomm/cairomm-1.18.0.ebuild
index 929528ec9403..5b430d7fd38a 100644
--- a/dev-cpp/cairomm/cairomm-1.18.0.ebuild
+++ b/dev-cpp/cairomm/cairomm-1.18.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit meson-multilib python-any-r1
DESCRIPTION="C++ bindings for the Cairo vector graphics library"
diff --git a/dev-cpp/cairomm/metadata.xml b/dev-cpp/cairomm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/cairomm/metadata.xml
+++ b/dev-cpp/cairomm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/catch/catch-2.13.10.ebuild b/dev-cpp/catch/catch-2.13.10.ebuild
index 344863ed07e1..4c8244d5cf86 100644
--- a/dev-cpp/catch/catch-2.13.10.ebuild
+++ b/dev-cpp/catch/catch-2.13.10.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..12} )
inherit cmake python-any-r1
diff --git a/dev-cpp/catch/catch-3.12.0.ebuild b/dev-cpp/catch/catch-3.12.0.ebuild
index 82ee08503d70..8b9884010f45 100644
--- a/dev-cpp/catch/catch-3.12.0.ebuild
+++ b/dev-cpp/catch/catch-3.12.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib python-any-r1
diff --git a/dev-cpp/catch/catch-3.13.0.ebuild b/dev-cpp/catch/catch-3.13.0.ebuild
index a34cc6ce712f..bc84098c0f7c 100644
--- a/dev-cpp/catch/catch-3.13.0.ebuild
+++ b/dev-cpp/catch/catch-3.13.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib python-any-r1
diff --git a/dev-cpp/catch/catch-9999.ebuild b/dev-cpp/catch/catch-9999.ebuild
index bbf89864d3ba..3bea8d333304 100644
--- a/dev-cpp/catch/catch-9999.ebuild
+++ b/dev-cpp/catch/catch-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake-multilib python-any-r1
diff --git a/dev-cpp/catch/metadata.xml b/dev-cpp/catch/metadata.xml
index 8661d8b27fba..4f9491b5d577 100644
--- a/dev-cpp/catch/metadata.xml
+++ b/dev-cpp/catch/metadata.xml
@@ -6,5 +6,5 @@
<name>David Seifert</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cctz/metadata.xml b/dev-cpp/cctz/metadata.xml
index 5f36783cd7bc..e08ff45ca802 100644
--- a/dev-cpp/cctz/metadata.xml
+++ b/dev-cpp/cctz/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<bugs-to>https://github.com/google/cctz/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cld3/cld3-3.0.13_p20220331.ebuild b/dev-cpp/cld3/cld3-3.0.13_p20220331.ebuild
index 97396d627809..62527733a7f4 100644
--- a/dev-cpp/cld3/cld3-3.0.13_p20220331.ebuild
+++ b/dev-cpp/cld3/cld3-3.0.13_p20220331.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -27,11 +27,6 @@ src_prepare() {
sed -e '/add_definitions(/d' \
-i CMakeLists.txt || die
- # Specify the c++ standard through cmake's heurestics instead
- cat >> CMakeLists.txt <<- 'EOF' || die
- set(CMAKE_CXX_STANDARD 17)
- EOF
-
# Link with the right libraries for the tests
cat >> CMakeLists.txt <<- 'EOF' || die
target_link_libraries(cld3
@@ -88,3 +83,17 @@ src_prepare() {
cmake_src_prepare
}
+
+src_configure() {
+ local CXXSTD="17"
+ if has_version ">=dev-cpp/abseil-cpp-20260107.0"; then
+ # needs >=c++20
+ CXXSTD="20"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD="${CXXSTD}"
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/cld3/metadata.xml b/dev-cpp/cld3/metadata.xml
index 5ae172f655f1..b5d32eb8aca3 100644
--- a/dev-cpp/cld3/metadata.xml
+++ b/dev-cpp/cld3/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/clhpp/metadata.xml b/dev-cpp/clhpp/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/clhpp/metadata.xml
+++ b/dev-cpp/clhpp/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cli11/metadata.xml b/dev-cpp/cli11/metadata.xml
index a3b44b016c9f..d7842f8f4f67 100644
--- a/dev-cpp/cli11/metadata.xml
+++ b/dev-cpp/cli11/metadata.xml
@@ -6,5 +6,5 @@
<name>Ionen Wolkens</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/clipp/metadata.xml b/dev-cpp/clipp/metadata.xml
index 24ccbb8a7ce2..6404f1aa2571 100644
--- a/dev-cpp/clipp/metadata.xml
+++ b/dev-cpp/clipp/metadata.xml
@@ -6,5 +6,5 @@
<name>Thomas Kemmer</name>
</maintainer>
- <origin>binaryden-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/clucene/metadata.xml b/dev-cpp/clucene/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/clucene/metadata.xml
+++ b/dev-cpp/clucene/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/coeurl/coeurl-0.3.1.ebuild b/dev-cpp/coeurl/coeurl-0.3.1.ebuild
index f419939b8801..bc39b8aa1ecf 100644
--- a/dev-cpp/coeurl/coeurl-0.3.1.ebuild
+++ b/dev-cpp/coeurl/coeurl-0.3.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit edo meson python-any-r1
DESCRIPTION="A simple async wrapper around CURL for C++"
diff --git a/dev-cpp/coeurl/coeurl-0.3.2.ebuild b/dev-cpp/coeurl/coeurl-0.3.2.ebuild
index c56275452322..1c1cd91a2bff 100644
--- a/dev-cpp/coeurl/coeurl-0.3.2.ebuild
+++ b/dev-cpp/coeurl/coeurl-0.3.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit edo meson python-any-r1
DESCRIPTION="Simple async wrapper around CURL for C++"
diff --git a/dev-cpp/coeurl/metadata.xml b/dev-cpp/coeurl/metadata.xml
index 736a1167c898..7a420b460d5e 100644
--- a/dev-cpp/coeurl/metadata.xml
+++ b/dev-cpp/coeurl/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpp-httplib/Manifest b/dev-cpp/cpp-httplib/Manifest
index 2ce8db29c039..ed59b96b1066 100644
--- a/dev-cpp/cpp-httplib/Manifest
+++ b/dev-cpp/cpp-httplib/Manifest
@@ -1,2 +1,2 @@
-DIST cpp-httplib-0.43.4.tar.gz 1866559 BLAKE2B 6878670704a78fe366ea78d007c0b3806ba661d2e49f19a9d28ef287dd123364ac26e54f6df1ebb63361f638eb9f1de0c8a5d75c4e0038064aea4146e15ffc71 SHA512 ebd88aad3fe04386983244b108eae99e03bc1f2149914d038f7c90c9117322d31dfd4abcdbbc17570e6aacc8d0233313445ef3527845dfef9fc83504a7554f14
-DIST cpp-httplib-0.44.0.tar.gz 1868167 BLAKE2B 879534865126650b340140e7a29a55c8cc2500a68f2b554cf566f0daf7f69d8a8941b3ef5313db2f3b567541e32ea8cc21fb6d68407d48079b74308ca3c21a74 SHA512 9218f6f54588fd780802fa15db171ed0fc832efe1ab9d90a6a1756f72a083034f376c2370d664cb7302f1d7a7b15880adfb3c88a67b069b3c6e2878c5e9279a3
+DIST cpp-httplib-0.45.0.tar.gz 1868625 BLAKE2B ffb6b9cac9d6505a5eb57d4c902c1d28a0de021a9c67b0ab6a3fb1f3a51c8ca8fac78e5181422ed74a7dcd170d9f66f34d6fff2a98e9179675f6802f97e81a37 SHA512 4cafb05af28720729a71c9fed519361cf6b6ba9fd702dadc2f0b4fffb0a974c489d5ff0e77eb72a8e26efc0ad0b74fbdc16ee30b7a20a221c9f98c9200e639f0
+DIST cpp-httplib-0.46.0.tar.gz 1880471 BLAKE2B 35e7109db9329da53d2416648daf401e1bdbb98b979ae31f211fb83f735e12cf320a996c80d7efe5418a18a54485a7f7ead476a7276c341316ca4c2c2caa54e1 SHA512 159ed94965018f2a371d45a3bfc1961e5fb1549e501ded70a6b4532d7fe99d0579c18b5195aff6e35f96f399b426cea2650ec9fb75ef80d4c9edeccb51f2e6c9
diff --git a/dev-cpp/cpp-httplib/cpp-httplib-0.43.4.ebuild b/dev-cpp/cpp-httplib/cpp-httplib-0.45.0.ebuild
index d6714d0db42f..d6714d0db42f 100644
--- a/dev-cpp/cpp-httplib/cpp-httplib-0.43.4.ebuild
+++ b/dev-cpp/cpp-httplib/cpp-httplib-0.45.0.ebuild
diff --git a/dev-cpp/cpp-httplib/cpp-httplib-0.44.0.ebuild b/dev-cpp/cpp-httplib/cpp-httplib-0.46.0.ebuild
index d6714d0db42f..d6714d0db42f 100644
--- a/dev-cpp/cpp-httplib/cpp-httplib-0.44.0.ebuild
+++ b/dev-cpp/cpp-httplib/cpp-httplib-0.46.0.ebuild
diff --git a/dev-cpp/cpp-httplib/metadata.xml b/dev-cpp/cpp-httplib/metadata.xml
index 174ba647e913..501ae79a8be7 100644
--- a/dev-cpp/cpp-httplib/metadata.xml
+++ b/dev-cpp/cpp-httplib/metadata.xml
@@ -20,5 +20,5 @@
<upstream>
<bugs-to>https://github.com/yhirose/cpp-httplib/issues</bugs-to>
</upstream>
- <origin>ports</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpp-jwt/metadata.xml b/dev-cpp/cpp-jwt/metadata.xml
index 0eb8cd867580..bcfaaab45200 100644
--- a/dev-cpp/cpp-jwt/metadata.xml
+++ b/dev-cpp/cpp-jwt/metadata.xml
@@ -6,5 +6,5 @@
<name>Samuel Bauer</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpp-utilities/metadata.xml b/dev-cpp/cpp-utilities/metadata.xml
index c41c001b8ca0..95a1e4a718f2 100644
--- a/dev-cpp/cpp-utilities/metadata.xml
+++ b/dev-cpp/cpp-utilities/metadata.xml
@@ -6,5 +6,5 @@
<name>Esteve Varela Colominas</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cppdap/metadata.xml b/dev-cpp/cppdap/metadata.xml
index 8e20998bf65e..74d824cbfbd2 100644
--- a/dev-cpp/cppdap/metadata.xml
+++ b/dev-cpp/cppdap/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Base System</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cppgir/cppgir-2.0_p20260321.ebuild b/dev-cpp/cppgir/cppgir-2.0_p20260321.ebuild
index 8711958b4b0a..2feff301dd70 100644
--- a/dev-cpp/cppgir/cppgir-2.0_p20260321.ebuild
+++ b/dev-cpp/cppgir/cppgir-2.0_p20260321.ebuild
@@ -14,7 +14,7 @@ S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv"
+KEYWORDS="amd64 ~arm64 ~loong ~ppc64 ~riscv"
IUSE="doc test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/cppgir/metadata.xml b/dev-cpp/cppgir/metadata.xml
index a11a5da01220..e4716f88d82f 100644
--- a/dev-cpp/cppgir/metadata.xml
+++ b/dev-cpp/cppgir/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<bugs-to>https://gitlab.com/mnauw/cppgir/-/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpprestsdk/metadata.xml b/dev-cpp/cpprestsdk/metadata.xml
index b7a84d989a11..4861d40e447b 100644
--- a/dev-cpp/cpprestsdk/metadata.xml
+++ b/dev-cpp/cpprestsdk/metadata.xml
@@ -6,5 +6,5 @@
<description>Jan-Espen Oversand</description>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpptoml/metadata.xml b/dev-cpp/cpptoml/metadata.xml
index c0cb3ce3c798..014cd78e049b 100644
--- a/dev-cpp/cpptoml/metadata.xml
+++ b/dev-cpp/cpptoml/metadata.xml
@@ -17,5 +17,5 @@ Targets: TOML v0.5.0 as of August 2018.
This includes support for the new DateTime format, inline tables, multi-line basic and raw strings, digit separators, hexadecimal integers, octal integers, binary integers, and float special values.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/cpptrace/metadata.xml b/dev-cpp/cpptrace/metadata.xml
index 1b8db8b4c1d6..61945f9d476d 100644
--- a/dev-cpp/cpptrace/metadata.xml
+++ b/dev-cpp/cpptrace/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Games Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/ctemplate/ctemplate-2.4.ebuild b/dev-cpp/ctemplate/ctemplate-2.4.ebuild
index ddb32807e5ba..65f41282e91f 100644
--- a/dev-cpp/ctemplate/ctemplate-2.4.ebuild
+++ b/dev-cpp/ctemplate/ctemplate-2.4.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit autotools elisp-common flag-o-matic python-any-r1
diff --git a/dev-cpp/ctemplate/metadata.xml b/dev-cpp/ctemplate/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/ctemplate/metadata.xml
+++ b/dev-cpp/ctemplate/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/curlpp/metadata.xml b/dev-cpp/curlpp/metadata.xml
index 5b4f3ecf2731..ece7a20a44ee 100644
--- a/dev-cpp/curlpp/metadata.xml
+++ b/dev-cpp/curlpp/metadata.xml
@@ -12,5 +12,5 @@
<bugs-to>https://github.com/jpbarrette/curlpp/issues</bugs-to>
<doc>https://github.com/jpbarrette/curlpp/blob/master/doc/guide.pdf</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/doctest/metadata.xml b/dev-cpp/doctest/metadata.xml
index e4acb158611d..1d272baec544 100644
--- a/dev-cpp/doctest/metadata.xml
+++ b/dev-cpp/doctest/metadata.xml
@@ -6,5 +6,5 @@
<name>Petr Vaněk</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/dpp/Manifest b/dev-cpp/dpp/Manifest
index aead3efb4903..ef5854555c43 100644
--- a/dev-cpp/dpp/Manifest
+++ b/dev-cpp/dpp/Manifest
@@ -1,3 +1,4 @@
DIST dpp-10.0.30.tar.gz 15726421 BLAKE2B 647571d5c7434c3b5636a66a3365d2af8b2d11c81165666d3df2b2ad36d4b61b683a8e3c7ef304fba96a4ac365365272fffa3f0d7d05f697dfe48ba7f972ced6 SHA512 4842e5e688893275e524f998bdcac1d308165a02c280f69eaa898aa8f9986a97fe687e20e3428f30777c49f1feb47905da462bbdba8c9a5ea00067e560208f91
DIST dpp-10.0.33.tar.gz 17222706 BLAKE2B b4443eade64cb6f98742d37c2cd0776b1a1a643fa86732f964488ff8835f2eee2e85553498d3b63159434a6512c9a7726eeddd0b84d8e725fb65e6bbb2290141 SHA512 69fe3323aceb4ad52ec1fcfb38a8770e88c03ae0b6cb49768441b603e13659625720d984b992311fcca8ef863d40b8b7fb082996fae2d396e785b637b673a328
DIST dpp-10.1.4.tar.gz 21018829 BLAKE2B f984c749298a827d9ad8b2a68a2bfea1000a3715c0b5ed148be5d96f7b4d64932439b9df05618213a79e73f2ff425323837fba9549d6c22b0d07d9789ef51664 SHA512 c840f0c36babaf8a193132a56c62673092901c7814deafb4bc37753596e35bf31bd08051d79aa9b71ef439c55a327b046aea6bc4f07c984ab61204e3ff7e7ebe
+DIST dpp-10.1.5.tar.gz 21026323 BLAKE2B 3cb7082a06e4f50bbd252bac3c519e5dd54747f2257c228dcf082cc5399e0a4064069598e383baeb9303e7de500445b626f11d80995cfb600767e99f273a28a5 SHA512 e9c34449c4746c015cbec667d99905c4064f43c379a2280e0d5eddad4b446ee26c6c67acb162d9dcbf73cf2400b0e9b75a45bf1716982ef96e88d34d9e1f8b74
diff --git a/dev-cpp/dpp/dpp-10.1.5.ebuild b/dev-cpp/dpp/dpp-10.1.5.ebuild
new file mode 100644
index 000000000000..b7c7d00f8265
--- /dev/null
+++ b/dev-cpp/dpp/dpp-10.1.5.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Lightweight C++ Discord bot library"
+HOMEPAGE="https://dpp.dev/ https://github.com/brainboxdotcc/DPP"
+SRC_URI="
+ https://github.com/brainboxdotcc/DPP/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+"
+
+S="${WORKDIR}/DPP-${PV}"
+
+LICENSE="Apache-2.0"
+# DPP is extremely ABI instable due to frequent changes in the Discord API
+# See https://github.com/brainboxdotcc/DPP/issues/207#issuecomment-1007030157
+SLOT="0/${PV}"
+KEYWORDS="~amd64"
+IUSE="voice +coro"
+
+RDEPEND="
+ dev-libs/openssl:=
+ virtual/zlib:=
+
+ voice? (
+ media-libs/opus
+ )
+"
+DEPEND="
+ ${RDEPEND}
+
+ dev-cpp/nlohmann_json
+"
+
+DOCS=( "README.md" "SECURITY.md" )
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=true
+ -DBUILD_VOICE_SUPPORT="$(usex voice)"
+ -DRUN_LDCONFIG=false
+ # Tests require network access
+ -DDPP_BUILD_TEST=false
+ -DDPP_NO_VCPKG=true
+ -DDPP_USE_EXTERNAL_JSON=true
+ -DDPP_NO_CORO="$(usex !coro)" # set DPP_NO_CORO if coroutines disabled.
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/dpp/metadata.xml b/dev-cpp/dpp/metadata.xml
index c8348c1b904e..f6858880a027 100644
--- a/dev-cpp/dpp/metadata.xml
+++ b/dev-cpp/dpp/metadata.xml
@@ -14,5 +14,5 @@
<flag name="voice">Enable voice-chat support</flag>
<flag name="coro">Enable coroutine support</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/drogon/metadata.xml b/dev-cpp/drogon/metadata.xml
index e930fa8286e3..bb5d0b2ec01d 100644
--- a/dev-cpp/drogon/metadata.xml
+++ b/dev-cpp/drogon/metadata.xml
@@ -16,5 +16,5 @@
<flag name="yaml">Add support for yaml config file</flag>
<flag name="spdlog">enable <pkg>dev-libs/spdlog</pkg> logging backend</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/edencommon/metadata.xml b/dev-cpp/edencommon/metadata.xml
index 8a55334d67dc..37174a5d9749 100644
--- a/dev-cpp/edencommon/metadata.xml
+++ b/dev-cpp/edencommon/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
index 1f60bcb2825e..e78035ce5e3c 100644
--- a/dev-cpp/eigen/Manifest
+++ b/dev-cpp/eigen/Manifest
@@ -1,2 +1,6 @@
DIST eigen-3.4.0.tar.bz2 2143091 BLAKE2B a32aac13cbab68cfaaa252d8a406e6a36ecfd1239361412b1f9baa08284a94467479c08ffae10cb847e9916472b46b1c1af4efbf81f957c8200a4379acd42c42 SHA512 cc488eb111e0e248744d2bc4475b345b5fb82361dff226a5b73a33bd0388de8c219cff8cffcf8f476b672fc0e223f339e8c6a1cfb6293840a4a6abf232438a89
+DIST eigen-3.4.1.tar.bz2 2157363 BLAKE2B 382fcebd716d81019c4606974f8db22234ff34c415d465eb5cf9dbab34d4fa9bca7a3ae6ef64a7eca627cdbacb35fdac862005b0a14ec2d851831246f879f374 SHA512 806be7536f811eb77898a9431eac4fe446fbdd41c2a33ebe30e56750920c105e24bc41d8cbb4a5c01ee770ded9c58f06ff37058d17c6e2301bc9021a864bb549
+DIST eigen-3.4.1_p1.patch 1007 BLAKE2B 0a2af4c2cd8fc423535e046919fe7f931e9b718df1ff799ccc451139c084a344988fc8d1277fd1970827051ce1fcae5512222310fea00a9f1a654f3b1cffbec8 SHA512 ec3f6c78c19544f9a4f2c52e069b573eb633d67998acdd7d74e9769102ec9dfdbf68fca1492002ed0ec6b3e9a25637afa9978cfb80dd3e3f9aa0e1a34ac64534
+DIST eigen-3.4.1_p2.patch 1054 BLAKE2B b46683962764a9dd560932e2230177f91e56d9e4b48ce7de79cad5743b59050aafde4f2da1db961adfb5228ac17f477e598cdf23c4150fa254d2640e4fff3a6d SHA512 bdcd4599ccb88f0599aa74fd5a73135dcc5bb9ad0bc2791517473a48f938bb784e62376e829b8b5b3d6f5149bc8874bf77655c1bfe63f86afbc151c2c86d6732
+DIST eigen-5.0.1.tar.bz2 2335713 BLAKE2B a7ccf9fc63b25b0e5ad8940ccf541cf4977a80ded671757ae1965cd0ca480fd11361de8eaf18cae94a74cde68979a76f5a18b47b696cdd6939b6cf30922e5fd4 SHA512 5cb11c7f1945ae7f36c5deb067b8d5a962d2d3cff7d4dbec8a4ee255ee6aae1b7dbe6d5a6dcc6fe77554ef191e4101366bf79cfb34f5cf06a0e4de311afbeaf6
DIST eigen-lapack_addons-3.4.1.tgz 6215074 BLAKE2B 564c3398de1f4ea249b58957a482cda0b5eb99e5021e1f18abf3b4d2893fed48912bfa8386681fcae03dd933eea91644f7429d47a53684d64462209a6ae76f30 SHA512 5a827d0befb521cb430f0d63f5000e7955359bc637cdb7292d942712e98c0702570a5b650a72fc609bf5b43633661c0e51de7761ae892df6ff0aab667f436edf
diff --git a/dev-cpp/eigen/eigen-3.4.1.ebuild b/dev-cpp/eigen/eigen-3.4.1.ebuild
new file mode 100644
index 000000000000..e43191c1d3e2
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.4.1.ebuild
@@ -0,0 +1,651 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {21..23} )
+LLVM_OPTIONAL="cuda-clang"
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+FORTRAN_NEEDED="no"
+
+LAPACK_ADDONS_PV="3.4.1"
+
+inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
+
+if [[ ${PV} = *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
+ if [[ ${PV} = *.9999* ]] ; then
+ EGIT_BRANCH="$(ver_cut 1-2)"
+ fi
+else
+ # we backport two patches from the 3.4 branch
+ SRC_URI="
+ https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
+ https://gitlab.com/libeigen/eigen/-/commit/0295f81a835ef69e2bacd9e75ab5782eca398720.patch -> ${P}_p1.patch
+ https://gitlab.com/libeigen/eigen/-/commit/28ded8800c26864e537852658428ab44c8399e87.patch -> ${P}_p2.patch
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+fi
+
+SRC_URI+="
+ test? (
+ lapack? (
+ https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz
+ -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz
+ )
+ )
+"
+
+LICENSE="MPL-2.0"
+SLOT="3/$(ver_cut 1-2)"
+
+# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
+ARM_CPU_FEATURES=(
+ neon:NEON
+)
+PPC_CPU_FEATURES=(
+ altivec:ALTIVEC
+ vsx:VSX
+)
+X86_CPU_FEATURES=(
+ avx:AVX
+ avx2:AVX2
+ avx512f:AVX512
+ avx512dq:AVX512DQ
+ f16c:FP16C
+ fma3:FMA
+ popcnt:POPCNT
+ sse:SSE
+ sse2:SSE2
+ sse3:SSE3
+ ssse3:SSSE3
+ sse4_1:SSE4_1
+ sse4_2:SSE4_2
+)
+# MIPS_CPU_FEATURES=(
+# msa:MSA
+# )
+# S390_CPU_FEATURES=(
+# z13:Z13
+# z14:Z14
+# )
+
+CPU_FEATURES_MAP=(
+ "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}"
+ "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}"
+ "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}"
+ # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}"
+ # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}"
+)
+
+IUSE_TEST_BACKENDS=(
+ "adolc"
+ "boost"
+ "cholmod"
+ "fftw"
+ "klu"
+ "metis"
+ "opengl"
+ "pastix"
+ "pocketfft"
+ "sparsehash"
+ "spqr"
+ "superlu"
+ "umfpack"
+)
+
+IUSE="
+ debug
+ blas lapack
+ ${CPU_FEATURES_MAP[*]%:*}
+ cuda cuda-clang hip
+ doc mathjax
+ openmp
+ test ${IUSE_TEST_BACKENDS[*]}
+"
+# zvector
+
+REQUIRED_USE="
+ lapack? (
+ blas
+ )
+ test? (
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+ cuda-clang? (
+ !openmp
+ ${LLVM_REQUIRED_USE}
+ )
+ )
+"
+
+# Tests failing again because of compiler issues; bugs #932646, #943401
+RESTRICT="!test? ( test )"
+FORTRAN_DEPEND="virtual/fortran"
+
+BDEPEND="
+ doc? (
+ app-text/doxygen[dot]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ mathjax? ( dev-libs/mathjax )
+ )
+ test? (
+ virtual/pkgconfig
+ lapack? (
+ ${PYTHON_DEPS}
+ )
+ spqr? (
+ cholmod? (
+ blas? (
+ lapack? (
+ ${FORTRAN_DEPEND}
+ )
+ )
+ )
+ )
+ pastix? ( ${FORTRAN_DEPEND} )
+ )
+ blas? ( ${FORTRAN_DEPEND} )
+ lapack? ( ${FORTRAN_DEPEND} )
+"
+
+TEST_BACKENDS="
+ adolc? ( sci-libs/adolc[sparse] )
+ boost? ( dev-libs/boost )
+ cholmod? ( sci-libs/cholmod:=[cuda?] )
+ fftw? ( sci-libs/fftw[openmp?] )
+ klu? ( sci-libs/klu:= )
+ metis? (
+ sci-libs/metis[openmp?]
+ sci-libs/pastix[metis]
+ )
+ opengl? (
+ media-libs/freeglut
+ media-libs/glew
+ media-libs/libglvnd
+ )
+ pastix? (
+ sci-libs/pastix[-mpi]
+ || (
+ sci-libs/pastix[scotch]
+ sci-libs/pastix[metis]
+ )
+ )
+ pocketfft? ( dev-libs/pocketfft )
+ sparsehash? (
+ amd64? ( dev-cpp/sparsehash )
+ arm64? ( dev-cpp/sparsehash )
+ ppc64? ( dev-cpp/sparsehash )
+ x86? ( dev-cpp/sparsehash )
+ )
+ spqr? ( sci-libs/spqr:= )
+ superlu? ( sci-libs/superlu:= )
+ umfpack? ( sci-libs/umfpack:= )
+"
+
+DEPEND="
+ test? (
+ cuda? (
+ !cuda-clang? (
+ dev-util/nvidia-cuda-toolkit
+ )
+ cuda-clang? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp]
+ ')
+ )
+ )
+ hip? ( dev-util/hip )
+ !blas? (
+ virtual/blas
+ !lapack? (
+ virtual/lapacke
+ )
+ )
+ ${TEST_BACKENDS}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.3.9-max-macro.patch"
+ "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
+ "${FILESDIR}/${PN}-3.4.0-buildstring.patch"
+ "${FILESDIR}/${PN}-3.4.1-cxxstandard-17.patch"
+
+ "${FILESDIR}/${PN}-3.4.0-c++-20.patch"
+
+ "${FILESDIR}/${PN}-3.4.1-bug1213-link-with-Eigen3-Eigen.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch"
+ "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch"
+
+ "${DISTDIR}/${P}_p1.patch"
+ "${DISTDIR}/${P}_p2.patch"
+)
+
+# TODO should be in cuda.eclass
+cuda_get_host_compiler() {
+ if [[ -n "${NVCC_CCBIN}" ]]; then
+ echo "${NVCC_CCBIN}"
+ return
+ fi
+
+ if [[ -n "${CUDAHOSTCXX}" ]]; then
+ echo "${CUDAHOSTCXX}"
+ return
+ fi
+
+ einfo "Trying to find working CUDA host compiler"
+
+ if ! tc-is-gcc && ! tc-is-clang; then
+ die "$(tc-get-compiler-type) compiler is not supported"
+ fi
+
+ local compiler compiler_type compiler_version
+ local package package_version
+ local -x NVCC_CCBIN
+ local NVCC_CCBIN_default
+
+ compiler_type="$(tc-get-compiler-type)"
+ compiler_version="$("${compiler_type}-major-version")"
+
+ # try the default compiler first
+ NVCC_CCBIN="$(tc-getCXX)"
+ NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}"
+
+ compiler="${NVCC_CCBIN/%-${compiler_version}}"
+
+ # store the package so we can re-use it later
+ package="sys-devel/${compiler_type}"
+ package_version="${package}"
+
+ ebegin "testing ${NVCC_CCBIN_default} (default)"
+
+ while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do
+ eend 1
+
+ while true; do
+ # prepare next version
+ if ! package_version="<$(best_version "${package_version}")"; then
+ die "could not find a supported version of ${compiler}"
+ fi
+
+ NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")"
+
+ [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break
+ done
+ ebegin "testing ${NVCC_CCBIN}"
+ done
+ eend $?
+
+ echo "${NVCC_CCBIN}"
+ export NVCC_CCBIN
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+
+ if use lapack; then
+ python-any-r1_pkg_setup
+ fi
+
+ if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \
+ || use blas \
+ || use lapack \
+ ; then
+ fortran-2_pkg_setup
+ fi
+
+ if use test && use cuda && use cuda-clang; then
+ llvm-r2_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]] ; then
+ git-r3_src_unpack
+ else
+ unpack "${P}.tar.bz2"
+ fi
+
+ if use test && use lapack; then
+ pushd "${S}/lapack" > /dev/null || die
+ unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz"
+ popd > /dev/null || die
+ fi
+}
+
+src_prepare() {
+ # run patches here as we patch in test/
+ cmake_src_prepare
+
+ if use test && use lapack; then
+ pushd "${S}" > /dev/null || die
+ eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch"
+ popd > /dev/null || die
+ fi
+}
+
+src_configure() {
+ if use lapack; then
+ # bug 878987
+ # multiple definition of `cgesdd_'
+ filter-lto
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD="20"
+ -DCMAKE_POSITION_INDEPENDENT_CODE="yes"
+
+ -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests.
+
+ -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library
+ -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library
+
+ -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
+ -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
+ )
+
+ append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0"
+
+ if use blas; then
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_SHARED_LIBS="yes"
+ )
+
+ if use lapack; then
+ mycmakeargs+=(
+ -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp
+ -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)"
+ )
+ fi
+ fi
+
+ if use doc || use test; then
+ mycmakeargs+=(
+ # needs Qt4
+ -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests
+ )
+ fi
+
+ if use doc; then
+ mycmakeargs+=(
+ -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs
+ -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation
+ )
+ fi
+
+ if use test; then
+ mycmakeargs+=(
+ -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building
+
+ # the OpenGL testsuite is extremely brittle, bug #712808
+ -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
+ -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
+
+ -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite
+
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation
+
+ -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions
+ -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables
+
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests
+
+ -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
+
+ # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support.
+ # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default).
+
+ $(cmake_use_find_package adolc Adolc)
+ $(cmake_use_find_package boost Boost)
+ $(cmake_use_find_package cholmod CHOLMOD)
+ $(cmake_use_find_package fftw FFTW )
+ $(cmake_use_find_package klu KLU)
+ -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes
+ # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL
+ # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP
+ $(cmake_use_find_package pastix PASTIX)
+ # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps
+ -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND"
+
+ -DPOCKETFFT="$(usex pocketfft)"
+ $(cmake_use_find_package sparsehash GoogleHash)
+ $(cmake_use_find_package spqr SPQR)
+ $(cmake_use_find_package superlu SuperLU)
+ $(cmake_use_find_package umfpack UMFPACK)
+ )
+
+ if use arm; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use arm64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use amd64 || use x86; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
+ # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization.
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)"
+ -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)"
+ )
+ fi
+
+ if use mips; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples
+ )
+ fi
+
+ if use ppc || use ppc64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
+ -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
+ )
+ fi
+
+ if use s390; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
+ # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+
+ if use cuda-clang; then
+ local llvm_prefix
+ llvm_prefix="$(get_llvm_prefix -b)"
+
+ # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with
+ # error: unrecognized command-line option
+ if ! tc-is-clang; then
+ export CC="${CHOST}-clang-${LLVM_SLOT}"
+ export CXX="${CHOST}-clang++-${LLVM_SLOT}"
+ fi
+
+ NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc"
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}"
+ )
+ else
+ cuda_get_host_compiler
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
+ )
+ if [[ -v CUDACXX ]]; then
+ mycmakeargs+=(
+ -DCUDA_NVCC_EXECUTABLE="${CUDACXX}"
+ -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA
+ )
+ fi
+ fi
+
+ if [[ "${CUDA_VERBOSE}" == true ]]; then
+ mycmakeargs+=(
+ -DCUDA_VERBOSE_BUILD="yes"
+ )
+ NVCCFLAGS+=" -v"
+ fi
+
+ if [[ -v CUDAARCHS ]]; then
+ mycmakeargs+=(
+ # TODO this needs to be lowest first for eigen
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
+
+ # CUDAFLAGS is used by cmake
+ # NVCCFLAGS is used by cuda.eclass
+ mycmakeargs+=(
+ -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}"
+
+ -DCUDA_USE_STATIC_CUDA_RUNTIME="no"
+ )
+ fi
+
+ if use opengl; then
+ mycmakeargs+=(
+ -DOpenGL_GL_PREFERENCE="GLVND"
+ )
+ fi
+
+ if use pocketfft; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_CXX11=yes
+ )
+ fi
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ local targets=()
+
+ if use blas; then
+ targets+=( blas )
+ if use lapack; then
+ targets+=( lapack )
+ fi
+ fi
+
+ if use test; then
+ targets+=( buildtests )
+
+ if use cuda || use hip; then
+ targets+=( buildtests_gpu )
+ fi
+
+ # tests generate random data, which fails for some seeds
+ # we solve this via test reruns now
+ # export EIGEN_SEED=712808
+ fi
+
+ # we add doc last to capture results for buildtests
+ if use doc; then
+ targets+=( doc )
+ fi
+
+ if [[ -n "${targets[*]}" ]]; then
+ cmake_src_compile "${targets[@]}"
+ fi
+}
+
+src_test() {
+ local CMAKE_SKIP_TESTS=(
+ "^ref_8$"
+ )
+
+ if use cholmod && use blas && use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^cholmod_support_21$"
+ "^cholmod_support_22$"
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+ fi
+
+ if use klu && use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^klu_support_1$"
+ "^klu_support_2$"
+ )
+ fi
+
+ if use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^LAPACK-xlintsts_stest_in$"
+ "^LAPACK-xeigtsts_sep_in$"
+ "^LAPACK-xeigtsts_svd_in$"
+ "^LAPACK-xlintstd_dtest_in$"
+ "^LAPACK-xeigtstd_sep_in$"
+ "^LAPACK-xeigtstd_svd_in$"
+ "^LAPACK-xlintstc_ctest_in$"
+ "^LAPACK-xeigtstc_svd_in$"
+ )
+ fi
+
+ local myctestargs=(
+ -j1 # otherwise breaks due to cmake reruns
+ --repeat until-pass:50
+ )
+
+ if use opengl; then
+ virtx \
+ cmake_src_test
+ else
+ cmake_src_test
+ fi
+}
+
+src_install() {
+ local DOCS=()
+ cmake_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}/doc" > /dev/null || die
+ dodoc -r html
+ popd > /dev/null || die
+ fi
+}
diff --git a/dev-cpp/eigen/eigen-3.4.9999.ebuild b/dev-cpp/eigen/eigen-3.4.9999.ebuild
index 6681a51df077..50da667fea31 100644
--- a/dev-cpp/eigen/eigen-3.4.9999.ebuild
+++ b/dev-cpp/eigen/eigen-3.4.9999.ebuild
@@ -3,9 +3,16 @@
EAPI=8
-LLVM_COMPAT=( {19..21} )
-FORTRAN_NEEDED="test"
-inherit cmake cuda fortran-2 llvm-r2 toolchain-funcs
+LLVM_COMPAT=( {21..23} )
+LLVM_OPTIONAL="cuda-clang"
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+FORTRAN_NEEDED="no"
+
+LAPACK_ADDONS_PV="3.4.1"
+
+inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx
DESCRIPTION="C++ template library for linear algebra"
HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
@@ -13,19 +20,27 @@ HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
if [[ ${PV} = *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
- if [[ ${PV} = 3.4.9999* ]] ; then
- EGIT_BRANCH="3.4"
+ if [[ ${PV} = *.9999* ]] ; then
+ EGIT_BRANCH="$(ver_cut 1-2)"
fi
else
SRC_URI="
https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
- test? ( lapack? ( https://downloads.tuxfamily.org/${PN}/lapack_addons_3.4.1.tgz -> ${PN}-lapack_addons-3.4.1.tgz ) )
"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
fi
+SRC_URI+="
+ test? (
+ lapack? (
+ https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz
+ -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz
+ )
+ )
+"
+
LICENSE="MPL-2.0"
-SLOT="3"
+SLOT="3/$(ver_cut 1-2)"
# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
ARM_CPU_FEATURES=(
@@ -72,23 +87,43 @@ IUSE_TEST_BACKENDS=(
"cholmod"
"fftw"
"klu"
+ "metis"
"opengl"
- "openmp"
"pastix"
+ "pocketfft"
"sparsehash"
"spqr"
"superlu"
"umfpack"
)
-IUSE="${CPU_FEATURES_MAP[*]%:*} clang-cuda cuda hip debug doc lapack mathjax test ${IUSE_TEST_BACKENDS[*]}" #zvector
+IUSE="
+ debug
+ blas lapack
+ ${CPU_FEATURES_MAP[*]%:*}
+ cuda cuda-clang hip
+ doc mathjax
+ openmp
+ test ${IUSE_TEST_BACKENDS[*]}
+"
+# zvector
REQUIRED_USE="
- || ( ${IUSE_TEST_BACKENDS[*]} )
+ lapack? (
+ blas
+ )
+ test? (
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+ cuda-clang? (
+ !openmp
+ ${LLVM_REQUIRED_USE}
+ )
+ )
"
# Tests failing again because of compiler issues; bugs #932646, #943401
RESTRICT="!test? ( test )"
+FORTRAN_DEPEND="virtual/fortran"
BDEPEND="
doc? (
@@ -100,50 +135,80 @@ BDEPEND="
dev-texlive/texlive-latexextra
mathjax? ( dev-libs/mathjax )
)
- test? ( virtual/pkgconfig )
+ test? (
+ virtual/pkgconfig
+ lapack? (
+ ${PYTHON_DEPS}
+ )
+ spqr? (
+ cholmod? (
+ blas? (
+ lapack? (
+ ${FORTRAN_DEPEND}
+ )
+ )
+ )
+ )
+ pastix? ( ${FORTRAN_DEPEND} )
+ )
+ blas? ( ${FORTRAN_DEPEND} )
+ lapack? ( ${FORTRAN_DEPEND} )
"
-# METIS
-# MPREAL
-# dev-libs/mpfr:0
-# dev-libs/gmp:0
-
TEST_BACKENDS="
- boost? ( dev-libs/boost )
adolc? ( sci-libs/adolc[sparse] )
- cholmod? ( sci-libs/cholmod:= )
- fftw? ( sci-libs/fftw )
- spqr? ( sci-libs/spqr )
- klu? ( sci-libs/klu )
+ boost? ( dev-libs/boost )
+ cholmod? ( sci-libs/cholmod:=[cuda?] )
+ fftw? ( sci-libs/fftw[openmp?] )
+ klu? ( sci-libs/klu:= )
+ metis? (
+ sci-libs/metis[openmp?]
+ sci-libs/pastix[metis]
+ )
opengl? (
media-libs/freeglut
media-libs/glew
media-libs/libglvnd
)
- pastix? ( sci-libs/pastix[-mpi] )
+ pastix? (
+ sci-libs/pastix[-mpi]
+ || (
+ sci-libs/pastix[scotch]
+ sci-libs/pastix[metis]
+ )
+ )
+ pocketfft? ( dev-libs/pocketfft )
sparsehash? (
amd64? ( dev-cpp/sparsehash )
arm64? ( dev-cpp/sparsehash )
ppc64? ( dev-cpp/sparsehash )
x86? ( dev-cpp/sparsehash )
)
- superlu? ( sci-libs/superlu )
- umfpack? ( sci-libs/umfpack )
+ spqr? ( sci-libs/spqr:= )
+ superlu? ( sci-libs/superlu:= )
+ umfpack? ( sci-libs/umfpack:= )
"
+
DEPEND="
test? (
cuda? (
- !clang-cuda? (
+ !cuda-clang? (
dev-util/nvidia-cuda-toolkit
)
- clang-cuda? (
+ cuda-clang? (
$(llvm_gen_dep '
- llvm-core/clang:${LLVM_SLOT}[llvm_targets_NVPTX]
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp]
')
)
)
hip? ( dev-util/hip )
- lapack? ( virtual/lapacke )
+ !blas? (
+ virtual/blas
+ !lapack? (
+ virtual/lapacke
+ )
+ )
${TEST_BACKENDS}
)
"
@@ -152,45 +217,100 @@ PATCHES=(
"${FILESDIR}/${PN}-3.3.9-max-macro.patch"
"${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
"${FILESDIR}/${PN}-3.4.0-buildstring.patch"
- "${FILESDIR}/${PN}-3.4.0-noansi.patch"
- "${FILESDIR}/${PN}-3.4.0-cxxstandard.patch"
- "${FILESDIR}/${PN}-3.4.0-ppc-no-vsx.patch" # bug 936107
+ "${FILESDIR}/${PN}-3.4.1-cxxstandard-17.patch"
+
+ "${FILESDIR}/${PN}-3.4.0-c++-20.patch"
+
+ "${FILESDIR}/${PN}-3.4.1-bug1213-link-with-Eigen3-Eigen.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch"
+ "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch"
)
# TODO should be in cuda.eclass
-cuda_set_CUDAHOSTCXX() {
- local compiler
- tc-is-gcc && compiler="gcc"
- tc-is-clang && compiler="clang"
- [[ -z "$compiler" ]] && die "no compiler specified"
+cuda_get_host_compiler() {
+ if [[ -n "${NVCC_CCBIN}" ]]; then
+ echo "${NVCC_CCBIN}"
+ return
+ fi
+
+ if [[ -n "${CUDAHOSTCXX}" ]]; then
+ echo "${CUDAHOSTCXX}"
+ return
+ fi
+
+ einfo "Trying to find working CUDA host compiler"
+
+ if ! tc-is-gcc && ! tc-is-clang; then
+ die "$(tc-get-compiler-type) compiler is not supported"
+ fi
- local package="sys-devel/${compiler}"
- local version="${package}"
- local CUDAHOSTCXX_test
- while
- CUDAHOSTCXX="${CUDAHOSTCXX_test}"
- version=$(best_version "${version}")
- if [[ -z "${version}" ]]; then
- if [[ -z "${CUDAHOSTCXX}" ]]; then
- die "could not find supported version of ${package}"
+ local compiler compiler_type compiler_version
+ local package package_version
+ local -x NVCC_CCBIN
+ local NVCC_CCBIN_default
+
+ compiler_type="$(tc-get-compiler-type)"
+ compiler_version="$("${compiler_type}-major-version")"
+
+ # try the default compiler first
+ NVCC_CCBIN="$(tc-getCXX)"
+ NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}"
+
+ compiler="${NVCC_CCBIN/%-${compiler_version}}"
+
+ # store the package so we can re-use it later
+ package="sys-devel/${compiler_type}"
+ package_version="${package}"
+
+ ebegin "testing ${NVCC_CCBIN_default} (default)"
+
+ while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do
+ eend 1
+
+ while true; do
+ # prepare next version
+ if ! package_version="<$(best_version "${package_version}")"; then
+ die "could not find a supported version of ${compiler}"
fi
- break
- fi
- CUDAHOSTCXX_test="$(
- dirname "$(
- realpath "$(
- which "${compiler}-$(echo "${version}" | grep -oP "(?<=${package}-)[0-9]*")"
- )"
- )"
- )"
- version="<${version}"
- do ! echo "int main(){}" | nvcc "-ccbin ${CUDAHOSTCXX_test}" - -x cu &>/dev/null; done
- export CUDAHOSTCXX
+ NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")"
+
+ [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break
+ done
+ ebegin "testing ${NVCC_CCBIN}"
+ done
+ eend $?
+
+ echo "${NVCC_CCBIN}"
+ export NVCC_CCBIN
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
}
pkg_setup() {
- use test && use cuda && use clang-cuda && llvm-r2_pkg_setup
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+
+ if use lapack; then
+ python-any-r1_pkg_setup
+ fi
+
+ if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \
+ || use blas \
+ || use lapack \
+ ; then
+ fortran-2_pkg_setup
+ fi
+
+ if use test && use cuda && use cuda-clang; then
+ llvm-r2_pkg_setup
+ fi
}
src_unpack() {
@@ -198,41 +318,62 @@ src_unpack() {
git-r3_src_unpack
else
unpack "${P}.tar.bz2"
+ fi
- if use test && use lapack; then
- cd "${S}/lapack" || die
- unpack "${PN}-lapack_addons-3.4.1.tgz"
- fi
+ if use test && use lapack; then
+ pushd "${S}/lapack" > /dev/null || die
+ unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz"
+ popd > /dev/null || die
fi
}
src_prepare() {
+ # run patches here as we patch in test/
cmake_src_prepare
- sed \
- -e "/add_subdirectory(bench\/spbench/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(demos/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
-
- if ! use test; then
- sed \
- -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(scripts/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(failtest/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
+ if use test && use lapack; then
+ pushd "${S}" > /dev/null || die
+ eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch"
+ popd > /dev/null || die
fi
}
src_configure() {
+ if use lapack; then
+ # bug 878987
+ # multiple definition of `cgesdd_'
+ filter-lto
+ fi
+
local mycmakeargs=(
- -DBUILD_SHARED_LIBS="yes"
- -DBUILD_TESTING="$(usex test)"
+ -DCMAKE_CXX_STANDARD="20"
+ -DCMAKE_POSITION_INDEPENDENT_CODE="yes"
+
+ -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests.
+
+ -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library
+ -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library
-DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
-DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
)
+
+ append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0"
+
+ if use blas; then
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_SHARED_LIBS="yes"
+ )
+
+ if use lapack; then
+ mycmakeargs+=(
+ -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp
+ -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)"
+ )
+ fi
+ fi
+
if use doc || use test; then
mycmakeargs+=(
# needs Qt4
@@ -249,61 +390,46 @@ src_configure() {
if use test; then
mycmakeargs+=(
+ -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building
+
# the OpenGL testsuite is extremely brittle, bug #712808
- -DOpenGL_GL_PREFERENCE="GLVND"
-DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
-DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
- -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=ON
-
- -DEIGEN_TEST_CXX11=yes
+ -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite
- # -DEIGEN_TEST_CUSTOM_CXX_FLAGS= # Additional compiler flags when compiling unit tests.
- # -DEIGEN_TEST_CUSTOM_LINKER_FLAGS= # Additional linker flags when linking unit tests.
- # -DEIGEN_TEST_BUILD_FLAGS= # Options passed to the build command of unit tests
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation
- # -DEIGEN_BUILD_BTL=yes # Build benchmark suite
+ -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions
+ -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables
- -DEIGEN_TEST_BUILD_DOCUMENTATION="$(usex doc)" # Test building the doxygen documentation
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests
- # -DEIGEN_COVERAGE_TESTING=no # Enable/disable gcov
- # -DEIGEN_CTEST_ERROR_EXCEPTION= # Regular expression for build error messages to be filtered out
- # -DEIGEN_DEBUG_ASSERTS=no # Enable advanced debugging of assertions
- # -DEIGEN_NO_ASSERTION_CHECKING=no # Disable checking of assertions using exceptions
- # -DEIGEN_TEST_NO_EXCEPTIONS=no # Disables C++ exceptions
- # -DEIGEN_TEST_NO_EXPLICIT_ALIGNMENT=no # Disable explicit alignment (hence vectorization) in tests/examples
- # -DEIGEN_TEST_NO_EXPLICIT_VECTORIZATION=no # Disable explicit vectorization in tests/examples
+ -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
- # -DEIGEN_DASHBOARD_BUILD_TARGET=buildtests # Target to be built in dashboard mode, default is buildtests
+ # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support.
+ # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default).
- # -DEIGEN_DEFAULT_TO_ROW_MAJOR=no # Use row-major as default matrix storage order
+ $(cmake_use_find_package adolc Adolc)
+ $(cmake_use_find_package boost Boost)
+ $(cmake_use_find_package cholmod CHOLMOD)
+ $(cmake_use_find_package fftw FFTW )
+ $(cmake_use_find_package klu KLU)
+ -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes
+ # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL
+ # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP
+ $(cmake_use_find_package pastix PASTIX)
+ # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps
+ -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND"
- # -DEIGEN_TEST_MATRIX_DIR=yes # Enable testing of realword sparse matrices contained in the specified path
- # -DEIGEN_TEST_MAX_SIZE=320 # Maximal matrix/vector size, default is 320
- # -DEIGEN_SPLIT_LARGE_TESTS=no # Split large tests into smaller executables
+ -DPOCKETFFT="$(usex pocketfft)"
+ $(cmake_use_find_package sparsehash GoogleHash)
+ $(cmake_use_find_package spqr SPQR)
+ $(cmake_use_find_package superlu SuperLU)
+ $(cmake_use_find_package umfpack UMFPACK)
)
- use !adolc && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Adolc="TRUE" )
- use !boost && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Boost="TRUE" )
- use !cholmod && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_CHOLMOD="TRUE" )
- use !fftw && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_FFTW="TRUE" )
- use !sparsehash && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_GoogleHash="TRUE" )
- use !klu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KLU="TRUE" )
- use !opengl && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenGL="TRUE" )
- use !openmp && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenMP="TRUE" )
- use !pastix && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_PASTIX="TRUE" )
- use !spqr && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SPQR="TRUE" )
- use !superlu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU="TRUE" )
- use !umfpack && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_UMFPACK="TRUE" )
-
- if use lapack; then
- mycmakeargs+=(
- -DEIGEN_ENABLE_LAPACK_TESTS=yes
- -DEIGEN_TEST_EXTERNAL_BLAS=yes # Use external BLAS library for testsuite
- -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=ON
- )
- fi
-
if use arm; then
mycmakeargs+=(
-DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
@@ -316,13 +442,6 @@ src_configure() {
)
fi
- if use ppc || use ppc64; then
- mycmakeargs+=(
- -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
- -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
- )
- fi
-
if use amd64 || use x86; then
mycmakeargs+=(
# -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
@@ -347,6 +466,13 @@ src_configure() {
)
fi
+ if use ppc || use ppc64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
+ -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
+ )
+ fi
+
if use s390; then
mycmakeargs+=(
# -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
@@ -354,48 +480,71 @@ src_configure() {
)
fi
- mycmakeargs+=(
- -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
- -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex clang-cuda)")" # Use clang instead of nvcc to compile the CUDA tests
-
- -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
-
- # -DEIGEN_TEST_SYCL=no # Add Sycl support.
- # -DEIGEN_SYCL_TRISYCL=no # Use the triSYCL Sycl implementation (ComputeCPP by default).
- )
-
if use cuda; then
cuda_add_sandbox -w
- if use clang-cuda; then
+
+ if use cuda-clang; then
local llvm_prefix
llvm_prefix="$(get_llvm_prefix -b)"
- export CC="${llvm_prefix}/bin/clang"
- export CXX="${llvm_prefix}/bin/clang++"
- export LIBRARY_PATH="${ESYSROOT}/usr/$(get_libdir)"
+
+ # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with
+ # error: unrecognized command-line option
+ if ! tc-is-clang; then
+ export CC="${CHOST}-clang-${LLVM_SLOT}"
+ export CXX="${CHOST}-clang++-${LLVM_SLOT}"
+ fi
+
+ NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc"
+
mycmakeargs+=(
- -DCUDA_HOST_COMPILER="${llvm_prefix}/bin/clang++"
+ -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}"
)
else
- cuda_set_CUDAHOSTCXX
+ cuda_get_host_compiler
+
mycmakeargs+=(
-DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
)
+ if [[ -v CUDACXX ]]; then
+ mycmakeargs+=(
+ -DCUDA_NVCC_EXECUTABLE="${CUDACXX}"
+ -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA
+ )
+ fi
fi
+
if [[ "${CUDA_VERBOSE}" == true ]]; then
mycmakeargs+=(
- -DCUDA_VERBOSE_BUILD=yes
+ -DCUDA_VERBOSE_BUILD="yes"
)
NVCCFLAGS+=" -v"
fi
- export CUDAFLAGS="${NVCCFLAGS}"
+ if [[ -v CUDAARCHS ]]; then
+ mycmakeargs+=(
+ # TODO this needs to be lowest first for eigen
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
+
+ # CUDAFLAGS is used by cmake
+ # NVCCFLAGS is used by cuda.eclass
+ mycmakeargs+=(
+ -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}"
+
+ -DCUDA_USE_STATIC_CUDA_RUNTIME="no"
+ )
+ fi
- [[ -z "${CUDAARCHS}" ]] && einfo "trying to determine host CUDAARCHS"
- : "${CUDAARCHS:=$(__nvcc_device_query)}"
- export CUDAARCHS
+ if use opengl; then
+ mycmakeargs+=(
+ -DOpenGL_GL_PREFERENCE="GLVND"
+ )
+ fi
+ if use pocketfft; then
mycmakeargs+=(
- -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ -DEIGEN_TEST_CXX11=yes
)
fi
fi
@@ -405,58 +554,92 @@ src_configure() {
src_compile() {
local targets=()
- if use doc; then
- targets+=( doc )
- HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
+
+ if use blas; then
+ targets+=( blas )
+ if use lapack; then
+ targets+=( lapack )
+ fi
fi
+
if use test; then
targets+=( buildtests )
- if ! use lapack; then
- targets+=( blas )
+
+ if use cuda || use hip; then
+ targets+=( buildtests_gpu )
fi
- # tests generate random data, which
- # obviously fails for some seeds
- export EIGEN_SEED=712808
+
+ # tests generate random data, which fails for some seeds
+ # we solve this via test reruns now
+ # export EIGEN_SEED=712808
fi
- if use doc || use test; then
+ # we add doc last to capture results for buildtests
+ if use doc; then
+ targets+=( doc )
+ fi
+
+ if [[ -n "${targets[*]}" ]]; then
cmake_src_compile "${targets[@]}"
fi
}
src_test() {
- CMAKE_SKIP_TESTS=(
- product_small_32 # 143 (Subprocess aborted)
- product_small_33 # 144 (Subprocess aborted)
-
- eigensolver_selfadjoint_13 # 452 (Subprocess aborted)
-
- cholmod_support_21 # 726 (Subprocess aborted)
- cholmod_support_22 # 727 (Subprocess aborted)
-
- NonLinearOptimization # 930 (Subprocess aborted)
- openglsupport # 990 (Failed)
- levenberg_marquardt # 1020 (Subprocess aborted)
+ local CMAKE_SKIP_TESTS=(
+ "^ref_8$"
)
- if use cuda ; then
+ if use cholmod && use blas && use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^cholmod_support_21$"
+ "^cholmod_support_22$"
+ )
+ fi
+
+ if use cuda; then
cuda_add_sandbox -w
+ fi
+ if use klu && use blas; then
CMAKE_SKIP_TESTS+=(
- cxx11_tensor_cast_float16_gpu
- cxx11_tensor_gpu_5
+ "^klu_support_1$"
+ "^klu_support_2$"
)
fi
- if use lapack ; then
+ if use lapack; then
CMAKE_SKIP_TESTS+=(
- "^LAPACK-.*$"
+ "^LAPACK-xlintsts_stest_in$"
+ "^LAPACK-xeigtsts_sep_in$"
+ "^LAPACK-xeigtsts_svd_in$"
+ "^LAPACK-xlintstd_dtest_in$"
+ "^LAPACK-xeigtstd_sep_in$"
+ "^LAPACK-xeigtstd_svd_in$"
+ "^LAPACK-xlintstc_ctest_in$"
+ "^LAPACK-xeigtstc_svd_in$"
)
fi
local myctestargs=(
-j1 # otherwise breaks due to cmake reruns
+ --repeat until-pass:50
)
- cmake_src_test
+ if use opengl; then
+ virtx \
+ cmake_src_test
+ else
+ cmake_src_test
+ fi
+}
+
+src_install() {
+ local DOCS=()
+ cmake_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}/doc" > /dev/null || die
+ dodoc -r html
+ popd > /dev/null || die
+ fi
}
diff --git a/dev-cpp/eigen/eigen-5.0.1.ebuild b/dev-cpp/eigen/eigen-5.0.1.ebuild
new file mode 100644
index 000000000000..665bed8a050c
--- /dev/null
+++ b/dev-cpp/eigen/eigen-5.0.1.ebuild
@@ -0,0 +1,665 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {21..23} )
+LLVM_OPTIONAL="cuda-clang"
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+FORTRAN_NEEDED="no"
+
+LAPACK_ADDONS_PV="3.4.1"
+
+inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
+
+if [[ ${PV} = *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
+ if [[ ${PV} = *.9999* ]] ; then
+ EGIT_BRANCH="$(ver_cut 1-2)"
+ fi
+else
+ SRC_URI="
+ https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+fi
+
+SRC_URI+="
+ test? (
+ lapack? (
+ https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz
+ -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz
+ )
+ )
+"
+
+LICENSE="MPL-2.0"
+SLOT="3/$(ver_cut 1-2)"
+
+# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
+ARM_CPU_FEATURES=(
+ neon:NEON
+)
+PPC_CPU_FEATURES=(
+ altivec:ALTIVEC
+ vsx:VSX
+)
+X86_CPU_FEATURES=(
+ avx:AVX
+ avx2:AVX2
+ avx512f:AVX512
+ avx512dq:AVX512DQ
+ f16c:FP16C
+ fma3:FMA
+ popcnt:POPCNT
+ sse:SSE
+ sse2:SSE2
+ sse3:SSE3
+ ssse3:SSSE3
+ sse4_1:SSE4_1
+ sse4_2:SSE4_2
+)
+# MIPS_CPU_FEATURES=(
+# msa:MSA
+# )
+# S390_CPU_FEATURES=(
+# z13:Z13
+# z14:Z14
+# )
+
+CPU_FEATURES_MAP=(
+ "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}"
+ "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}"
+ "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}"
+ # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}"
+ # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}"
+)
+
+IUSE_TEST_BACKENDS=(
+ "adolc"
+ "boost"
+ "cholmod"
+ "fftw"
+ "klu"
+ "metis"
+ "opengl"
+ "pastix"
+ "pocketfft"
+ "sparsehash"
+ "spqr"
+ "superlu"
+ "umfpack"
+)
+
+IUSE="
+ debug
+ blas lapack
+ ${CPU_FEATURES_MAP[*]%:*}
+ cuda cuda-clang hip
+ doc mathjax
+ openmp
+ test ${IUSE_TEST_BACKENDS[*]}
+"
+# zvector
+
+REQUIRED_USE="
+ lapack? (
+ blas
+ )
+ test? (
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+ cuda-clang? (
+ !openmp
+ ${LLVM_REQUIRED_USE}
+ )
+ )
+"
+
+# Tests failing again because of compiler issues; bugs #932646, #943401
+RESTRICT="!test? ( test )"
+FORTRAN_DEPEND="virtual/fortran"
+
+BDEPEND="
+ doc? (
+ app-text/doxygen[dot]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ mathjax? ( dev-libs/mathjax )
+ )
+ test? (
+ virtual/pkgconfig
+ lapack? (
+ ${PYTHON_DEPS}
+ )
+ spqr? (
+ cholmod? (
+ blas? (
+ lapack? (
+ ${FORTRAN_DEPEND}
+ )
+ )
+ )
+ )
+ pastix? ( ${FORTRAN_DEPEND} )
+ )
+ blas? ( ${FORTRAN_DEPEND} )
+ lapack? ( ${FORTRAN_DEPEND} )
+"
+
+TEST_BACKENDS="
+ adolc? ( sci-libs/adolc[sparse] )
+ boost? ( dev-libs/boost )
+ cholmod? ( sci-libs/cholmod:=[cuda?] )
+ fftw? ( sci-libs/fftw[openmp?] )
+ klu? ( sci-libs/klu:= )
+ metis? (
+ sci-libs/metis[openmp?]
+ sci-libs/pastix[metis]
+ )
+ opengl? (
+ media-libs/freeglut
+ media-libs/glew
+ media-libs/libglvnd
+ )
+ pastix? (
+ sci-libs/pastix[-mpi]
+ || (
+ sci-libs/pastix[scotch]
+ sci-libs/pastix[metis]
+ )
+ )
+ pocketfft? ( dev-libs/pocketfft )
+ sparsehash? (
+ amd64? ( dev-cpp/sparsehash )
+ arm64? ( dev-cpp/sparsehash )
+ ppc64? ( dev-cpp/sparsehash )
+ x86? ( dev-cpp/sparsehash )
+ )
+ spqr? ( sci-libs/spqr:= )
+ superlu? ( sci-libs/superlu:= )
+ umfpack? ( sci-libs/umfpack:= )
+"
+
+DEPEND="
+ test? (
+ cuda? (
+ !cuda-clang? (
+ dev-util/nvidia-cuda-toolkit
+ )
+ cuda-clang? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp]
+ ')
+ )
+ )
+ hip? ( dev-util/hip )
+ !blas? (
+ virtual/blas
+ !lapack? (
+ virtual/lapacke
+ )
+ )
+ ${TEST_BACKENDS}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
+ "${FILESDIR}/${PN}-3.4.0-buildstring.patch"
+ "${FILESDIR}/${PN}-5.0.0-please_protect_your_min_with_parentheses.patch"
+
+ # PRs
+ "${FILESDIR}/${PN}-5.0.0-doxygen-1.14.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-c++-20.patch"
+ "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch"
+ "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch"
+)
+
+# TODO should be in cuda.eclass
+cuda_get_host_compiler() {
+ if [[ -n "${NVCC_CCBIN}" ]]; then
+ echo "${NVCC_CCBIN}"
+ return
+ fi
+
+ if [[ -n "${CUDAHOSTCXX}" ]]; then
+ echo "${CUDAHOSTCXX}"
+ return
+ fi
+
+ einfo "Trying to find working CUDA host compiler"
+
+ if ! tc-is-gcc && ! tc-is-clang; then
+ die "$(tc-get-compiler-type) compiler is not supported"
+ fi
+
+ local compiler compiler_type compiler_version
+ local package package_version
+ local -x NVCC_CCBIN
+ local NVCC_CCBIN_default
+
+ compiler_type="$(tc-get-compiler-type)"
+ compiler_version="$("${compiler_type}-major-version")"
+
+ # try the default compiler first
+ NVCC_CCBIN="$(tc-getCXX)"
+ NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}"
+
+ compiler="${NVCC_CCBIN/%-${compiler_version}}"
+
+ # store the package so we can re-use it later
+ package="sys-devel/${compiler_type}"
+ package_version="${package}"
+
+ ebegin "testing ${NVCC_CCBIN_default} (default)"
+
+ while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do
+ eend 1
+
+ while true; do
+ # prepare next version
+ if ! package_version="<$(best_version "${package_version}")"; then
+ die "could not find a supported version of ${compiler}"
+ fi
+
+ NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")"
+
+ [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break
+ done
+ ebegin "testing ${NVCC_CCBIN}"
+ done
+ eend $?
+
+ echo "${NVCC_CCBIN}"
+ export NVCC_CCBIN
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+
+ if use lapack; then
+ python-any-r1_pkg_setup
+ fi
+
+ if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \
+ || use blas \
+ || use lapack \
+ ; then
+ fortran-2_pkg_setup
+ fi
+
+ if use test && use cuda && use cuda-clang; then
+ llvm-r2_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]] ; then
+ git-r3_src_unpack
+ else
+ unpack "${P}.tar.bz2"
+ fi
+
+ if use test && use lapack; then
+ pushd "${S}/lapack" > /dev/null || die
+ unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz"
+ popd > /dev/null || die
+ fi
+}
+
+src_prepare() {
+ # run patches here as we patch in test/
+ cmake_src_prepare
+
+ if use test && use lapack; then
+ pushd "${S}" > /dev/null || die
+ eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch"
+ popd > /dev/null || die
+ fi
+}
+
+src_configure() {
+ if use lapack; then
+ # bug 878987
+ # multiple definition of `cgesdd_'
+ filter-lto
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD="20"
+ -DCMAKE_POSITION_INDEPENDENT_CODE="yes"
+
+ -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests.
+
+ -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library
+ -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library
+
+ -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
+ -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
+ )
+
+ append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0"
+
+ if use blas; then
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_STATIC_LIBS="yes"
+ -DEIGEN_INSTALL_STATIC_LIBS="yes"
+ )
+
+ if use lapack; then
+ mycmakeargs+=(
+ -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp
+ -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)"
+ )
+ fi
+ fi
+
+ if use doc || use test; then
+ mycmakeargs+=(
+ # needs Qt4
+ -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests
+ )
+ fi
+
+ if use doc; then
+ mycmakeargs+=(
+ -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs
+ -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation
+ )
+ fi
+
+ if use test; then
+ mycmakeargs+=(
+ -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building
+
+ # the OpenGL testsuite is extremely brittle, bug #712808
+ -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
+ -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
+
+ -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite
+
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation
+
+ -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions
+ -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables
+
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests
+
+ -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
+
+ # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support.
+ # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default).
+
+ $(cmake_use_find_package adolc Adolc)
+ $(cmake_use_find_package boost Boost)
+ $(cmake_use_find_package cholmod CHOLMOD)
+ # -DDUCCFFT="$(usex ducc)"
+ -DDUCC_ROOT="DUCCFFT"
+ -DDUCCFFT="NOTFOUND"
+ $(cmake_use_find_package fftw FFTW )
+ $(cmake_use_find_package klu KLU)
+ -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes
+ # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL
+ # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP
+ $(cmake_use_find_package pastix PASTIX)
+ # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps
+ -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND"
+
+ -DPOCKETFFT="$(usex pocketfft)"
+ $(cmake_use_find_package sparsehash GoogleHash)
+ $(cmake_use_find_package spqr SPQR)
+ $(cmake_use_find_package superlu SuperLU)
+ $(cmake_use_find_package umfpack UMFPACK)
+ )
+
+ if use arm; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use arm64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use amd64 || use x86; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
+ # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization.
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)"
+ -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)"
+ )
+ fi
+
+ if use mips; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples
+ )
+ fi
+
+ if use ppc || use ppc64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
+ -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
+ )
+ fi
+
+ if use s390; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
+ # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+
+ if use cuda-clang; then
+ local llvm_prefix
+ llvm_prefix="$(get_llvm_prefix -b)"
+
+ # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with
+ # error: unrecognized command-line option
+ if ! tc-is-clang; then
+ export CC="${CHOST}-clang-${LLVM_SLOT}"
+ export CXX="${CHOST}-clang++-${LLVM_SLOT}"
+ fi
+
+ NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc"
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}"
+ )
+ else
+ cuda_get_host_compiler
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
+ )
+ if [[ -v CUDACXX ]]; then
+ mycmakeargs+=(
+ -DCUDA_NVCC_EXECUTABLE="${CUDACXX}"
+ -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA
+ )
+ fi
+ fi
+
+ if [[ "${CUDA_VERBOSE}" == true ]]; then
+ mycmakeargs+=(
+ -DCUDA_VERBOSE_BUILD="yes"
+ )
+ NVCCFLAGS+=" -v"
+ fi
+
+ if [[ -v CUDAARCHS ]]; then
+ mycmakeargs+=(
+ # TODO this needs to be lowest first for eigen
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
+
+ # CUDAFLAGS is used by cmake
+ # NVCCFLAGS is used by cuda.eclass
+ mycmakeargs+=(
+ -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}"
+
+ -DCUDA_USE_STATIC_CUDA_RUNTIME="no"
+ )
+ fi
+
+ if use opengl; then
+ mycmakeargs+=(
+ -DOpenGL_GL_PREFERENCE="GLVND"
+ )
+ fi
+
+ if use pocketfft; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_CXX11=yes
+ )
+ fi
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ local targets=()
+
+ if use blas; then
+ targets+=( blas )
+ if use lapack; then
+ targets+=( lapack )
+ fi
+ fi
+
+ if use test; then
+ targets+=( buildtests )
+
+ if use cuda || use hip; then
+ targets+=( buildtests_gpu )
+ fi
+
+ # tests generate random data, which fails for some seeds
+ # we solve this via test reruns now
+ # export EIGEN_SEED=712808
+ fi
+
+ # we add doc last to capture results for buildtests
+ if use doc; then
+ targets+=( doc )
+ fi
+
+ if [[ -n "${targets[*]}" ]]; then
+ cmake_src_compile "${targets[@]}"
+ fi
+}
+
+src_test() {
+ local CMAKE_SKIP_TESTS=(
+ "^ref_8$"
+ )
+
+ if ! use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^nomalloc_1$" # smoketest
+ "^nomalloc_2$"
+ "^nomalloc_3$"
+ "^nomalloc_4$"
+
+ "^product_notemporary_1$"
+ "^product_notemporary_2$"
+ "^product_notemporary_3$"
+ "^product_notemporary_4$"
+ )
+ fi
+
+ if use cholmod && use blas && use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^cholmod_support_21$"
+ "^cholmod_support_22$"
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+ fi
+
+ if use klu && use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^klu_support_1$"
+ "^klu_support_2$"
+ )
+ fi
+
+ if use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^LAPACK-xlintsts_stest_in$"
+ "^LAPACK-xeigtsts_sep_in$"
+ "^LAPACK-xeigtsts_svd_in$"
+ "^LAPACK-xlintstd_dtest_in$"
+ "^LAPACK-xeigtstd_sep_in$"
+ "^LAPACK-xeigtstd_svd_in$"
+ "^LAPACK-xlintstc_ctest_in$"
+ "^LAPACK-xeigtstc_svd_in$"
+ )
+ fi
+
+ local myctestargs=(
+ -j1 # otherwise breaks due to cmake reruns
+ --repeat until-pass:50
+ )
+
+ if use opengl; then
+ virtx \
+ cmake_src_test
+ else
+ cmake_src_test
+ fi
+}
+
+src_install() {
+ local DOCS=()
+ cmake_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}/doc" > /dev/null || die
+ dodoc -r html
+ popd > /dev/null || die
+ fi
+}
diff --git a/dev-cpp/eigen/eigen-5.0.9999.ebuild b/dev-cpp/eigen/eigen-5.0.9999.ebuild
new file mode 100644
index 000000000000..665bed8a050c
--- /dev/null
+++ b/dev-cpp/eigen/eigen-5.0.9999.ebuild
@@ -0,0 +1,665 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( {21..23} )
+LLVM_OPTIONAL="cuda-clang"
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+FORTRAN_NEEDED="no"
+
+LAPACK_ADDONS_PV="3.4.1"
+
+inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
+
+if [[ ${PV} = *9999* ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
+ if [[ ${PV} = *.9999* ]] ; then
+ EGIT_BRANCH="$(ver_cut 1-2)"
+ fi
+else
+ SRC_URI="
+ https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+fi
+
+SRC_URI+="
+ test? (
+ lapack? (
+ https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz
+ -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz
+ )
+ )
+"
+
+LICENSE="MPL-2.0"
+SLOT="3/$(ver_cut 1-2)"
+
+# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
+ARM_CPU_FEATURES=(
+ neon:NEON
+)
+PPC_CPU_FEATURES=(
+ altivec:ALTIVEC
+ vsx:VSX
+)
+X86_CPU_FEATURES=(
+ avx:AVX
+ avx2:AVX2
+ avx512f:AVX512
+ avx512dq:AVX512DQ
+ f16c:FP16C
+ fma3:FMA
+ popcnt:POPCNT
+ sse:SSE
+ sse2:SSE2
+ sse3:SSE3
+ ssse3:SSSE3
+ sse4_1:SSE4_1
+ sse4_2:SSE4_2
+)
+# MIPS_CPU_FEATURES=(
+# msa:MSA
+# )
+# S390_CPU_FEATURES=(
+# z13:Z13
+# z14:Z14
+# )
+
+CPU_FEATURES_MAP=(
+ "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}"
+ "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}"
+ "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}"
+ # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}"
+ # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}"
+)
+
+IUSE_TEST_BACKENDS=(
+ "adolc"
+ "boost"
+ "cholmod"
+ "fftw"
+ "klu"
+ "metis"
+ "opengl"
+ "pastix"
+ "pocketfft"
+ "sparsehash"
+ "spqr"
+ "superlu"
+ "umfpack"
+)
+
+IUSE="
+ debug
+ blas lapack
+ ${CPU_FEATURES_MAP[*]%:*}
+ cuda cuda-clang hip
+ doc mathjax
+ openmp
+ test ${IUSE_TEST_BACKENDS[*]}
+"
+# zvector
+
+REQUIRED_USE="
+ lapack? (
+ blas
+ )
+ test? (
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+ cuda-clang? (
+ !openmp
+ ${LLVM_REQUIRED_USE}
+ )
+ )
+"
+
+# Tests failing again because of compiler issues; bugs #932646, #943401
+RESTRICT="!test? ( test )"
+FORTRAN_DEPEND="virtual/fortran"
+
+BDEPEND="
+ doc? (
+ app-text/doxygen[dot]
+ dev-texlive/texlive-bibtexextra
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-fontutils
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-latexextra
+ mathjax? ( dev-libs/mathjax )
+ )
+ test? (
+ virtual/pkgconfig
+ lapack? (
+ ${PYTHON_DEPS}
+ )
+ spqr? (
+ cholmod? (
+ blas? (
+ lapack? (
+ ${FORTRAN_DEPEND}
+ )
+ )
+ )
+ )
+ pastix? ( ${FORTRAN_DEPEND} )
+ )
+ blas? ( ${FORTRAN_DEPEND} )
+ lapack? ( ${FORTRAN_DEPEND} )
+"
+
+TEST_BACKENDS="
+ adolc? ( sci-libs/adolc[sparse] )
+ boost? ( dev-libs/boost )
+ cholmod? ( sci-libs/cholmod:=[cuda?] )
+ fftw? ( sci-libs/fftw[openmp?] )
+ klu? ( sci-libs/klu:= )
+ metis? (
+ sci-libs/metis[openmp?]
+ sci-libs/pastix[metis]
+ )
+ opengl? (
+ media-libs/freeglut
+ media-libs/glew
+ media-libs/libglvnd
+ )
+ pastix? (
+ sci-libs/pastix[-mpi]
+ || (
+ sci-libs/pastix[scotch]
+ sci-libs/pastix[metis]
+ )
+ )
+ pocketfft? ( dev-libs/pocketfft )
+ sparsehash? (
+ amd64? ( dev-cpp/sparsehash )
+ arm64? ( dev-cpp/sparsehash )
+ ppc64? ( dev-cpp/sparsehash )
+ x86? ( dev-cpp/sparsehash )
+ )
+ spqr? ( sci-libs/spqr:= )
+ superlu? ( sci-libs/superlu:= )
+ umfpack? ( sci-libs/umfpack:= )
+"
+
+DEPEND="
+ test? (
+ cuda? (
+ !cuda-clang? (
+ dev-util/nvidia-cuda-toolkit
+ )
+ cuda-clang? (
+ $(llvm_gen_dep '
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp]
+ ')
+ )
+ )
+ hip? ( dev-util/hip )
+ !blas? (
+ virtual/blas
+ !lapack? (
+ virtual/lapacke
+ )
+ )
+ ${TEST_BACKENDS}
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
+ "${FILESDIR}/${PN}-3.4.0-buildstring.patch"
+ "${FILESDIR}/${PN}-5.0.0-please_protect_your_min_with_parentheses.patch"
+
+ # PRs
+ "${FILESDIR}/${PN}-5.0.0-doxygen-1.14.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-c++-20.patch"
+ "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch"
+ "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch"
+)
+
+# TODO should be in cuda.eclass
+cuda_get_host_compiler() {
+ if [[ -n "${NVCC_CCBIN}" ]]; then
+ echo "${NVCC_CCBIN}"
+ return
+ fi
+
+ if [[ -n "${CUDAHOSTCXX}" ]]; then
+ echo "${CUDAHOSTCXX}"
+ return
+ fi
+
+ einfo "Trying to find working CUDA host compiler"
+
+ if ! tc-is-gcc && ! tc-is-clang; then
+ die "$(tc-get-compiler-type) compiler is not supported"
+ fi
+
+ local compiler compiler_type compiler_version
+ local package package_version
+ local -x NVCC_CCBIN
+ local NVCC_CCBIN_default
+
+ compiler_type="$(tc-get-compiler-type)"
+ compiler_version="$("${compiler_type}-major-version")"
+
+ # try the default compiler first
+ NVCC_CCBIN="$(tc-getCXX)"
+ NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}"
+
+ compiler="${NVCC_CCBIN/%-${compiler_version}}"
+
+ # store the package so we can re-use it later
+ package="sys-devel/${compiler_type}"
+ package_version="${package}"
+
+ ebegin "testing ${NVCC_CCBIN_default} (default)"
+
+ while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do
+ eend 1
+
+ while true; do
+ # prepare next version
+ if ! package_version="<$(best_version "${package_version}")"; then
+ die "could not find a supported version of ${compiler}"
+ fi
+
+ NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")"
+
+ [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break
+ done
+ ebegin "testing ${NVCC_CCBIN}"
+ done
+ eend $?
+
+ echo "${NVCC_CCBIN}"
+ export NVCC_CCBIN
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+
+ if use lapack; then
+ python-any-r1_pkg_setup
+ fi
+
+ if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \
+ || use blas \
+ || use lapack \
+ ; then
+ fortran-2_pkg_setup
+ fi
+
+ if use test && use cuda && use cuda-clang; then
+ llvm-r2_pkg_setup
+ fi
+}
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]] ; then
+ git-r3_src_unpack
+ else
+ unpack "${P}.tar.bz2"
+ fi
+
+ if use test && use lapack; then
+ pushd "${S}/lapack" > /dev/null || die
+ unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz"
+ popd > /dev/null || die
+ fi
+}
+
+src_prepare() {
+ # run patches here as we patch in test/
+ cmake_src_prepare
+
+ if use test && use lapack; then
+ pushd "${S}" > /dev/null || die
+ eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch"
+ popd > /dev/null || die
+ fi
+}
+
+src_configure() {
+ if use lapack; then
+ # bug 878987
+ # multiple definition of `cgesdd_'
+ filter-lto
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_CXX_STANDARD="20"
+ -DCMAKE_POSITION_INDEPENDENT_CODE="yes"
+
+ -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests.
+
+ -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library
+ -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library
+
+ -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
+ -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
+ )
+
+ append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0"
+
+ if use blas; then
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_STATIC_LIBS="yes"
+ -DEIGEN_INSTALL_STATIC_LIBS="yes"
+ )
+
+ if use lapack; then
+ mycmakeargs+=(
+ -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp
+ -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)"
+ )
+ fi
+ fi
+
+ if use doc || use test; then
+ mycmakeargs+=(
+ # needs Qt4
+ -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests
+ )
+ fi
+
+ if use doc; then
+ mycmakeargs+=(
+ -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs
+ -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation
+ )
+ fi
+
+ if use test; then
+ mycmakeargs+=(
+ -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building
+
+ # the OpenGL testsuite is extremely brittle, bug #712808
+ -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
+ -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
+
+ -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite
+
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation
+
+ -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions
+ -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables
+
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests
+
+ -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
+
+ # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support.
+ # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default).
+
+ $(cmake_use_find_package adolc Adolc)
+ $(cmake_use_find_package boost Boost)
+ $(cmake_use_find_package cholmod CHOLMOD)
+ # -DDUCCFFT="$(usex ducc)"
+ -DDUCC_ROOT="DUCCFFT"
+ -DDUCCFFT="NOTFOUND"
+ $(cmake_use_find_package fftw FFTW )
+ $(cmake_use_find_package klu KLU)
+ -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes
+ # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL
+ # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP
+ $(cmake_use_find_package pastix PASTIX)
+ # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps
+ -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND"
+
+ -DPOCKETFFT="$(usex pocketfft)"
+ $(cmake_use_find_package sparsehash GoogleHash)
+ $(cmake_use_find_package spqr SPQR)
+ $(cmake_use_find_package superlu SuperLU)
+ $(cmake_use_find_package umfpack UMFPACK)
+ )
+
+ if use arm; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use arm64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)"
+ )
+ fi
+
+ if use amd64 || use x86; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
+ # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization.
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)"
+ -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)"
+ )
+ fi
+
+ if use mips; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples
+ )
+ fi
+
+ if use ppc || use ppc64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
+ -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
+ )
+ fi
+
+ if use s390; then
+ mycmakeargs+=(
+ # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
+ # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+
+ if use cuda-clang; then
+ local llvm_prefix
+ llvm_prefix="$(get_llvm_prefix -b)"
+
+ # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with
+ # error: unrecognized command-line option
+ if ! tc-is-clang; then
+ export CC="${CHOST}-clang-${LLVM_SLOT}"
+ export CXX="${CHOST}-clang++-${LLVM_SLOT}"
+ fi
+
+ NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc"
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}"
+ )
+ else
+ cuda_get_host_compiler
+
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
+ )
+ if [[ -v CUDACXX ]]; then
+ mycmakeargs+=(
+ -DCUDA_NVCC_EXECUTABLE="${CUDACXX}"
+ -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA
+ )
+ fi
+ fi
+
+ if [[ "${CUDA_VERBOSE}" == true ]]; then
+ mycmakeargs+=(
+ -DCUDA_VERBOSE_BUILD="yes"
+ )
+ NVCCFLAGS+=" -v"
+ fi
+
+ if [[ -v CUDAARCHS ]]; then
+ mycmakeargs+=(
+ # TODO this needs to be lowest first for eigen
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
+
+ # CUDAFLAGS is used by cmake
+ # NVCCFLAGS is used by cuda.eclass
+ mycmakeargs+=(
+ -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}"
+
+ -DCUDA_USE_STATIC_CUDA_RUNTIME="no"
+ )
+ fi
+
+ if use opengl; then
+ mycmakeargs+=(
+ -DOpenGL_GL_PREFERENCE="GLVND"
+ )
+ fi
+
+ if use pocketfft; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_CXX11=yes
+ )
+ fi
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ local targets=()
+
+ if use blas; then
+ targets+=( blas )
+ if use lapack; then
+ targets+=( lapack )
+ fi
+ fi
+
+ if use test; then
+ targets+=( buildtests )
+
+ if use cuda || use hip; then
+ targets+=( buildtests_gpu )
+ fi
+
+ # tests generate random data, which fails for some seeds
+ # we solve this via test reruns now
+ # export EIGEN_SEED=712808
+ fi
+
+ # we add doc last to capture results for buildtests
+ if use doc; then
+ targets+=( doc )
+ fi
+
+ if [[ -n "${targets[*]}" ]]; then
+ cmake_src_compile "${targets[@]}"
+ fi
+}
+
+src_test() {
+ local CMAKE_SKIP_TESTS=(
+ "^ref_8$"
+ )
+
+ if ! use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^nomalloc_1$" # smoketest
+ "^nomalloc_2$"
+ "^nomalloc_3$"
+ "^nomalloc_4$"
+
+ "^product_notemporary_1$"
+ "^product_notemporary_2$"
+ "^product_notemporary_3$"
+ "^product_notemporary_4$"
+ )
+ fi
+
+ if use cholmod && use blas && use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^cholmod_support_21$"
+ "^cholmod_support_22$"
+ )
+ fi
+
+ if use cuda; then
+ cuda_add_sandbox -w
+ fi
+
+ if use klu && use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^klu_support_1$"
+ "^klu_support_2$"
+ )
+ fi
+
+ if use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^LAPACK-xlintsts_stest_in$"
+ "^LAPACK-xeigtsts_sep_in$"
+ "^LAPACK-xeigtsts_svd_in$"
+ "^LAPACK-xlintstd_dtest_in$"
+ "^LAPACK-xeigtstd_sep_in$"
+ "^LAPACK-xeigtstd_svd_in$"
+ "^LAPACK-xlintstc_ctest_in$"
+ "^LAPACK-xeigtstc_svd_in$"
+ )
+ fi
+
+ local myctestargs=(
+ -j1 # otherwise breaks due to cmake reruns
+ --repeat until-pass:50
+ )
+
+ if use opengl; then
+ virtx \
+ cmake_src_test
+ else
+ cmake_src_test
+ fi
+}
+
+src_install() {
+ local DOCS=()
+ cmake_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}/doc" > /dev/null || die
+ dodoc -r html
+ popd > /dev/null || die
+ fi
+}
diff --git a/dev-cpp/eigen/eigen-9999.ebuild b/dev-cpp/eigen/eigen-9999.ebuild
index 426cb24bb1d7..8b5000f182ed 100644
--- a/dev-cpp/eigen/eigen-9999.ebuild
+++ b/dev-cpp/eigen/eigen-9999.ebuild
@@ -3,9 +3,16 @@
EAPI=8
-LLVM_COMPAT=( {19..21} )
-FORTRAN_NEEDED="test"
-inherit cmake cuda fortran-2 llvm-r2 toolchain-funcs
+LLVM_COMPAT=( {21..23} )
+LLVM_OPTIONAL="cuda-clang"
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+FORTRAN_NEEDED="no"
+
+LAPACK_ADDONS_PV="3.4.1"
+
+inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx
DESCRIPTION="C++ template library for linear algebra"
HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
@@ -13,19 +20,27 @@ HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
if [[ ${PV} = *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git"
- if [[ ${PV} = 3.4.9999* ]] ; then
- EGIT_BRANCH="3.4"
+ if [[ ${PV} = *.9999* ]] ; then
+ EGIT_BRANCH="$(ver_cut 1-2)"
fi
else
SRC_URI="
https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2
- test? ( lapack? ( https://downloads.tuxfamily.org/${PN}/lapack_addons_3.4.1.tgz -> ${PN}-lapack_addons-3.4.1.tgz ) )
"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
fi
+SRC_URI+="
+ test? (
+ lapack? (
+ https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz
+ -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz
+ )
+ )
+"
+
LICENSE="MPL-2.0"
-SLOT="3"
+SLOT="3/$(ver_cut 1-2)"
# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications
ARM_CPU_FEATURES=(
@@ -72,23 +87,43 @@ IUSE_TEST_BACKENDS=(
"cholmod"
"fftw"
"klu"
+ "metis"
"opengl"
- "openmp"
"pastix"
+ "pocketfft"
"sparsehash"
"spqr"
"superlu"
"umfpack"
)
-IUSE="benchmark ${CPU_FEATURES_MAP[*]%:*} clang-cuda cuda hip debug doc lapack mathjax test ${IUSE_TEST_BACKENDS[*]}" #zvector
+IUSE="
+ debug
+ blas lapack
+ ${CPU_FEATURES_MAP[*]%:*}
+ cuda cuda-clang hip
+ doc mathjax
+ openmp
+ test ${IUSE_TEST_BACKENDS[*]}
+"
+# zvector
REQUIRED_USE="
- || ( ${IUSE_TEST_BACKENDS[*]} )
+ lapack? (
+ blas
+ )
+ test? (
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+ cuda-clang? (
+ !openmp
+ ${LLVM_REQUIRED_USE}
+ )
+ )
"
# Tests failing again because of compiler issues; bugs #932646, #943401
RESTRICT="!test? ( test )"
+FORTRAN_DEPEND="virtual/fortran"
BDEPEND="
doc? (
@@ -100,50 +135,80 @@ BDEPEND="
dev-texlive/texlive-latexextra
mathjax? ( dev-libs/mathjax )
)
- test? ( virtual/pkgconfig )
+ test? (
+ virtual/pkgconfig
+ lapack? (
+ ${PYTHON_DEPS}
+ )
+ spqr? (
+ cholmod? (
+ blas? (
+ lapack? (
+ ${FORTRAN_DEPEND}
+ )
+ )
+ )
+ )
+ pastix? ( ${FORTRAN_DEPEND} )
+ )
+ blas? ( ${FORTRAN_DEPEND} )
+ lapack? ( ${FORTRAN_DEPEND} )
"
-# METIS
-# MPREAL
-# dev-libs/mpfr:0
-# dev-libs/gmp:0
-
TEST_BACKENDS="
- boost? ( dev-libs/boost )
adolc? ( sci-libs/adolc[sparse] )
- cholmod? ( sci-libs/cholmod:= )
- fftw? ( sci-libs/fftw )
- spqr? ( sci-libs/spqr )
- klu? ( sci-libs/klu )
+ boost? ( dev-libs/boost )
+ cholmod? ( sci-libs/cholmod:=[cuda?] )
+ fftw? ( sci-libs/fftw[openmp?] )
+ klu? ( sci-libs/klu:= )
+ metis? (
+ sci-libs/metis[openmp?]
+ sci-libs/pastix[metis]
+ )
opengl? (
media-libs/freeglut
media-libs/glew
media-libs/libglvnd
)
- pastix? ( sci-libs/pastix[-mpi] )
+ pastix? (
+ sci-libs/pastix[-mpi]
+ || (
+ sci-libs/pastix[scotch]
+ sci-libs/pastix[metis]
+ )
+ )
+ pocketfft? ( dev-libs/pocketfft )
sparsehash? (
amd64? ( dev-cpp/sparsehash )
arm64? ( dev-cpp/sparsehash )
ppc64? ( dev-cpp/sparsehash )
x86? ( dev-cpp/sparsehash )
)
- superlu? ( sci-libs/superlu )
- umfpack? ( sci-libs/umfpack )
+ spqr? ( sci-libs/spqr:= )
+ superlu? ( sci-libs/superlu:= )
+ umfpack? ( sci-libs/umfpack:= )
"
+
DEPEND="
test? (
cuda? (
- !clang-cuda? (
+ !cuda-clang? (
dev-util/nvidia-cuda-toolkit
)
- clang-cuda? (
+ cuda-clang? (
$(llvm_gen_dep '
- llvm-core/clang:${LLVM_SLOT}[llvm_targets_NVPTX]
+ llvm-core/clang:${LLVM_SLOT}
+ llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp]
')
)
)
hip? ( dev-util/hip )
- lapack? ( virtual/lapacke )
+ !blas? (
+ virtual/blas
+ !lapack? (
+ virtual/lapacke
+ )
+ )
${TEST_BACKENDS}
)
"
@@ -151,43 +216,98 @@ DEPEND="
PATCHES=(
"${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064
"${FILESDIR}/${PN}-3.4.0-buildstring.patch"
- "${FILESDIR}/${PN}-9999-please_protect_your_min_with_parentheses.patch"
+
+ "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch"
+ "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch"
+
+ "${FILESDIR}/${PN}-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch"
+ "${FILESDIR}/${PN}-9999-product_threaded_dont_parallelize.patch"
)
# TODO should be in cuda.eclass
-cuda_set_CUDAHOSTCXX() {
- local compiler
- tc-is-gcc && compiler="gcc"
- tc-is-clang && compiler="clang"
- [[ -z "$compiler" ]] && die "no compiler specified"
+cuda_get_host_compiler() {
+ if [[ -n "${NVCC_CCBIN}" ]]; then
+ echo "${NVCC_CCBIN}"
+ return
+ fi
+
+ if [[ -n "${CUDAHOSTCXX}" ]]; then
+ echo "${CUDAHOSTCXX}"
+ return
+ fi
+
+ einfo "Trying to find working CUDA host compiler"
+
+ if ! tc-is-gcc && ! tc-is-clang; then
+ die "$(tc-get-compiler-type) compiler is not supported"
+ fi
+
+ local compiler compiler_type compiler_version
+ local package package_version
+ local -x NVCC_CCBIN
+ local NVCC_CCBIN_default
- local package="sys-devel/${compiler}"
- local version="${package}"
- local CUDAHOSTCXX_test
- while
- CUDAHOSTCXX="${CUDAHOSTCXX_test}"
- version=$(best_version "${version}")
- if [[ -z "${version}" ]]; then
- if [[ -z "${CUDAHOSTCXX}" ]]; then
- die "could not find supported version of ${package}"
+ compiler_type="$(tc-get-compiler-type)"
+ compiler_version="$("${compiler_type}-major-version")"
+
+ # try the default compiler first
+ NVCC_CCBIN="$(tc-getCXX)"
+ NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}"
+
+ compiler="${NVCC_CCBIN/%-${compiler_version}}"
+
+ # store the package so we can re-use it later
+ package="sys-devel/${compiler_type}"
+ package_version="${package}"
+
+ ebegin "testing ${NVCC_CCBIN_default} (default)"
+
+ while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do
+ eend 1
+
+ while true; do
+ # prepare next version
+ if ! package_version="<$(best_version "${package_version}")"; then
+ die "could not find a supported version of ${compiler}"
fi
- break
- fi
- CUDAHOSTCXX_test="$(
- dirname "$(
- realpath "$(
- which "${compiler}-$(echo "${version}" | grep -oP "(?<=${package}-)[0-9]*")"
- )"
- )"
- )"
- version="<${version}"
- do ! echo "int main(){}" | nvcc "-ccbin ${CUDAHOSTCXX_test}" - -x cu &>/dev/null; done
- export CUDAHOSTCXX
+ NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")"
+
+ [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break
+ done
+ ebegin "testing ${NVCC_CCBIN}"
+ done
+ eend $?
+
+ echo "${NVCC_CCBIN}"
+ export NVCC_CCBIN
+}
+
+pkg_pretend() {
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
}
pkg_setup() {
- use test && use cuda && use clang-cuda && llvm-r2_pkg_setup
+ if [[ ${MERGE_TYPE} != binary ]] && use openmp; then
+ tc-check-openmp
+ fi
+
+ if use lapack; then
+ python-any-r1_pkg_setup
+ fi
+
+ if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \
+ || use blas \
+ || use lapack \
+ ; then
+ fortran-2_pkg_setup
+ fi
+
+ if use test && use cuda && use cuda-clang; then
+ llvm-r2_pkg_setup
+ fi
}
src_unpack() {
@@ -195,42 +315,64 @@ src_unpack() {
git-r3_src_unpack
else
unpack "${P}.tar.bz2"
+ fi
- if use test && use lapack; then
- cd "${S}/lapack" || die
- unpack "${PN}-lapack_addons-3.4.1.tgz"
- fi
+ if use test && use lapack; then
+ pushd "${S}/lapack" > /dev/null || die
+ unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz"
+ popd > /dev/null || die
fi
}
src_prepare() {
+ # run patches here as we patch in test/
cmake_src_prepare
- sed \
- -e "/add_subdirectory(bench\/spbench/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(demos/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
-
- if ! use test; then
- sed \
- -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(scripts/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(failtest/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
- -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
- -i CMakeLists.txt || die
+ if use test && use lapack; then
+ pushd "${S}" > /dev/null || die
+ eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch"
+ popd > /dev/null || die
fi
}
src_configure() {
+ if use lapack; then
+ # bug 878987
+ # multiple definition of `cgesdd_'
+ filter-lto
+ fi
+
local mycmakeargs=(
- -DBUILD_SHARED_LIBS="yes"
- -DBUILD_TESTING="$(usex test)"
+ -DCMAKE_CXX_STANDARD="20"
+ -DCMAKE_POSITION_INDEPENDENT_CODE="yes"
+
+ -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests.
+
+ -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library
+ -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library
- -DEIGEN_BUILD_BTL="$(usex benchmark)" # Build benchmark suite
-DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
-DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
)
+
+ append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0"
+
+ if use blas; then
+ mycmakeargs+=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_SHARED_LIBS="yes"
+ -DEIGEN_BUILD_STATIC_LIBS="yes"
+ -DEIGEN_INSTALL_STATIC_LIBS="yes"
+ )
+
+ if use lapack; then
+ mycmakeargs+=(
+ -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp
+ -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)"
+ )
+ fi
+ fi
+
if use doc || use test; then
mycmakeargs+=(
# needs Qt4
@@ -247,61 +389,49 @@ src_configure() {
if use test; then
mycmakeargs+=(
+ -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building
+
# the OpenGL testsuite is extremely brittle, bug #712808
- -DOpenGL_GL_PREFERENCE="GLVND"
-DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests
-DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples
- -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=ON
-
- -DEIGEN_TEST_CXX11=yes
+ -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite
- # -DEIGEN_TEST_CUSTOM_CXX_FLAGS= # Additional compiler flags when compiling unit tests.
- # -DEIGEN_TEST_CUSTOM_LINKER_FLAGS= # Additional linker flags when linking unit tests.
- # -DEIGEN_TEST_BUILD_FLAGS= # Options passed to the build command of unit tests
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation
- # -DEIGEN_BUILD_BTL=yes # Build benchmark suite
+ -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions
+ -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables
- -DEIGEN_TEST_BUILD_DOCUMENTATION="$(usex doc)" # Test building the doxygen documentation
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests
- # -DEIGEN_COVERAGE_TESTING=no # Enable/disable gcov
- # -DEIGEN_CTEST_ERROR_EXCEPTION= # Regular expression for build error messages to be filtered out
- # -DEIGEN_DEBUG_ASSERTS=no # Enable advanced debugging of assertions
- # -DEIGEN_NO_ASSERTION_CHECKING=no # Disable checking of assertions using exceptions
- # -DEIGEN_TEST_NO_EXCEPTIONS=no # Disables C++ exceptions
- # -DEIGEN_TEST_NO_EXPLICIT_ALIGNMENT=no # Disable explicit alignment (hence vectorization) in tests/examples
- # -DEIGEN_TEST_NO_EXPLICIT_VECTORIZATION=no # Disable explicit vectorization in tests/examples
+ -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
- # -DEIGEN_DASHBOARD_BUILD_TARGET=buildtests # Target to be built in dashboard mode, default is buildtests
+ # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support.
+ # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default).
- # -DEIGEN_DEFAULT_TO_ROW_MAJOR=no # Use row-major as default matrix storage order
+ $(cmake_use_find_package adolc Adolc)
+ $(cmake_use_find_package boost Boost)
+ $(cmake_use_find_package cholmod CHOLMOD)
+ # -DDUCCFFT="$(usex ducc)"
+ -DDUCC_ROOT="DUCCFFT"
+ -DDUCCFFT="NOTFOUND"
+ $(cmake_use_find_package fftw FFTW )
+ $(cmake_use_find_package klu KLU)
+ -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes
+ # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL
+ # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP
+ $(cmake_use_find_package pastix PASTIX)
+ # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps
+ -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND"
- # -DEIGEN_TEST_MATRIX_DIR=yes # Enable testing of realword sparse matrices contained in the specified path
- # -DEIGEN_TEST_MAX_SIZE=320 # Maximal matrix/vector size, default is 320
- # -DEIGEN_SPLIT_LARGE_TESTS=no # Split large tests into smaller executables
+ -DPOCKETFFT="$(usex pocketfft)"
+ $(cmake_use_find_package sparsehash GoogleHash)
+ $(cmake_use_find_package spqr SPQR)
+ $(cmake_use_find_package superlu SuperLU)
+ $(cmake_use_find_package umfpack UMFPACK)
)
- use !adolc && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Adolc="TRUE" )
- use !boost && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Boost="TRUE" )
- use !cholmod && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_CHOLMOD="TRUE" )
- use !fftw && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_FFTW="TRUE" )
- use !sparsehash && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_GoogleHash="TRUE" )
- use !klu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KLU="TRUE" )
- use !opengl && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenGL="TRUE" )
- use !openmp && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenMP="TRUE" )
- use !pastix && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_PASTIX="TRUE" )
- use !spqr && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SPQR="TRUE" )
- use !superlu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU="TRUE" )
- use !umfpack && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_UMFPACK="TRUE" )
-
- if use lapack; then
- mycmakeargs+=(
- -DEIGEN_ENABLE_LAPACK_TESTS=yes
- -DEIGEN_TEST_EXTERNAL_BLAS=yes # Use external BLAS library for testsuite
- -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=ON
- )
- fi
-
if use arm; then
mycmakeargs+=(
-DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)"
@@ -314,13 +444,6 @@ src_configure() {
)
fi
- if use ppc || use ppc64; then
- mycmakeargs+=(
- -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
- -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
- )
- fi
-
if use amd64 || use x86; then
mycmakeargs+=(
# -DEIGEN_TEST_32BIT=no # Force generating 32bit code.
@@ -345,6 +468,13 @@ src_configure() {
)
fi
+ if use ppc || use ppc64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)"
+ -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)"
+ )
+ fi
+
if use s390; then
mycmakeargs+=(
# -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples
@@ -352,48 +482,65 @@ src_configure() {
)
fi
- mycmakeargs+=(
- -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
- -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex clang-cuda)")" # Use clang instead of nvcc to compile the CUDA tests
-
- -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support.
-
- # -DEIGEN_TEST_SYCL=no # Add Sycl support.
- # -DEIGEN_SYCL_TRISYCL=no # Use the triSYCL Sycl implementation (ComputeCPP by default).
- )
-
if use cuda; then
cuda_add_sandbox -w
- if use clang-cuda; then
+
+ if use cuda-clang; then
local llvm_prefix
llvm_prefix="$(get_llvm_prefix -b)"
- export CC="${llvm_prefix}/bin/clang"
- export CXX="${llvm_prefix}/bin/clang++"
- export LIBRARY_PATH="${ESYSROOT}/usr/$(get_libdir)"
+
+ # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with
+ # error: unrecognized command-line option
+ if ! tc-is-clang; then
+ export CC="${CHOST}-clang-${LLVM_SLOT}"
+ export CXX="${CHOST}-clang++-${LLVM_SLOT}"
+ fi
+
+ NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc"
+
mycmakeargs+=(
- -DCUDA_HOST_COMPILER="${llvm_prefix}/bin/clang++"
+ -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}"
)
else
- cuda_set_CUDAHOSTCXX
+ cuda_get_host_compiler
+
mycmakeargs+=(
-DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
)
+ if [[ -v CUDACXX ]]; then
+ mycmakeargs+=(
+ -DCUDA_NVCC_EXECUTABLE="${CUDACXX}"
+ -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA
+ )
+ fi
fi
+
if [[ "${CUDA_VERBOSE}" == true ]]; then
mycmakeargs+=(
- -DCUDA_VERBOSE_BUILD=yes
+ -DCUDA_VERBOSE_BUILD="yes"
)
NVCCFLAGS+=" -v"
fi
- export CUDAFLAGS="${NVCCFLAGS}"
+ if [[ -v CUDAARCHS ]]; then
+ mycmakeargs+=(
+ # TODO this needs to be lowest first for eigen
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
- [[ -z "${CUDAARCHS}" ]] && einfo "trying to determine host CUDAARCHS"
- : "${CUDAARCHS:=$(__nvcc_device_query)}"
- export CUDAARCHS
+ # CUDAFLAGS is used by cmake
+ # NVCCFLAGS is used by cuda.eclass
+ mycmakeargs+=(
+ -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}"
+
+ -DCUDA_USE_STATIC_CUDA_RUNTIME="no"
+ )
+ fi
+ if use opengl; then
mycmakeargs+=(
- -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ -DOpenGL_GL_PREFERENCE="GLVND"
)
fi
fi
@@ -403,33 +550,92 @@ src_configure() {
src_compile() {
local targets=()
- if use doc; then
- targets+=( doc )
- HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
+
+ if use blas; then
+ targets+=( blas )
+ if use lapack; then
+ targets+=( lapack )
+ fi
fi
+
if use test; then
targets+=( buildtests )
- if ! use lapack; then
- targets+=( blas )
+
+ if use cuda || use hip; then
+ targets+=( buildtests_gpu )
fi
- # tests generate random data, which
- # obviously fails for some seeds
- export EIGEN_SEED=712808
+
+ # tests generate random data, which fails for some seeds
+ # we solve this via test reruns now
+ # export EIGEN_SEED=712808
fi
- if use doc || use test; then
+ # we add doc last to capture results for buildtests
+ if use doc; then
+ targets+=( doc )
+ fi
+
+ if [[ -n "${targets[*]}" ]]; then
cmake_src_compile "${targets[@]}"
fi
}
src_test() {
- if use cuda ; then
+ local CMAKE_SKIP_TESTS=(
+ "^ref_8$"
+ )
+
+ if use cholmod && use blas && use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^cholmod_support_21$"
+ "^cholmod_support_22$"
+ )
+ fi
+
+ if use cuda; then
cuda_add_sandbox -w
fi
+ if use klu && use blas; then
+ CMAKE_SKIP_TESTS+=(
+ "^klu_support_1$"
+ "^klu_support_2$"
+ )
+ fi
+
+ if use lapack; then
+ CMAKE_SKIP_TESTS+=(
+ "^LAPACK-xlintsts_stest_in$"
+ "^LAPACK-xeigtsts_sep_in$"
+ "^LAPACK-xeigtsts_svd_in$"
+ "^LAPACK-xlintstd_dtest_in$"
+ "^LAPACK-xeigtstd_sep_in$"
+ "^LAPACK-xeigtstd_svd_in$"
+ "^LAPACK-xlintstc_ctest_in$"
+ "^LAPACK-xeigtstc_svd_in$"
+ )
+ fi
+
local myctestargs=(
-j1 # otherwise breaks due to cmake reruns
+ --repeat until-pass:50
)
- cmake_src_test
+ if use opengl; then
+ virtx \
+ cmake_src_test
+ else
+ cmake_src_test
+ fi
+}
+
+src_install() {
+ local DOCS=()
+ cmake_src_install
+
+ if use doc; then
+ pushd "${BUILD_DIR}/doc" > /dev/null || die
+ dodoc -r html
+ popd > /dev/null || die
+ fi
}
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch b/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch
index cb3671dc0100..8e9b98fbd8bb 100644
--- a/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch
+++ b/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch
@@ -4,14 +4,14 @@
set(${VAR} VSX)
elseif(EIGEN_TEST_ALTIVEC)
set(${VAR} ALVEC)
-- elseif(EIGEN_TEST_FMA)
-- set(${VAR} FMA)
+ elseif(EIGEN_TEST_AVX512DQ)
+ set(${VAR} AVX512DQ)
+ elseif(EIGEN_TEST_AVX512)
+ set(${VAR} AVX512)
+ elseif(EIGEN_TEST_AVX2)
+ set(${VAR} AVX2)
+ elseif(EIGEN_TEST_FMA)
+ set(${VAR} FMA)
+ elseif(EIGEN_TEST_F16C)
+ set(${VAR} F16C)
elseif(EIGEN_TEST_AVX)
@@ -20,8 +20,6 @@
set(${VAR} SSE42)
elseif(EIGEN_TEST_SSE4_1)
set(${VAR} SSE41)
-+ elseif(EIGEN_TEST_FMA)
-+ set(${VAR} FMA)
elseif(EIGEN_TEST_SSSE3)
set(${VAR} SSSE3)
elseif(EIGEN_TEST_SSE3)
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch b/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch
new file mode 100644
index 000000000000..39eef7dc0c0f
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch
@@ -0,0 +1,30 @@
+From: Nicholas Vinson <nvinson234@gmail.com>
+Date: Mon, 15 Dec 2025 20:37:04 -0500
+
+--- a/Eigen/src/Eigenvalues/ComplexSchur.h
++++ b/Eigen/src/Eigenvalues/ComplexSchur.h
+@@ -277,7 +277,8 @@
+ using std::abs;
+ if ((iter == 10 || iter == 20) && iu > 1) {
+ // exceptional shift, taken from http://www.netlib.org/eispack/comqr.f
+- return abs(numext::real(m_matT.coeff(iu,iu-1))) + abs(numext::real(m_matT.coeff(iu-1,iu-2)));
++ return ComplexSchur<MatrixType>::ComplexScalar(
++ abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2))));
+ }
+
+ // compute the shift as one of the eigenvalues of t, the 2x2
+--- a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h
++++ b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h
+@@ -86,8 +86,8 @@
+ for (Index i = 0; i < rows; i++)
+ mx = (std::max)(mx, std::abs(m_f(Ashifted(i, i) + avgEival, static_cast<int>(s + r))));
+ if (r != 0)
+ rfactorial *= RealScalar(r);
+- delta = (std::max)(delta, mx / rfactorial);
++ delta = (std::max)(delta, RealScalar(mx / rfactorial));
+ }
+ const RealScalar P_norm = P.cwiseAbs().rowwise().sum().maxCoeff();
+ if (mu * delta * P_norm < NumTraits<Scalar>::epsilon() * F_norm) // series converged
+--
+2.52.0
+
diff --git a/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch b/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch
new file mode 100644
index 000000000000..9ced714f0c51
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch
@@ -0,0 +1,25 @@
+From 470c47b3b8309cb71cf48146e56744bd2630827a Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Sat, 28 Feb 2026 23:16:55 +0100
+Subject: [PATCH] bug1213: link with Eigen3::Eigen
+
+Doesn't find Eigen/Core otherwise.
+---
+ test/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
+index f503efc..360f989 100644
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -299,6 +299,7 @@ if(EIGEN_TEST_CXX11)
+ endif()
+
+ add_executable(bug1213 bug1213.cpp bug1213_main.cpp)
++target_link_libraries(bug1213 Eigen3::Eigen)
+
+ check_cxx_compiler_flag("-ffast-math" COMPILER_SUPPORT_FASTMATH)
+ if(COMPILER_SUPPORT_FASTMATH)
+--
+2.53.0
+
diff --git a/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch b/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch
new file mode 100644
index 000000000000..720898bdd11c
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch
@@ -0,0 +1,72 @@
+From cd8bb671321b5163c21f84689f929b671ed68750 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Mon, 20 Oct 2025 21:26:47 +0200
+Subject: [PATCH] cxx standard 17
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 80d36b991..8106bb264 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -330,11 +330,8 @@ if (EIGEN_BUILD_TESTING)
+
+ option(EIGEN_TEST_CXX11 "Enable testing with C++11 and C++11 features (e.g. Tensor module)." ${EIGEN_COMPILER_SUPPORT_CPP11})
+ if(EIGEN_TEST_CXX11)
+- set(CMAKE_CXX_STANDARD 11)
++ set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_EXTENSIONS OFF)
+- if(EIGEN_COMPILER_SUPPORT_CPP11)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+- endif()
+ else()
+ ei_add_cxx_compiler_flag("-std=c++03")
+ endif()
+@@ -373,7 +370,7 @@ if (EIGEN_BUILD_TESTING)
+ ei_add_cxx_compiler_flag("-Wshorten-64-to-32")
+ ei_add_cxx_compiler_flag("-Wlogical-op")
+ ei_add_cxx_compiler_flag("-Wenum-conversion")
+- ei_add_cxx_compiler_flag("-Wc++11-extensions")
++ # ei_add_cxx_compiler_flag("-Wc++11-extensions")
+ ei_add_cxx_compiler_flag("-Wdouble-promotion")
+ # ei_add_cxx_compiler_flag("-Wconversion")
+ ei_add_cxx_compiler_flag("-Wshadow")
+diff --git a/doc/special_examples/CMakeLists.txt b/doc/special_examples/CMakeLists.txt
+index a0267a512..d7fc80976 100644
+--- a/doc/special_examples/CMakeLists.txt
++++ b/doc/special_examples/CMakeLists.txt
+@@ -23,7 +23,6 @@ if(EIGEN_COMPILER_SUPPORT_CPP11)
+ add_executable(random_cpp11 random_cpp11.cpp)
+ target_link_libraries(random_cpp11 ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO} Eigen3::Eigen)
+ add_dependencies(all_examples random_cpp11)
+- target_compile_options(random_cpp11 PRIVATE "-std=c++11")
+
+ add_custom_command(
+ TARGET random_cpp11
+diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
+index 7ce260e0e..f503efc5d 100644
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -386,7 +386,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA)
+ string(REPLACE "-fno-check-new" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+
+ if(EIGEN_TEST_CUDA_CLANG)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+ string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}")
+ foreach(GPU IN LISTS EIGEN_CUDA_COMPUTE_ARCH)
+ string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${GPU}")
+diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt
+index 1d5e9b174..cf394de86 100644
+--- a/unsupported/test/CMakeLists.txt
++++ b/unsupported/test/CMakeLists.txt
+@@ -227,7 +227,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA)
+ string(REPLACE "-ansi" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+
+ if(EIGEN_TEST_CUDA_CLANG)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+ string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}")
+ foreach(ARCH IN LISTS EIGEN_CUDA_COMPUTE_ARCH)
+ string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${ARCH}")
+--
+2.51.1
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch b/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch
new file mode 100644
index 000000000000..89e049368022
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch
@@ -0,0 +1,136 @@
+From cf458c66ee01802d5023fcab78412583b5c73574 Mon Sep 17 00:00:00 2001
+From: Guilhem Saurel <guilhem.saurel@laas.fr>
+Date: Tue, 16 Dec 2025 09:40:05 +0100
+Subject: [PATCH 1/4] doc: add and use \anchor Eigen_placeholders_lastN
+
+fix for Doxygen >= 1.14:
+```
+doc/Manual.dox:177: error: unable to resolve link to 'Eigen::placeholders::lastN(SizeType)' for \link command
+doc/Manual.dox:178: error: unable to resolve link to 'Eigen::placeholders::lastN(SizeType,IncrType)' for \link command
+```
+---
+ Eigen/src/Core/ArithmeticSequence.h | 2 +-
+ doc/TutorialSlicingIndexing.dox | 3 +--
+ 2 files changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/Eigen/src/Core/ArithmeticSequence.h b/Eigen/src/Core/ArithmeticSequence.h
+index ae6373dda..41617713f 100644
+--- a/Eigen/src/Core/ArithmeticSequence.h
++++ b/Eigen/src/Core/ArithmeticSequence.h
+@@ -182,7 +182,7 @@ namespace placeholders {
+ * \returns a symbolic ArithmeticSequence representing the last \a size elements with increment \a incr.
+ *
+ * It is a shortcut for: \code seqN(last-(size-fix<1>)*incr, size, incr) \endcode
+- *
++ * \anchor Eigen_placeholders_lastN
+ * \sa lastN(SizeType), seqN(FirstType,SizeType), seq(FirstType,LastType,IncrType) */
+ template <typename SizeType, typename IncrType>
+ auto lastN(SizeType size, IncrType incr)
+diff --git a/doc/TutorialSlicingIndexing.dox b/doc/TutorialSlicingIndexing.dox
+index 6ebaa2d6d..a1b00dfc4 100644
+--- a/doc/TutorialSlicingIndexing.dox
++++ b/doc/TutorialSlicingIndexing.dox
+@@ -114,8 +114,7 @@ Here are some examples for a 2D array/matrix \c A and a 1D array/vector \c v.
+
+ As seen in the last example, referencing the <i> last n </i> elements (or rows/columns) is a bit cumbersome to write.
+ This becomes even more tricky and error prone with a non-default increment.
+-Here comes \link Eigen::placeholders::lastN(SizeType) Eigen::placeholders::lastN(size) \endlink, and
+-\link Eigen::placeholders::lastN(SizeType,IncrType) Eigen::placeholders::lastN(size,incr) \endlink:
++Here comes \ref Eigen_placeholders_lastN :
+
+ <table class="manual">
+ <tr>
+--
+GitLab
+
+
+From 6be98c166c86a2360177bad9cdccc55ac1ceed7b Mon Sep 17 00:00:00 2001
+From: Guilhem Saurel <guilhem.saurel@laas.fr>
+Date: Tue, 16 Dec 2025 10:13:56 +0100
+Subject: [PATCH 2/4] doc: fix html
+
+fix for Doxygen >= 1.14:
+```
+doc/Manual.dox:656: error: expected <tr> or </table> tag but found token TK_HTMLTAG instead!
+```
+---
+ doc/QuickReference.dox | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/doc/QuickReference.dox b/doc/QuickReference.dox
+index 1fb000fdc..4aece902c 100644
+--- a/doc/QuickReference.dox
++++ b/doc/QuickReference.dox
+@@ -551,7 +551,6 @@ Read-write access to sub-vectors:
+ <tr>
+ <th>Default versions</th>
+ <th>Optimized versions when the size \n is known at compile time</th></tr>
+-<th></th>
+
+ <tr><td>\code vec1.head(n)\endcode</td><td>\code vec1.head<n>()\endcode</td><td>the first \c n coeffs </td></tr>
+ <tr><td>\code vec1.tail(n)\endcode</td><td>\code vec1.tail<n>()\endcode</td><td>the last \c n coeffs </td></tr>
+--
+GitLab
+
+
+From ac5d00609f14b7402f1fe8274e4d5db3c61f091e Mon Sep 17 00:00:00 2001
+From: Guilhem Saurel <guilhem.saurel@laas.fr>
+Date: Tue, 16 Dec 2025 10:37:35 +0100
+Subject: [PATCH 3/4] doc: typo
+
+fix for doxygen 1.15:
+```
+doc/UnalignedArrayAssert.dox:134: error: Reached end of file while still searching closing '`' of a verbatim block starting at line 117
+doc/UnalignedArrayAssert.dox:134: error: Reached end of file while still inside a (nested) comment. Nesting level 1 (possible line reference(s): 3)
+```
+---
+ doc/UnalignedArrayAssert.dox | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/doc/UnalignedArrayAssert.dox b/doc/UnalignedArrayAssert.dox
+index ca674a267..0ed6f8835 100644
+--- a/doc/UnalignedArrayAssert.dox
++++ b/doc/UnalignedArrayAssert.dox
+@@ -7,7 +7,7 @@ Hello! You are seeing this webpage because your program terminated on an asserti
+ my_program: path/to/eigen/Eigen/src/Core/DenseStorage.h:44:
+ Eigen::internal::matrix_array<T, Size, MatrixOptions, Align>::internal::matrix_array()
+ [with T = double, int Size = 2, int MatrixOptions = 2, bool Align = true]:
+-Assertion `(reinterpret_cast<size_t>(array) & (sizemask)) == 0 && "this assertion
++Assertion (reinterpret_cast<size_t>(array) & (sizemask)) == 0 && "this assertion
+ is explained here: http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html
+ **** READ THIS WEB PAGE !!! ****"' failed.
+ </pre>
+--
+GitLab
+
+
+From ae263fb905b2dd9ff3ad9b47dc44f90466f7b1c8 Mon Sep 17 00:00:00 2001
+From: Guilhem Saurel <guilhem.saurel@laas.fr>
+Date: Tue, 16 Dec 2025 10:40:27 +0100
+Subject: [PATCH 4/4] doc: define eigenAutoToc alias
+
+Fix for doxygen 1.15:
+```
+doc/Manual.dox:95: error: Found unexpanded alias '\cpp17'. Check if number of arguments passed is correct.
+doc/Manual.dox:98: error: Found unexpanded alias '\eigenAutoToc'. Check if number of arguments passed is correct.
+```
+---
+ doc/Doxyfile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in
+index 25a7e2e9a..445fc0a6f 100644
+--- a/doc/Doxyfile.in
++++ b/doc/Doxyfile.in
+@@ -32,7 +32,7 @@ ALIASES = "only_for_vectors=This is only for vectors (either row-
+ "cpp14=<span class='cpp14'>[c++14]</span>" \
+ "cpp17=<span class='cpp17'>[c++17]</span>" \
+ "newin{1}=<span class='newin3x'>New in %Eigen \1.</span>" \
+- eigenAutoToc= \
++ "eigenAutoToc=<!-- TOC placeholder -->" \
+ eigenManualPage=\defgroup
+ EXTENSION_MAPPING = .h=C++ \
+ no_extension=C++
+--
+GitLab
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch b/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch
new file mode 100644
index 000000000000..ee8ab16793cb
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch
@@ -0,0 +1,35 @@
+From 056b77036b4c97fee25bbd7a747e55c75c79cd48 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Tue, 23 Sep 2025 00:40:14 +0200
+Subject: [PATCH] please protect your min with parentheses
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/Eigen/src/Core/products/Parallelizer.h b/Eigen/src/Core/products/Parallelizer.h
+index 4f36689..899d78f 100644
+--- a/Eigen/src/Core/products/Parallelizer.h
++++ b/Eigen/src/Core/products/Parallelizer.h
+@@ -141,7 +141,7 @@ inline void manage_multi_threading(Action action, int* v) {
+ // for OpenMP.
+ eigen_internal_assert(*v >= 0);
+ int omp_threads = omp_get_max_threads();
+- m_maxThreads = (*v == 0 ? omp_threads : std::min(*v, omp_threads));
++ m_maxThreads = (*v == 0 ? omp_threads : (std::min)(*v, omp_threads));
+ #elif defined(EIGEN_GEMM_THREADPOOL)
+ // Calling action == SetAction and *v = 0 means
+ // restoring m_maxThreads to the number of threads in the ThreadPool,
+diff --git a/test/product_threaded.cpp b/test/product_threaded.cpp
+index 1782c28..85c2615 100644
+--- a/test/product_threaded.cpp
++++ b/test/product_threaded.cpp
+@@ -7,6 +7,7 @@
+ // Public License v. 2.0. If a copy of the MPL was not distributed
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
++#define EIGEN_DONT_PARALLELIZE
+ #define EIGEN_GEMM_THREADPOOL
+ #include "main.h"
+
+--
+2.51.0
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch b/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch
new file mode 100644
index 000000000000..9a740351ead9
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch
@@ -0,0 +1,29 @@
+From d0e70fb11f54ccc8117030482fb7b3b359261cbf Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Mon, 22 Dec 2025 17:19:51 +0100
+Subject: Do not show deprecated CUDA device properties for CUDA-13
+
+Fixes: 9e5714b93b3a0d7848e72db5fa2b58decaa60297
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/test/gpu_common.h b/test/gpu_common.h
+index f34f1b078..f47742079 100644
+--- a/test/gpu_common.h
++++ b/test/gpu_common.h
+@@ -153,9 +153,13 @@ void ei_test_init_gpu() {
+ std::cout << " warpSize: " << deviceProp.warpSize << "\n";
+ std::cout << " regsPerBlock: " << deviceProp.regsPerBlock << "\n";
+ std::cout << " concurrentKernels: " << deviceProp.concurrentKernels << "\n";
++#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000
+ std::cout << " clockRate: " << deviceProp.clockRate << "\n";
++#endif
+ std::cout << " canMapHostMemory: " << deviceProp.canMapHostMemory << "\n";
++#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000
+ std::cout << " computeMode: " << deviceProp.computeMode << "\n";
++#endif
+ }
+
+ #endif // EIGEN_TEST_GPU_COMMON_H
+--
+2.52.0
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch b/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch
new file mode 100644
index 000000000000..c770cbe827cc
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch
@@ -0,0 +1,29 @@
+From: Nicholas Vinson <nvinson234@gmail.com>
+Date: Mon, 15 Dec 2025 20:37:04 -0500
+
+--- a/Eigen/src/Eigenvalues/ComplexSchur.h
++++ b/Eigen/src/Eigenvalues/ComplexSchur.h
+@@ -277,7 +277,8 @@
+ using std::abs;
+ if ((iter == 10 || iter == 20) && iu > 1) {
+ // exceptional shift, taken from http://www.netlib.org/eispack/comqr.f
+- return abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2)));
++ return ComplexSchur<MatrixType>::ComplexScalar(
++ abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2))));
+ }
+
+ // compute the shift as one of the eigenvalues of t, the 2x2
+--- a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h
++++ b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h
+@@ -86,7 +86,7 @@
+ for (Index i = 0; i < rows; i++)
+ mx = (std::max)(mx, std::abs(m_f(Ashifted(i, i) + avgEival, static_cast<int>(s + r))));
+ if (r != 0) rfactorial *= RealScalar(r);
+- delta = (std::max)(delta, mx / rfactorial);
++ delta = (std::max)(delta, RealScalar(mx / rfactorial));
+ }
+ const RealScalar P_norm = P.cwiseAbs().rowwise().sum().maxCoeff();
+ if (mu * delta * P_norm < NumTraits<Scalar>::epsilon() * F_norm) // series converged
+--
+2.52.0
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch b/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch
new file mode 100644
index 000000000000..d68e31b132ed
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch
@@ -0,0 +1,57 @@
+From efcf4891a83e2757aa70de61eb17d81963085c20 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Sat, 27 Dec 2025 15:39:40 +0100
+Subject: cmake GNUInstallDirs
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/blas/CMakeLists.txt b/blas/CMakeLists.txt
+index 45488d7..f0f88c0 100644
+--- a/blas/CMakeLists.txt
++++ b/blas/CMakeLists.txt
+@@ -31,10 +31,8 @@ foreach(target IN LISTS EIGEN_BLAS_TARGETS)
+ endif()
+
+ add_dependencies(blas ${target})
+- install(TARGETS ${target}
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib)
++ include(GNUInstallDirs)
++ install(TARGETS ${target})
+ endforeach()
+
+ if(EIGEN_BUILD_TESTING)
+diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
+index da07b19d6..dec130bd5 100644
+--- a/doc/CMakeLists.txt
++++ b/doc/CMakeLists.txt
+@@ -4,6 +4,8 @@ set_directory_properties(PROPERTIES EXCLUDE_FROM_ALL TRUE)
+
+ project(EigenDoc)
+
++include(GNUInstallDirs)
++
+ if(CMAKE_COMPILER_IS_GNUCXX)
+ if(CMAKE_SYSTEM_NAME MATCHES Linux)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -g1")
+diff --git a/lapack/CMakeLists.txt b/lapack/CMakeLists.txt
+index d837fff..9e127a6 100644
+--- a/lapack/CMakeLists.txt
++++ b/lapack/CMakeLists.txt
+@@ -120,10 +120,8 @@ foreach(target IN LISTS EIGEN_LAPACK_TARGETS)
+ endif()
+ target_link_libraries(${target} Eigen3::Eigen)
+ add_dependencies(lapack ${target})
+- install(TARGETS ${target}
+- RUNTIME DESTINATION bin
+- LIBRARY DESTINATION lib
+- ARCHIVE DESTINATION lib)
++ include(GNUInstallDirs)
++ install(TARGETS ${target})
+ endforeach()
+
+
+--
+2.52.0
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch b/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch
new file mode 100644
index 000000000000..cbba85d882cb
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch
@@ -0,0 +1,248 @@
+From 8d05fb579428b57a784f72e054295ebfeac5864d Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Fri, 13 Mar 2026 18:43:46 +0100
+Subject: fix lapack_testing.py
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/lapack/testing/lapack_testing.py b/lapack/testing/lapack_testing.py
+index 3bd9462..b35e15d 100755
+--- a/lapack/testing/lapack_testing.py
++++ b/lapack/testing/lapack_testing.py
+@@ -15,9 +15,9 @@ try:
+ opts, args = getopt.getopt(sys.argv[1:], "hd:srep:t:n",
+ ["help", "dir", "short", "run", "error","prec=","test=","number"])
+
+-except getopt.error, msg:
+- print msg
+- print "for help use --help"
++except (getopt.error, msg):
++ print(msg)
++ print("for help use --help")
+ sys.exit(2)
+
+ short_summary=0
+@@ -29,38 +29,38 @@ only_numbers=0
+ dir="TESTING"
+ for o, a in opts:
+ if o in ("-h", "--help"):
+- print sys.argv[0]+" [-h|--help] [-d dir |--dir dir] [-s |--short] [-r |--run] [-e |--error] [-p p |--prec p] [-t test |--test test] [-n | --number]"
+- print " - h is to print this message"
+- print " - r is to use to run the LAPACK tests then analyse the output (.out files). By default, the script will not run all the LAPACK tests"
+- print " - d [dir] is to indicate where is the LAPACK testing directory (.out files). By default, the script will use ."
+- print " LEVEL OF OUTPUT"
+- print " - x is to print a detailed summary"
+- print " - e is to print only the error summary"
+- print " - s is to print a short summary"
+- print " - n is to print the numbers of failing tests (turn on summary mode)"
+- print " SECLECTION OF TESTS:"
+- print " - p [s/c/d/z/x] is to indicate the PRECISION to run:"
+- print " s=single"
+- print " d=double"
+- print " sd=single/double"
+- print " c=complex"
+- print " z=double complex"
+- print " cz=complex/double complex"
+- print " x=all [DEFAULT]"
+- print " - t [lin/eig/mixed/rfp/all] is to indicate which TEST FAMILY to run:"
+- print " lin=Linear Equation"
+- print " eig=Eigen Problems"
+- print " mixed=mixed-precision"
+- print " rfp=rfp format"
+- print " all=all tests [DEFAULT]"
+- print " EXAMPLES:"
+- print " ./lapack_testing.py -n"
+- print " Will return the numbers of failed tests by analyzing the LAPACK output"
+- print " ./lapack_testing.py -n -r -p s"
+- print " Will return the numbers of failed tests in REAL precision by running the LAPACK Tests then analyzing the output"
+- print " ./lapack_testing.py -n -p s -t eig "
+- print " Will return the numbers of failed tests in REAL precision by analyzing only the LAPACK output of EIGEN testings"
+- print "Written by Julie Langou (June 2011) "
++ print(sys.argv[0]+" [-h|--help] [-d dir |--dir dir] [-s |--short] [-r |--run] [-e |--error] [-p p |--prec p] [-t test |--test test] [-n | --number]")
++ print(" - h is to print this message")
++ print(" - r is to use to run the LAPACK tests then analyse the output (.out files). By default, the script will not run all the LAPACK tests")
++ print(" - d [dir] is to indicate where is the LAPACK testing directory (.out files). By default, the script will use .")
++ print(" LEVEL OF OUTPUT")
++ print(" - x is to print a detailed summary")
++ print(" - e is to print only the error summary")
++ print(" - s is to print a short summary")
++ print(" - n is to print the numbers of failing tests (turn on summary mode)")
++ print(" SECLECTION OF TESTS:")
++ print(" - p [s/c/d/z/x] is to indicate the PRECISION to run:")
++ print(" s=single")
++ print(" d=double")
++ print(" sd=single/double")
++ print(" c=complex")
++ print(" z=double complex")
++ print(" cz=complex/double complex")
++ print(" x=all [DEFAULT]")
++ print(" - t [lin/eig/mixed/rfp/all] is to indicate which TEST FAMILY to run:")
++ print(" lin=Linear Equation")
++ print(" eig=Eigen Problems")
++ print(" mixed=mixed-precision")
++ print(" rfp=rfp format")
++ print(" all=all tests [DEFAULT]")
++ print(" EXAMPLES:")
++ print(" ./lapack_testing.py -n")
++ print(" Will return the numbers of failed tests by analyzing the LAPACK output")
++ print(" ./lapack_testing.py -n -r -p s")
++ print(" Will return the numbers of failed tests in REAL precision by running the LAPACK Tests then analyzing the output")
++ print(" ./lapack_testing.py -n -p s -t eig ")
++ print(" Will return the numbers of failed tests in REAL precision by analyzing only the LAPACK output of EIGEN testings")
++ print("Written by Julie Langou (June 2011) ")
+ sys.exit(0)
+ else:
+ if o in ("-s", "--short"):
+@@ -120,34 +120,34 @@ def run_summary_test( f, cmdline, short_summary):
+ error_message=cmdline+" did not work"
+
+ if r != 0 and not with_file:
+- print "---- TESTING " + cmdline.split()[0] + "... FAILED(" + error_message +") !"
++ print("---- TESTING " + cmdline.split()[0] + "... FAILED(" + error_message +") !")
+ for line in pipe.readlines():
+ f.write(str(line))
+ elif r != 0 and with_file and not short_summary:
+- print "---- WARNING: please check that you have the LAPACK output : "+cmdline+"!"
+- print "---- WARNING: with the option -r, we can run the LAPACK testing for you"
++ print("---- WARNING: please check that you have the LAPACK output : "+cmdline+"!")
++ print("---- WARNING: with the option -r, we can run the LAPACK testing for you")
+ # print "---- "+error_message
+ else:
+ for line in pipe.readlines():
+- f.write(str(line))
+- words_in_line=line.split()
+- if (line.find("run")!=-1):
+-# print line
+- whereisrun=words_in_line.index("run)")
+- nb_test_run+=int(words_in_line[whereisrun-2])
+- if (line.find("out of")!=-1):
+- if (short_summary==0): print line,
+- whereisout= words_in_line.index("out")
+- nb_test_fail+=int(words_in_line[whereisout-1])
+- if (line.find("illegal")!=-1):
+- if (short_summary==0):print line,
+- nb_test_illegal+=1
+- if (line.find(" INFO")!=-1):
+- if (short_summary==0):print line,
+- nb_test_info+=1
+- if (with_file==1):
+- pipe.close()
+-
++ f.write(str(line))
++ words_in_line=line.split()
++ if (line.find("run")!=-1):
++# print line
++ whereisrun=words_in_line.index("run)")
++ nb_test_run+=int(words_in_line[whereisrun-2])
++ if (line.find("out of")!=-1):
++ if (short_summary==0): print(line),
++ whereisout= words_in_line.index("out")
++ nb_test_fail+=int(words_in_line[whereisout-1])
++ if (line.find("illegal")!=-1):
++ if (short_summary==0):print(line),
++ nb_test_illegal+=1
++ if (line.find(" INFO")!=-1):
++ if (short_summary==0):print(line),
++ nb_test_info+=1
++ if (with_file==1):
++ pipe.close()
++
+ f.flush();
+
+ return [nb_test_run,nb_test_fail,nb_test_illegal,nb_test_info]
+@@ -161,10 +161,10 @@ except IOError:
+ f = sys.stdout
+
+ if (short_summary==0):
+- print " "
+- print "---------------- Testing LAPACK Routines ----------------"
+- print " "
+- print "-- Detailed results are stored in", filename
++ print(" ")
++ print("---------------- Testing LAPACK Routines ----------------")
++ print(" ")
++ print("-- Detailed results are stored in", filename)
+
+ dtypes = (
+ ("s", "d", "c", "z"),
+@@ -211,9 +211,9 @@ for dtype in range_prec:
+ name = dtypes[1][dtype]
+
+ if (short_summary==0):
+- print " "
+- print "------------------------- %s ------------------------" % name
+- print " "
++ print(" ")
++ print("------------------------- %s ------------------------" % name)
++ print(" ")
+ sys.stdout.flush()
+
+
+@@ -260,8 +260,8 @@ for dtype in range_prec:
+ # EIG TESTS
+ cmdbase="xeigtst"+letter+" < "+dtests[0][dtest]+".in > "+dtests[2][dtest]+".out"
+ if (not just_errors and not short_summary):
+- print "--> Testing "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]"
+- # Run the process: either to read the file or run the LAPACK testing
++ print("--> Testing "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]")
++ # Run the process: either to read the file or run the LAPACK testing
+ nb_test = run_summary_test(f, cmdbase, short_summary)
+ list_results[0][dtype]+=nb_test[0]
+ list_results[1][dtype]+=nb_test[1]
+@@ -271,21 +271,21 @@ for dtype in range_prec:
+
+ if (not short_summary):
+ if (nb_test[0]>0 and just_errors==0):
+- print "--> Tests passed: "+str(nb_test[0])
++ print("--> Tests passed: "+str(nb_test[0]))
+ if (nb_test[1]>0):
+- print "--> Tests failing to pass the threshold: "+str(nb_test[1])
++ print("--> Tests failing to pass the threshold: "+str(nb_test[1]))
+ if (nb_test[2]>0):
+- print "--> Illegal Error: "+str(nb_test[2])
++ print("--> Illegal Error: "+str(nb_test[2]))
+ if (nb_test[3]>0):
+- print "--> Info Error: "+str(nb_test[3])
++ print("--> Info Error: "+str(nb_test[3]))
+ if (got_error>0 and just_errors==1):
+- print "ERROR IS LOCATED IN "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]"
+- print ""
++ print("ERROR IS LOCATED IN "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]")
++ print("")
+ if (just_errors==0):
+- print ""
++ print("")
+ # elif (got_error>0):
+-# print dtests[2][dtest]+".out \t"+str(nb_test[1])+"\t"+str(nb_test[2])+"\t"+str(nb_test[3])
+
++# print(dtests[2][dtest]+".out \t"+str(nb_test[1])+"\t"+str(nb_test[2])+"\t"+str(nb_test[3]))
+ sys.stdout.flush()
+ if (list_results[0][dtype] > 0 ):
+ percent_num_error=float(list_results[1][dtype])/float(list_results[0][dtype])*100
+@@ -300,9 +300,9 @@ for dtype in range_prec:
+ list_results[3][4]+=list_results[3][dtype]
+
+ if only_numbers==1:
+- print str(list_results[1][4])+"\n"+str(list_results[2][4]+list_results[3][4])
++ print(str(list_results[1][4])+"\n"+str(list_results[2][4]+list_results[3][4]))
+ else:
+- print summary
++ print(summary)
+ if (list_results[0][4] > 0 ):
+ percent_num_error=float(list_results[1][4])/float(list_results[0][4])*100
+ percent_error=float(list_results[2][4]+list_results[3][4])/float(list_results[0][4])*100
+@@ -310,9 +310,9 @@ else:
+ percent_num_error=0
+ percent_error=0
+ if (prec=='x'):
+- print "--> ALL PRECISIONS\t"+str(list_results[0][4])+"\t\t"+str(list_results[1][4])+"\t("+"%.3f" % percent_num_error+"%)\t"+str(list_results[2][4]+list_results[3][4])+"\t("+"%.3f" % percent_error+"%)\t""\n"
++ print("--> ALL PRECISIONS\t"+str(list_results[0][4])+"\t\t"+str(list_results[1][4])+"\t("+"%.3f" % percent_num_error+"%)\t"+str(list_results[2][4]+list_results[3][4])+"\t("+"%.3f" % percent_error+"%)\t""\n")
+ if list_results[0][4] == 0:
+- print "NO TESTS WERE ANALYZED, please use the -r option to run the LAPACK TESTING"
++ print("NO TESTS WERE ANALYZED, please use the -r option to run the LAPACK TESTING")
+
+ # This may close the sys.stdout stream, so make it the last statement
+ f.close()
+--
+2.53.0
+
diff --git a/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch b/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch
new file mode 100644
index 000000000000..63272d4a82d8
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch
@@ -0,0 +1,61 @@
+From 9ddec05248d0084c4bfe737fa9ab3cf61f3ecd4a Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Thu, 12 Mar 2026 16:38:02 +0100
+Subject: make static libs optional
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/blas/CMakeLists.txt b/blas/CMakeLists.txt
+index 2bd498a11..0b605cc9e 100644
+--- a/blas/CMakeLists.txt
++++ b/blas/CMakeLists.txt
+@@ -15,8 +15,10 @@ set(EigenBlas_SRCS single.cpp double.cpp complex_single.cpp complex_double.cpp
+
+ set(EIGEN_BLAS_TARGETS "")
+
++if (EIGEN_BUILD_STATIC_LIBS)
+ add_library(eigen_blas_static STATIC ${EigenBlas_SRCS})
+ list(APPEND EIGEN_BLAS_TARGETS eigen_blas_static)
++endif()
+
+ if (EIGEN_BUILD_SHARED_LIBS)
+ add_library(eigen_blas SHARED ${EigenBlas_SRCS} "eigen_blas.def")
+@@ -34,7 +36,9 @@ foreach(target IN LISTS EIGEN_BLAS_TARGETS)
+
+ add_dependencies(blas ${target})
+ include(GNUInstallDirs)
++ if (NOT EIGEN_INSTALL_STATIC_LIBS AND NOT ${target} EQUAL eigen_blas_static)
+ install(TARGETS ${target})
++ endif()
+ endforeach()
+
+ if(EIGEN_BUILD_TESTING)
+diff --git a/lapack/CMakeLists.txt b/lapack/CMakeLists.txt
+index f98f77afc..4ea553b56 100644
+--- a/lapack/CMakeLists.txt
++++ b/lapack/CMakeLists.txt
+@@ -101,9 +101,11 @@ endif()
+
+ set(EIGEN_LAPACK_TARGETS "")
+
++if (EIGEN_BUILD_STATIC_LIBS)
+ add_library(eigen_lapack_static STATIC ${EigenLapack_SRCS} ${ReferenceLapack_SRCS})
+ target_link_libraries(eigen_lapack_static eigen_blas_static)
+ list(APPEND EIGEN_LAPACK_TARGETS eigen_lapack_static)
++endif()
+
+ if (EIGEN_BUILD_SHARED_LIBS)
+ add_library(eigen_lapack SHARED ${EigenLapack_SRCS} ${EIGEN_LAPACK_DEF})
+@@ -123,7 +125,9 @@ foreach(target IN LISTS EIGEN_LAPACK_TARGETS)
+ target_link_libraries(${target} Eigen3::Eigen)
+ add_dependencies(lapack ${target})
+ include(GNUInstallDirs)
++ if (NOT EIGEN_INSTALL_STATIC_LIBS AND NOT ${target} EQUAL eigen_lapack_static)
+ install(TARGETS ${target})
++ endif()
+ endforeach()
+
+
+--
+2.53.0
+
diff --git a/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch b/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch
new file mode 100644
index 000000000000..0d762191009c
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch
@@ -0,0 +1,29 @@
+From f14dfe5022870966d0d888651f0d4f5b3af5f25c Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Mon, 22 Dec 2025 17:19:51 +0100
+Subject: Do not show deprecated CUDA device properties for CUDA-13
+
+Fixes: 9e5714b93b3a0d7848e72db5fa2b58decaa60297
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/test/gpu_common.h b/test/gpu_common.h
+index 8c7049b17..f47742079 100644
+--- a/test/gpu_common.h
++++ b/test/gpu_common.h
+@@ -153,7 +153,13 @@ void ei_test_init_gpu() {
+ std::cout << " warpSize: " << deviceProp.warpSize << "\n";
+ std::cout << " regsPerBlock: " << deviceProp.regsPerBlock << "\n";
+ std::cout << " concurrentKernels: " << deviceProp.concurrentKernels << "\n";
++#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000
++ std::cout << " clockRate: " << deviceProp.clockRate << "\n";
++#endif
+ std::cout << " canMapHostMemory: " << deviceProp.canMapHostMemory << "\n";
++#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000
++ std::cout << " computeMode: " << deviceProp.computeMode << "\n";
++#endif
+ }
+
+ #endif // EIGEN_TEST_GPU_COMMON_H
+--
+2.53.0
+
diff --git a/dev-cpp/eigen/files/eigen-9999-please_protect_your_min_with_parentheses.patch b/dev-cpp/eigen/files/eigen-9999-please_protect_your_min_with_parentheses.patch
deleted file mode 100644
index 0453fd33a8ae..000000000000
--- a/dev-cpp/eigen/files/eigen-9999-please_protect_your_min_with_parentheses.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff --git a/test/main.h b/test/main.h
-index 771725f06..df22e12f6 100644
---- a/test/main.h
-+++ b/test/main.h
-@@ -86,32 +86,6 @@
- #define EIGEN_DEFAULT_DENSE_INDEX_TYPE int
- #endif
-
--// To test that all calls from Eigen code to std::min() and std::max() are
--// protected by parenthesis against macro expansion, the min()/max() macros
--// are defined here and any not-parenthesized min/max call will cause a
--// compiler error.
--#if !defined(__HIPCC__) && !defined(EIGEN_USE_SYCL) && !defined(EIGEN_POCKETFFT_DEFAULT)
--//
--// HIP header files include the following files
--// <thread>
--// <regex>
--// <unordered_map>
--// which seem to contain not-parenthesized calls to "max"/"min", triggering the following check and causing the compile
--// to fail
--//
--// Including those header files before the following macro definition for "min" / "max", only partially resolves the
--// issue This is because other HIP header files also define "isnan" / "isinf" / "isfinite" functions, which are needed
--// in other headers.
--//
--// So instead choosing to simply disable this check for HIP
--//
--#define min(A, B) please_protect_your_min_with_parentheses
--#define max(A, B) please_protect_your_max_with_parentheses
--#define isnan(X) please_protect_your_isnan_with_parentheses
--#define isinf(X) please_protect_your_isinf_with_parentheses
--#define isfinite(X) please_protect_your_isfinite_with_parentheses
--#endif
--
- // test possible conflicts
- struct real {};
- struct imag {};
-diff --git a/test/main.h b/test/main.h
-index df22e12f6..5ca40424e 100644
---- a/test/main.h
-+++ b/test/main.h
-@@ -95,12 +95,6 @@ struct imag {};
- #endif
- #define M_PI please_use_EIGEN_PI_instead_of_M_PI
-
--#define FORBIDDEN_IDENTIFIER \
-- (this_identifier_is_forbidden_to_avoid_clashes) this_identifier_is_forbidden_to_avoid_clashes
--// B0 is defined in POSIX header termios.h
--#define B0 FORBIDDEN_IDENTIFIER
--#define I FORBIDDEN_IDENTIFIER
--
- // _res is defined by resolv.h
- #define _res FORBIDDEN_IDENTIFIER
-
diff --git a/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch b/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch
new file mode 100644
index 000000000000..4153896b3933
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch
@@ -0,0 +1,22 @@
+From 056b77036b4c97fee25bbd7a747e55c75c79cd48 Mon Sep 17 00:00:00 2001
+From: Paul Zander <negril.nx+gentoo@gmail.com>
+Date: Tue, 23 Sep 2025 00:40:14 +0200
+Subject: [PATCH] product_threaded don't parallelize
+
+Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
+
+diff --git a/test/product_threaded.cpp b/test/product_threaded.cpp
+index 1782c28..85c2615 100644
+--- a/test/product_threaded.cpp
++++ b/test/product_threaded.cpp
+@@ -8,6 +8,7 @@
+ // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ // SPDX-License-Identifier: MPL-2.0
+
++#define EIGEN_DONT_PARALLELIZE
+ #define EIGEN_GEMM_THREADPOOL
+ #include "main.h"
+
+--
+2.51.0
+
diff --git a/dev-cpp/eigen/metadata.xml b/dev-cpp/eigen/metadata.xml
index 64a2bf0caa35..b6edab89860e 100644
--- a/dev-cpp/eigen/metadata.xml
+++ b/dev-cpp/eigen/metadata.xml
@@ -18,23 +18,26 @@
</longdescription>
<use>
- <flag name="benchmark">Build benchmark suite</flag>
- <flag name="clang">Use clang for cuda units compilation</flag>
- <flag name="clang-cuda">Use clang for cuda units compilation</flag>
- <flag name="hip">Enable HIP GPU computing support</flag>
<flag name="adolc">Add test support for Adolc (<pkg>sci-libs/adolc</pkg>)</flag>
+ <flag name="blas">Build the Eigen Blas library</flag>
<flag name="boost">Add test support for Boost.Multiprecision (<pkg>dev-libs/boost</pkg>)</flag>
<flag name="cholmod">Add test support for CHOLMOD (<pkg>sci-libs/cholmod</pkg>)</flag>
+ <flag name="clang">Use clang for cuda units compilation</flag>
+ <flag name="cuda-clang">Use clang for cuda units compilation</flag>
<flag name="fftw">Add test support for fftw (<pkg>sci-libs/fftw</pkg>)</flag>
+ <flag name="hip">Enable HIP GPU computing support</flag>
<flag name="klu">Add test support for KLU (<pkg>sci-libs/klu</pkg>)</flag>
+ <flag name="lapack">Build the included Eigen LAPACK library</flag>
<flag name="mathjax">Use MathJax for rendering math in HTML docs (dev-libs/mathjax)</flag>
+ <flag name="metis">Add test support for METIS (<pkg>sci-libs/metis</pkg>)</flag>
<flag name="opengl">Add test support for OpenGL</flag>
- <flag name="openmp">Add test support for the OpenMP (support parallel computing)</flag>
+ <flag name="openmp">Add test support for OpenMP (support parallel computing)</flag>
<flag name="pastix">Add test support for PaStiX (<pkg>sci-libs/pastix</pkg>)</flag>
+ <flag name="pocketfft">Add test support for pocketfft (<pkg>dev-libs/pocketfft</pkg>)</flag>
<flag name="sparsehash">Add test support for GoogleHash (<pkg>dev-cpp/sparsehash</pkg>)</flag>
<flag name="spqr">Add test support for SPQR (<pkg>sci-libs/spqr</pkg>)</flag>
<flag name="superlu">Add test support for SuperLU (<pkg>sci-libs/superlu</pkg>)</flag>
<flag name="umfpack">Add test support for UMFPACK (<pkg>sci-libs/umfpack</pkg>)</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/elfio/metadata.xml b/dev-cpp/elfio/metadata.xml
index 7005c32b12c1..fc27a371aff2 100644
--- a/dev-cpp/elfio/metadata.xml
+++ b/dev-cpp/elfio/metadata.xml
@@ -6,5 +6,5 @@
<name>Sam James</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/expected-lite/metadata.xml b/dev-cpp/expected-lite/metadata.xml
index cf46ad5e73d5..a57f9fb10a40 100644
--- a/dev-cpp/expected-lite/metadata.xml
+++ b/dev-cpp/expected-lite/metadata.xml
@@ -13,5 +13,5 @@
<changelog>https://github.com/martinmoene/expected-lite/releases</changelog>
<bugs-to>https://github.com/martinmoene/expected-lite/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/expected/metadata.xml b/dev-cpp/expected/metadata.xml
index 20ada97b729e..cca1e4ab8b94 100644
--- a/dev-cpp/expected/metadata.xml
+++ b/dev-cpp/expected/metadata.xml
@@ -9,5 +9,5 @@
<changelog>https://github.com/TartanLlama//expected/releases</changelog>
<bugs-to>https://github.com/TartanLlama//expected/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/exprtk/metadata.xml b/dev-cpp/exprtk/metadata.xml
index ed6fa7c59727..d05e65519142 100644
--- a/dev-cpp/exprtk/metadata.xml
+++ b/dev-cpp/exprtk/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/fast_double_parser/metadata.xml b/dev-cpp/fast_double_parser/metadata.xml
index 736a1167c898..7a420b460d5e 100644
--- a/dev-cpp/fast_double_parser/metadata.xml
+++ b/dev-cpp/fast_double_parser/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/fast_float/metadata.xml b/dev-cpp/fast_float/metadata.xml
index e96ff1c9c98c..70e6325fded3 100644
--- a/dev-cpp/fast_float/metadata.xml
+++ b/dev-cpp/fast_float/metadata.xml
@@ -5,5 +5,5 @@
<changelog>https://github.com/fastfloat/fast_float/releases</changelog>
<bugs-to>https://github.com/fastfloat/fast_float/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/fb303/metadata.xml b/dev-cpp/fb303/metadata.xml
index 8a55334d67dc..37174a5d9749 100644
--- a/dev-cpp/fb303/metadata.xml
+++ b/dev-cpp/fb303/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/fbthrift/metadata.xml b/dev-cpp/fbthrift/metadata.xml
index 968c3a49c113..19ae34b86547 100644
--- a/dev-cpp/fbthrift/metadata.xml
+++ b/dev-cpp/fbthrift/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:facebook:thrift</remote-id>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/finalcut/files/metadata.xml b/dev-cpp/finalcut/files/metadata.xml
index 8c8101bcdb2c..286f2958e9d9 100644
--- a/dev-cpp/finalcut/files/metadata.xml
+++ b/dev-cpp/finalcut/files/metadata.xml
@@ -6,5 +6,5 @@
<name>Development</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/finalcut/metadata.xml b/dev-cpp/finalcut/metadata.xml
index 4204cee5471e..29a99df4550e 100644
--- a/dev-cpp/finalcut/metadata.xml
+++ b/dev-cpp/finalcut/metadata.xml
@@ -39,7 +39,7 @@
<bugs-to>https://github.com/gansm/finalcut/issues/</bugs-to>
<doc>https://github.com/gansm/finalcut/wiki/</doc>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
<slots>
<subslots>Reflect ABI compatibility for libfinal.so</subslots>
</slots>
diff --git a/dev-cpp/fizz/metadata.xml b/dev-cpp/fizz/metadata.xml
index 286ae51fced1..6ff06162a640 100644
--- a/dev-cpp/fizz/metadata.xml
+++ b/dev-cpp/fizz/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:facebook:fizz</remote-id>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/fkYAML/files/fkYAML-0.4.2_p20250522-Strip-Werror.patch b/dev-cpp/fkYAML/files/fkYAML-0.4.2_p20250522-Strip-Werror.patch
new file mode 100644
index 000000000000..8bb13654585b
--- /dev/null
+++ b/dev-cpp/fkYAML/files/fkYAML-0.4.2_p20250522-Strip-Werror.patch
@@ -0,0 +1,30 @@
+From: Pavel Sobolev <contact@paveloom.dev>
+Subject: [PATCH] Strip `-Werror`.
+
+Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
+
+--- a/tests/unit_test/CMakeLists.txt
++++ b/tests/unit_test/CMakeLists.txt
+@@ -117,18 +117,18 @@ target_compile_options(
+ >
+ # GNU
+ $<$<CXX_COMPILER_ID:GNU>:
+- -Wall -Wextra -Werror -pedantic -Wpedantic -Wdeprecated --all-warnings --extra-warnings
++ -Wall -Wextra -pedantic -Wpedantic -Wdeprecated --all-warnings --extra-warnings
+ -Wno-deprecated-declarations # for testing deprecated functions
+ -Wno-self-move # necessary to build the detail::iterator class test
+ >
+ # Clang
+ $<$<CXX_COMPILER_ID:Clang>:
+- -Wall -Wextra -Werror -pedantic -Wdeprecated
++ -Wall -Wextra -pedantic -Wdeprecated
+ -Wno-c++98-compat -Wno-c++98-compat-pedantic
+ -Wno-deprecated-declarations # for testing deprecated functions
+ >
+ $<$<CXX_COMPILER_ID:AppleClang>:
+- -Wall -Wextra -Werror -pedantic -Wdeprecated
++ -Wall -Wextra -pedantic -Wdeprecated
+ -Wno-deprecated-declarations # for testing deprecated functions
+ >
+ # IntelLLVM
+
diff --git a/dev-cpp/fkYAML/fkYAML-0.4.2_p20250522.ebuild b/dev-cpp/fkYAML/fkYAML-0.4.2_p20250522.ebuild
index 70fb0c2ba073..626cb8330b40 100644
--- a/dev-cpp/fkYAML/fkYAML-0.4.2_p20250522.ebuild
+++ b/dev-cpp/fkYAML/fkYAML-0.4.2_p20250522.ebuild
@@ -24,6 +24,7 @@ BDEPEND="
"
PATCHES=(
+ "${FILESDIR}/${PN}-0.4.2_p20250522-Strip-Werror.patch"
"${FILESDIR}/${PN}-0.4.2_p20250522-Use-system-Catch2.patch"
)
diff --git a/dev-cpp/fkYAML/metadata.xml b/dev-cpp/fkYAML/metadata.xml
index 14889d9bf84d..56a2d868ab82 100644
--- a/dev-cpp/fkYAML/metadata.xml
+++ b/dev-cpp/fkYAML/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<bugs-to>https://github.com/fktn-k/fkYAML</bugs-to>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/folly/metadata.xml b/dev-cpp/folly/metadata.xml
index 707b15fcd8f5..833b2dd36ebb 100644
--- a/dev-cpp/folly/metadata.xml
+++ b/dev-cpp/folly/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:facebook:folly</remote-id>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/frugally-deep/frugally-deep-0.15.30.ebuild b/dev-cpp/frugally-deep/frugally-deep-0.15.30.ebuild
index 10423b3cb2a8..e173746a9533 100644
--- a/dev-cpp/frugally-deep/frugally-deep-0.15.30.ebuild
+++ b/dev-cpp/frugally-deep/frugally-deep-0.15.30.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -15,7 +15,7 @@ KEYWORDS="~amd64"
DEPEND="
dev-cpp/functional-plus
- dev-cpp/eigen
+ dev-cpp/eigen:=
dev-cpp/nlohmann_json
"
diff --git a/dev-cpp/frugally-deep/metadata.xml b/dev-cpp/frugally-deep/metadata.xml
index 5d4da29dbb36..e2f5e3136333 100644
--- a/dev-cpp/frugally-deep/metadata.xml
+++ b/dev-cpp/frugally-deep/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<bugs-to>https://github.com/Dobiasd/frugally-deep/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/functional-plus/metadata.xml b/dev-cpp/functional-plus/metadata.xml
index 1ee36a10aa6c..ac2786389c44 100644
--- a/dev-cpp/functional-plus/metadata.xml
+++ b/dev-cpp/functional-plus/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<bugs-to>https://github.com/Dobiasd/FunctionalPlus/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gflags/metadata.xml b/dev-cpp/gflags/metadata.xml
index 72c099e5e5dc..74d1e6aa6d21 100644
--- a/dev-cpp/gflags/metadata.xml
+++ b/dev-cpp/gflags/metadata.xml
@@ -5,5 +5,5 @@
<email>amynka@gentoo.org</email>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/glaze/glaze-5.2.1.ebuild b/dev-cpp/glaze/glaze-5.2.1.ebuild
index 7a38952ed260..0c21e07e7a82 100644
--- a/dev-cpp/glaze/glaze-5.2.1.ebuild
+++ b/dev-cpp/glaze/glaze-5.2.1.ebuild
@@ -20,7 +20,7 @@ RESTRICT="!test? ( test )"
DEPEND="
test? (
dev-cpp/asio
- >=dev-cpp/eigen-3.4
+ >=dev-cpp/eigen-3.4:=
dev-cpp/ut2-glaze
)
"
diff --git a/dev-cpp/glaze/glaze-5.5.4.ebuild b/dev-cpp/glaze/glaze-5.5.4.ebuild
index 7a38952ed260..0c21e07e7a82 100644
--- a/dev-cpp/glaze/glaze-5.5.4.ebuild
+++ b/dev-cpp/glaze/glaze-5.5.4.ebuild
@@ -20,7 +20,7 @@ RESTRICT="!test? ( test )"
DEPEND="
test? (
dev-cpp/asio
- >=dev-cpp/eigen-3.4
+ >=dev-cpp/eigen-3.4:=
dev-cpp/ut2-glaze
)
"
diff --git a/dev-cpp/glaze/glaze-6.5.1.ebuild b/dev-cpp/glaze/glaze-6.5.1.ebuild
index bf3255dce0da..fad3d3ad432c 100644
--- a/dev-cpp/glaze/glaze-6.5.1.ebuild
+++ b/dev-cpp/glaze/glaze-6.5.1.ebuild
@@ -20,7 +20,7 @@ RESTRICT="!test? ( test )"
DEPEND="
test? (
dev-cpp/asio
- >=dev-cpp/eigen-3.4
+ >=dev-cpp/eigen-3.4:=
dev-cpp/ut2-glaze
)
"
diff --git a/dev-cpp/glaze/metadata.xml b/dev-cpp/glaze/metadata.xml
index f52819722720..eab6127d94e5 100644
--- a/dev-cpp/glaze/metadata.xml
+++ b/dev-cpp/glaze/metadata.xml
@@ -21,5 +21,5 @@
<flag name="fuzzing">Build fuzzers (not install)</flag>
<flag name="examples">Build examples (not install)</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/glibmm/Manifest b/dev-cpp/glibmm/Manifest
index c4e3824d74dd..22ec80bf5313 100644
--- a/dev-cpp/glibmm/Manifest
+++ b/dev-cpp/glibmm/Manifest
@@ -1,2 +1,3 @@
DIST glibmm-2.66.8.tar.xz 8597344 BLAKE2B 43ce7739259b928ed71946b3de8090aab9c4c900d8233dbe16cef2a1ff9b9521f304b50bf4a57c9398aaa8deed882600814551404991d1cdd09b3c45bb461cc7 SHA512 4ebf203324d3ee95c47012915efb39d4dc59eb7a6f337e7b8c7c0b3589574b07967974363931b0d4159618f88178b04715b2c359c3dc3f67a7781bfac0d9f277
DIST glibmm-2.84.0.tar.xz 9596876 BLAKE2B efbf89adaed0d673bc6391f44205cdbfa5400c4137a199cb69bb7580b81ae0e2d2304906b0b15409c68b369929d44fb2b9134d23638d7244a69f92ccfc7a8402 SHA512 dbe7d7b39ccf4a4acb0a67a0eab1a4b5f47dff3c0ae645aa2eaca498b646ee2da0f6f8ef81b3253621119d94bcdc3b1d4dcbf234eedfbd20aaa065c430e67daf
+DIST glibmm-2.88.0.tar.xz 9523144 BLAKE2B 614ef69c23345b4080656e55c24cb4781682d6a5cbb05377022921fac533509c7187590080ce2c1819f57d364bc6d9528e2aa2c62cdd71741b91f592a7da6825 SHA512 550c9087ead950de3d7de2eac29ea7cab23c70ce1a0081c162df0369765d547d754dc296a0f06ab494df01f43f7bab29dfb88b6d2fdf920eebc3aef896dff1f0
diff --git a/dev-cpp/glibmm/glibmm-2.66.8.ebuild b/dev-cpp/glibmm/glibmm-2.66.8.ebuild
index 3bf8e4d79af9..6d8e925342af 100644
--- a/dev-cpp/glibmm/glibmm-2.66.8.ebuild
+++ b/dev-cpp/glibmm/glibmm-2.66.8.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for glib2"
diff --git a/dev-cpp/glibmm/glibmm-2.84.0.ebuild b/dev-cpp/glibmm/glibmm-2.84.0.ebuild
index 76ee4fedf1d3..04313c193e9a 100644
--- a/dev-cpp/glibmm/glibmm-2.84.0.ebuild
+++ b/dev-cpp/glibmm/glibmm-2.84.0.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for glib2"
diff --git a/dev-cpp/glibmm/glibmm-2.88.0.ebuild b/dev-cpp/glibmm/glibmm-2.88.0.ebuild
new file mode 100644
index 000000000000..7d912b366079
--- /dev/null
+++ b/dev-cpp/glibmm/glibmm-2.88.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{11..14} )
+inherit gnome.org meson-multilib python-any-r1
+
+DESCRIPTION="C++ interface for glib2"
+HOMEPAGE="https://gnome.pages.gitlab.gnome.org/glibmm/"
+
+LICENSE="LGPL-2.1+"
+SLOT="2.68"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="gtk-doc debug test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/glib-2.87.3:2[${MULTILIB_USEDEP}]
+ dev-libs/libsigc++:3[gtk-doc?,${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${PYTHON_DEPS}
+ virtual/pkgconfig
+ gtk-doc? (
+ app-text/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 gtk-doc build-documentation)
+ $(meson_use debug debug-refcounting)
+ -Dbuild-examples=false
+ )
+ meson_src_configure
+}
diff --git a/dev-cpp/glibmm/metadata.xml b/dev-cpp/glibmm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/glibmm/metadata.xml
+++ b/dev-cpp/glibmm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/glog/metadata.xml b/dev-cpp/glog/metadata.xml
index dbb5dc114820..0bead73b19e9 100644
--- a/dev-cpp/glog/metadata.xml
+++ b/dev-cpp/glog/metadata.xml
@@ -10,5 +10,5 @@
<flag name="gflags">Use <pkg>dev-cpp/gflags</pkg> for flag parsing</flag>
<flag name="libunwind">Use libunwind library (<pkg>sys-libs/libunwind</pkg> or <pkg>llvm-runtimes/libunwind</pkg>) instead of built-in fallback implementation for stack unwinding</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gpgmepp/Manifest b/dev-cpp/gpgmepp/Manifest
index d5b8efdef3d0..8813f4ea5266 100644
--- a/dev-cpp/gpgmepp/Manifest
+++ b/dev-cpp/gpgmepp/Manifest
@@ -1,2 +1,4 @@
DIST gpgmepp-2.0.0.tar.xz 118304 BLAKE2B bc1df6462b8ceda69ed662bc533dcc0223230873bbf10ef51d009740bf63a5754e0c06fd29c3a74cdecdf565f54d29e3cdaa6e1148e566efacd5d1eb5d183a1f SHA512 ed98f5dfd45efa216d0fc983ad650b46235b28a8e4faaf4349bc8e14cf76758e3099cfdc61e549f07e57d663e82550f373641f67303c5f2891b00fa5b419e927
DIST gpgmepp-2.0.0.tar.xz.sig 119 BLAKE2B 553d942c999c4b3d8ee0b519d8e64534becaf4c685b1842f1cbab7f8e33460ab82a2955fe2257bb60e5b1ef524542771cb10c6d17a5e2ef57979602a0d0b280e SHA512 b3d051b1187a4a605c0ac702380f8dba57870bac249ffdf773f07c6b25ac525c90b022635efecb69720dcdabab6760b25a8838d4ebe07ee75d4fadc990ccdddf
+DIST gpgmepp-2.1.0.tar.xz 123124 BLAKE2B f13bb5f711b2379ba7f94fea0b9cb326900acc46cca73f733bbeae509c47a2f75af645c4ab1601e067221e96d86216e0935cd12176038407b6bb4aa62e3c9fad SHA512 fc1192ea5e7817cd717294c729f624800333b69c6474801ad2e55f3d7d20dfb6c39c3a991fc2ae94b7eaa217cd4243a1e49461d5d0203cd17b9b620e4a1914c0
+DIST gpgmepp-2.1.0.tar.xz.sig 147 BLAKE2B 968226c41733621b88f2c990033ab2bd5fcc467947acebcfc7dfccf6f19f203cd1b21bc84c66e8ea6d50cb0a8067fb98e4f2b0d78317fd0a70a27e8083e7056b SHA512 7cfd54eb645f9e4e9ff13917070d0f5d93e8b8db27ffe0238cf94a0c7dda50b14abb7fbe6ae67e1e0dd56210a5c29c0ba2f11289e020473ee136027368641528
diff --git a/dev-cpp/gpgmepp/gpgmepp-2.1.0.ebuild b/dev-cpp/gpgmepp/gpgmepp-2.1.0.ebuild
new file mode 100644
index 000000000000..08efcaf8eedd
--- /dev/null
+++ b/dev-cpp/gpgmepp/gpgmepp-2.1.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc
+inherit cmake verify-sig
+
+DESCRIPTION="GnuPG Made Easy is a library for making GnuPG easier to use (C++ bindings)"
+HOMEPAGE="https://www.gnupg.org/related_software/gpgme"
+SRC_URI="
+ mirror://gnupg/${PN}/${P}.tar.xz
+ verify-sig? ( mirror://gnupg/${PN}/${P}.tar.xz.sig )
+"
+
+LICENSE="LGPL-2+ test? ( GPL-2 GPL-2+ LGPL-2.1+ )"
+SLOT="0/7"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=app-crypt/gpgme-${PV%.*}:=
+ >=dev-libs/libgpg-error-1.47:=
+"
+RDEPEND="${DEPEND}
+ !<app-crypt/gpgme-2[cxx(-)]
+ !dev-cpp/gpgmepp:1
+"
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gnupg )"
+
+src_configure() {
+ local mycmakeargs=(
+ # As of 2.0.0, there aren't any non-manual tests. tests/README
+ # says that the real testing is done via dev-libs/qgpgme instead.
+ -DBUILD_TESTING=$(usex test)
+ )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/gpgmepp/metadata.xml b/dev-cpp/gpgmepp/metadata.xml
index 8e20998bf65e..74d824cbfbd2 100644
--- a/dev-cpp/gpgmepp/metadata.xml
+++ b/dev-cpp/gpgmepp/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Base System</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gsl-lite/Manifest b/dev-cpp/gsl-lite/Manifest
index df22a067bab9..b62670ffe95f 100644
--- a/dev-cpp/gsl-lite/Manifest
+++ b/dev-cpp/gsl-lite/Manifest
@@ -1 +1 @@
-DIST gsl-lite-0.38.0.tar.gz 120838 BLAKE2B 8ead324b357480e34a4c867bde5e81424128d75e81e229f61079423f8f383d0d746961c085830db02fc5892eca94ac4b407613674da30ba106c620c148a7a41b SHA512 7f73c600800ce375e231e0904c569f0d3beb8ce2790c1f66208d1c5097bed0abd1e82e72cf0051f0bbb09a4e5939d6637b09b8978d91859fc039a42adccdde36
+DIST gsl-lite-1.1.0.tar.gz 168786 BLAKE2B 3dc212e913f789459889a4e6807b60214249f126cd2ed8117032071deff7ecb1e35269fe3cedcfd71a780c363993cdf8b33114224ba8b71097906fbc71393460 SHA512 9da9b3b29703117e835170f902eace691a31d02d0477eae0026de36d56ffc188e32f3ea769865e3cd501e2880fd0380d9e1f46c7561d94c9f57f8b61d377f4bb
diff --git a/dev-cpp/gsl-lite/gsl-lite-0.38.0-r1.ebuild b/dev-cpp/gsl-lite/gsl-lite-1.1.0.ebuild
index 03aed36e5c5a..03aed36e5c5a 100644
--- a/dev-cpp/gsl-lite/gsl-lite-0.38.0-r1.ebuild
+++ b/dev-cpp/gsl-lite/gsl-lite-1.1.0.ebuild
diff --git a/dev-cpp/gsl-lite/metadata.xml b/dev-cpp/gsl-lite/metadata.xml
index 317a9cabfab9..581cdf18758a 100644
--- a/dev-cpp/gsl-lite/metadata.xml
+++ b/dev-cpp/gsl-lite/metadata.xml
@@ -6,5 +6,5 @@
<name>brian gloyer</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gstreamermm/metadata.xml b/dev-cpp/gstreamermm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/gstreamermm/metadata.xml
+++ b/dev-cpp/gstreamermm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gtest/gtest-1.14.0-r2.ebuild b/dev-cpp/gtest/gtest-1.14.0-r2.ebuild
index 7cd3ff7e4c83..30adeb65db29 100644
--- a/dev-cpp/gtest/gtest-1.14.0-r2.ebuild
+++ b/dev-cpp/gtest/gtest-1.14.0-r2.ebuild
@@ -4,7 +4,7 @@
EAPI=8
# Python is required for tests and some build tasks.
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit cmake-multilib flag-o-matic python-any-r1 toolchain-funcs
diff --git a/dev-cpp/gtest/metadata.xml b/dev-cpp/gtest/metadata.xml
index cb218561bd5c..3ef79fa4a1e8 100644
--- a/dev-cpp/gtest/metadata.xml
+++ b/dev-cpp/gtest/metadata.xml
@@ -17,5 +17,5 @@
Build with functionality provided by <pkg>dev-cpp/abseil-cpp</pkg> and <pkg>dev-libs/re2</pkg>
</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gtkmm/gtkmm-3.24.10.ebuild b/dev-cpp/gtkmm/gtkmm-3.24.10.ebuild
index f70329030edd..8cf60b1573a2 100644
--- a/dev-cpp/gtkmm/gtkmm-3.24.10.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-3.24.10.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/gtkmm-3.24.9.ebuild b/dev-cpp/gtkmm/gtkmm-3.24.9.ebuild
index f70329030edd..7453dd53493a 100644
--- a/dev-cpp/gtkmm/gtkmm-3.24.9.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-3.24.9.ebuild
@@ -2,7 +2,7 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit gnome.org meson-multilib python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/gtkmm-4.14.0-r1.ebuild b/dev-cpp/gtkmm/gtkmm-4.14.0-r1.ebuild
index 4971e9f49afe..e95b8148ebba 100644
--- a/dev-cpp/gtkmm/gtkmm-4.14.0-r1.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-4.14.0-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit gnome.org meson python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild b/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild
index 6d1c47cb9a99..d7ca3fda51e8 100644
--- a/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..13} )
inherit gnome.org meson python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild b/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild
index 80815ba5bdbe..5e260f620bed 100644
--- a/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson python-any-r1 virtualx
DESCRIPTION="C++ interface for GTK+"
diff --git a/dev-cpp/gtkmm/metadata.xml b/dev-cpp/gtkmm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/gtkmm/metadata.xml
+++ b/dev-cpp/gtkmm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gtksourceviewmm/metadata.xml b/dev-cpp/gtksourceviewmm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/gtksourceviewmm/metadata.xml
+++ b/dev-cpp/gtksourceviewmm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/gulrak-filesystem/metadata.xml b/dev-cpp/gulrak-filesystem/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/gulrak-filesystem/metadata.xml
+++ b/dev-cpp/gulrak-filesystem/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/highway/metadata.xml b/dev-cpp/highway/metadata.xml
index cdf30bbd3280..e8397367573e 100644
--- a/dev-cpp/highway/metadata.xml
+++ b/dev-cpp/highway/metadata.xml
@@ -14,5 +14,5 @@
i.e. applying the same operation to multiple 'lanes' using a single CPU instruction.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/htmlcxx/metadata.xml b/dev-cpp/htmlcxx/metadata.xml
index 6ad3061728be..d5d567acc3eb 100644
--- a/dev-cpp/htmlcxx/metadata.xml
+++ b/dev-cpp/htmlcxx/metadata.xml
@@ -6,5 +6,5 @@
<name>James Le Cuirot</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/indicators/metadata.xml b/dev-cpp/indicators/metadata.xml
index b6c53bfb8cd2..494f5acb050c 100644
--- a/dev-cpp/indicators/metadata.xml
+++ b/dev-cpp/indicators/metadata.xml
@@ -4,5 +4,5 @@
<upstream>
<bugs-to>https://github.com/p-ranav/indicators/issues</bugs-to>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/json11/metadata.xml b/dev-cpp/json11/metadata.xml
index 1c5a9d8dd3ed..a9c87fde5efe 100644
--- a/dev-cpp/json11/metadata.xml
+++ b/dev-cpp/json11/metadata.xml
@@ -6,5 +6,5 @@
<name>Florian Schmaus</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/jsoncons/metadata.xml b/dev-cpp/jsoncons/metadata.xml
index 1c3d09e313ad..b2414dcbd928 100644
--- a/dev-cpp/jsoncons/metadata.xml
+++ b/dev-cpp/jsoncons/metadata.xml
@@ -13,5 +13,5 @@
<bugs-to>https://github.com/danielaparker/jsoncons/issues</bugs-to>
<doc>https://danielaparker.github.io/jsoncons/</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/jwt-cpp/jwt-cpp-0.7.2-r1.ebuild b/dev-cpp/jwt-cpp/jwt-cpp-0.7.2-r1.ebuild
new file mode 100644
index 000000000000..a37db77e508c
--- /dev/null
+++ b/dev-cpp/jwt-cpp/jwt-cpp-0.7.2-r1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="header only library for creating and validating JSON Web Tokens in C++11"
+HOMEPAGE="https://thalhammer.github.io/jwt-cpp/"
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Thalhammer/jwt-cpp.git"
+else
+ SRC_URI="https://github.com/Thalhammer/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+SRC_URI="
+ ${SRC_URI}
+ https://raw.githubusercontent.com/jothepro/doxygen-awesome-css/v2.2.1/doxygen-awesome.css
+ https://raw.githubusercontent.com/jothepro/doxygen-awesome-css/v2.2.1/doxygen-awesome-sidebar-only.css
+"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="doc +jsoncons +picojson test"
+
+# reflectcpp-json would also be supported, but dev-cpp/reflect-cpp not packaged yet
+# dev-cpp/glaze not in ~x86
+DEPEND="
+ dev-cpp/nlohmann_json
+ dev-libs/boost
+ dev-libs/jsoncpp
+ dev-libs/openssl
+ jsoncons? ( dev-cpp/jsoncons )
+ picojson? ( dev-cpp/picojson )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ doc? ( app-text/doxygen[dot] )
+ test? ( dev-cpp/gtest )
+"
+REQUIRED_USE="test? ( jsoncons picojson )"
+RESTRICT="
+ !jsoncons? ( test )
+ !picojson? ( test )
+ !test? ( test )
+"
+DOCS=( README.md docs/{faqs,ssl,traits}.md )
+
+src_prepare() {
+ # Unbundle dev-cpp/nlohmann_json.
+ rm -vrf include/nhlomann || die
+ # Unbundle dev-cpp/picojson and fix include paths.
+ # See also: https://github.com/Thalhammer/jwt-cpp/issues/213
+ rm -vrf include/picojson || die
+ find -name '*.h' -type f -print0 | xargs -0 sed -r -e "s:picojson/picojson\.h:picojson.h:g" -i || die
+ # Prevent installation of bundled dev-cpp/picojson.
+ sed -i -e 's:^\s*install.*picojson/picojson\.h.*$::' CMakeLists.txt || die
+ cp "${DISTDIR}"/doxygen-awesome{,-sidebar-only}.css docs/ || die
+ # Restore compat with dev-cpp/jsoncons >=1.5.0
+ # see https://github.com/Thalhammer/jwt-cpp/issues/427
+ use jsoncons && (sed -i 's#.*JSONCONS_NO_DEPRECATED##' \
+ include/jwt-cpp/traits/danielaparker-jsoncons/traits.h || die)
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DJWT_EXTERNAL_NLOHMANN_JSON=YES
+ -DJWT_DISABLE_PICOJSON="$(usex !picojson)"
+ -DJWT_BUILD_DOCS="$(usex doc)"
+ # Not useful for now, asks for non-existent CMake module.
+ #-DJWT_EXTERNAL_PICOJSON="$(usex picojson)"
+ # Examples are not installed and for development only.
+ -DJWT_BUILD_EXAMPLES=NO
+ -DJWT_BUILD_TESTS="$(usex test)"
+ -DJWT_CMAKE_FILES_INSTALL_DIR="${EPREFIX}"/usr/share/cmake
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use doc && cmake_src_compile jwt-docs
+}
+
+src_test() {
+ "${BUILD_DIR}"/tests/jwt-cpp-test || die
+}
+
+src_install() {
+ cmake_src_install
+ use doc && local HTML_DOCS=(./build/html/.)
+ einstalldocs
+}
diff --git a/dev-cpp/jwt-cpp/metadata.xml b/dev-cpp/jwt-cpp/metadata.xml
index d9488b035eb5..4e2f27456d96 100644
--- a/dev-cpp/jwt-cpp/metadata.xml
+++ b/dev-cpp/jwt-cpp/metadata.xml
@@ -17,7 +17,8 @@
<bugs-to>https://github.com/Thalhammer/jwt-cpp/issues</bugs-to>
</upstream>
<use>
+ <flag name="jsoncons">Enable use of <pkg>dev-cpp/jsoncons</pkg></flag>
<flag name="picojson">Enable use of <pkg>dev-cpp/picojson</pkg></flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/kokkos/Manifest b/dev-cpp/kokkos/Manifest
index e297bb22da68..553a36ae68a0 100644
--- a/dev-cpp/kokkos/Manifest
+++ b/dev-cpp/kokkos/Manifest
@@ -1,4 +1,5 @@
-DIST kokkos-4.0.1.tar.gz 2322402 BLAKE2B a4aba2f7ffe7b7c93051ad65d398f442b753975eceb3f83ed1bff0b8c468e4ffdcb6437989e740c65fc550f17ef8ddf78ca50ca881d3953f886309dc7d6fc597 SHA512 cf6742f4be777b52673858b49cf68fdf335e760509688483e62ef41af5026070f69dcf39d010134c85dc6c4868f82a38900872be11ed43190432c8530b90deee
DIST kokkos-4.3.1.tar.gz 2431142 BLAKE2B 158ceea3c62449f386613b17e996e4d11e9b95c38a92f69fb3c487b90cf5f07dffdafb6ee0a37eff5299e7d1db50efaed4b26b9baebeeea9d675d0d98dd420e4 SHA512 8180ecdec2f0a6167a85dd1eb268996b0310e82098f2329eccf658aff90118a7c85c2f7607984602de2ca48dc45c1dbf30a4843b35c42590e58d4b03beff474a
DIST kokkos-4.6.2.tar.gz 2477557 BLAKE2B 3d8a93ca8e27bc0a3a5542680b0a2daf7ca862826a1a45973012f09a6f0a39938628efdb532bb2d013cb669b912785eac12bcf1b17712cb3e098106e858f3fe3 SHA512 bef5afc0009d6e3ac555dbaebc471fe0823ac1d1add79dcacbed82bee4d2a9a34cf4342fbef8fd00beefc6bd0a2f569e9f0cbe987ec60d087fde803479eff426
+DIST kokkos-4.7.4.tar.gz 2526399 BLAKE2B 9cd84be3fd606b05a0afd2a64f14f27f7f2a7397587aa12562a151d85e3541edb31e82d3562b7e4935116349cfc07e17a0e3f6c78327a5bfb47c2d569a98137a SHA512 34825f2d0f202f49fecc24050a4790cb721f3a4cca21381fd0eb0c302bbafe90f997dc96130c2b2479c4344d11dbb062d4b41f2aaab11e49f5bd1da2c9e5d929
DIST kokkos-5.0.2.tar.gz 1787648 BLAKE2B c951a2fdae309a61c1cdc042a12aa27636e58fd39a3ef4426bca9f659d6f8056774298e56ccc7c94d0b356319e3b913e9637dd0c3850313a77470dc8abe5e1c5 SHA512 d0c622aad2333cc5f944d82f633cf24201323d1b9787c730aaaee3e80805caf1c39bec36cabd5fd46d8104aaf95c68ffe478d8ff8cd4b864c47298f2aa929ecd
+DIST kokkos-5.1.1.tar.gz 1792643 BLAKE2B bea2355e39d3b29ab855d3b5f44180ada432a7043dbc92ee7b8b1a9925fec3733e524a676c010b263d53e050a0bb2e93b78703cd9b6d1496ff1cf01f1f2616a8 SHA512 7da365dc4be6ca6ed9efcd3b260a003e068ec274dc3af7761359f9f60748902908167698b824487951f21412a5a5bece7fbcb32ab558a406f7e8beb0e44c1698
diff --git a/dev-cpp/kokkos/kokkos-4.0.1-r1.ebuild b/dev-cpp/kokkos/kokkos-4.0.1-r1.ebuild
deleted file mode 100644
index a0af3b2e9bb1..000000000000
--- a/dev-cpp/kokkos/kokkos-4.0.1-r1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake toolchain-funcs
-
-DESCRIPTION="C++ Performance Portability Programming EcoSystem"
-HOMEPAGE="https://github.com/kokkos"
-MY_PV="$(ver_cut 1-2).0$(ver_cut 3)"
-SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/${PN}-${MY_PV}"
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-KEYWORDS="amd64 -x86"
-IUSE="+openmp test"
-RESTRICT="!test? ( test )"
-
-DEPEND="sys-apps/hwloc:="
-RDEPEND="${DEPEND}"
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_INSTALL_INCLUDEDIR=include/kokkos
- -DKokkos_ENABLE_TESTS=$(usex test)
- -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON
- -DKokkos_ENABLE_SERIAL=ON
- -DKokkos_ENABLE_HWLOC=ON
- -DKokkos_HWLOC_DIR="${EPREFIX}/usr"
- -DKokkos_ENABLE_OPENMP=$(usex openmp)
- -DBUILD_SHARED_LIBS=ON
- )
-
- 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/kokkos/kokkos-4.6.2-r1.ebuild b/dev-cpp/kokkos/kokkos-4.6.2-r1.ebuild
deleted file mode 100644
index ee6ccf7fff8b..000000000000
--- a/dev-cpp/kokkos/kokkos-4.6.2-r1.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake toolchain-funcs
-
-DESCRIPTION="C++ Performance Portability Programming EcoSystem"
-HOMEPAGE="https://github.com/kokkos"
-
-if [[ ${PV} = *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/kokkos/kokkos.git"
-else
- MY_PV="$(ver_cut 1-2).0$(ver_cut 3)"
- SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz"
- S="${WORKDIR}/${PN}-${MY_PV}"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="BSD"
-SLOT="0/${PV}"
-IUSE="+openmp test"
-RESTRICT="!test? ( test )"
-
-DEPEND="sys-apps/hwloc:="
-RDEPEND="${DEPEND}"
-
-pkg_pretend() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-pkg_setup() {
- [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
-}
-
-src_configure() {
- local mycmakeargs=(
- -DCMAKE_INSTALL_INCLUDEDIR=include/kokkos
- -DKokkos_ENABLE_TESTS=$(usex test)
- -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON
- -DKokkos_ENABLE_SERIAL=ON
- -DKokkos_ENABLE_HWLOC=ON
- -DKokkos_HWLOC_DIR="${EPREFIX}/usr"
- -DKokkos_ENABLE_OPENMP=$(usex openmp)
- -DBUILD_SHARED_LIBS=ON
- )
-
- 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/kokkos/kokkos-4.7.4.ebuild b/dev-cpp/kokkos/kokkos-4.7.4.ebuild
new file mode 100644
index 000000000000..54f9147dab3f
--- /dev/null
+++ b/dev-cpp/kokkos/kokkos-4.7.4.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake cuda toolchain-funcs
+
+DESCRIPTION="C++ Performance Portability Programming EcoSystem"
+HOMEPAGE="https://github.com/kokkos"
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/kokkos/kokkos.git"
+else
+ MY_PV="$(ver_cut 1-2).0$(ver_cut 3)"
+ SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/${PN}-${MY_PV}"
+ KEYWORDS="amd64 ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="cuda +openmp test"
+RESTRICT="!test? ( test )"
+
+DEPEND="sys-apps/hwloc:="
+RDEPEND="${DEPEND}"
+
+#
+# Try to translate the "${CUDAARCHS}" number coming from __nvcc_device_query
+# into an option string that Kokkos' CMake configuration understands:
+#
+kokkos_arch_option() {
+ case "${1}" in
+ 3[0257]) echo "-DKokkos_ARCH_KEPLER${1}=ON" ;;
+ 5[023]) echo "-DKokkos_ARCH_MAXWELL${1}=ON" ;;
+ 6[01]) echo "-DKokkos_ARCH_PASCAL${1}=ON" ;;
+ 7[02]) echo "-DKokkos_ARCH_VOLTA${1}=ON" ;;
+ 75) echo "-DKokkos_ARCH_TURING${1}=ON" ;;
+ 8[06]) echo "-DKokkos_ARCH_AMPERE${1}=ON" ;;
+ 89) echo "-DKokkos_ARCH_ADA${1}=ON" ;;
+ 90) echo "-DKokkos_ARCH_HOPPER${1}=ON" ;;
+ 1[02]0) echo "-DKokkos_ARCH_BLACKWELL${1}=ON" ;;
+ *) die "Unknown CUDA architecture »${1}«" ;;
+ esac
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_INCLUDEDIR=include/kokkos
+ -DKokkos_ENABLE_TESTS="$(usex test)"
+ -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON
+ -DKokkos_ENABLE_SERIAL=ON
+ -DKokkos_ENABLE_HWLOC=ON
+ -DKokkos_ENABLE_CUDA="$(usex cuda)"
+ -DKokkos_ENABLE_CUDA_CONSTEXPR="$(usex cuda)"
+ -DKokkos_HWLOC_DIR="${EPREFIX}/usr"
+ -DKokkos_ENABLE_OPENMP="$(usex openmp)"
+ -DBUILD_SHARED_LIBS=ON
+ )
+
+ if use cuda; then
+ cuda_add_sandbox -w
+
+ if [[ ! -n "${CUDAARCHS}" ]]; then
+ if ! SANDBOX_WRITE=/dev/nvidiactl test -w /dev/nvidiactl ; then
+ eerror
+ eerror "Can not access the GPU at /dev/nvidiactl."
+ eerror "User $(id -nu) is not in the group \"video\"."
+ eerror
+ ewarn
+ ewarn "Can not query the native device. You will need to set one of the"
+ ewarn "supported Kokkos_ARCH_{..} CMake variables, or the CUDAARCHS"
+ ewarn "environment variable to the appropriate architecture by hand..."
+ ewarn
+ else
+ local CUDAARCHS
+ CUDAARCHS="$(__nvcc_device_query || eerror "failed to query the native device")"
+ fi
+ fi
+
+ if [[ -n "${CUDAARCHS}" ]]; then
+ einfo "Building with CUDAARCHS=${CUDAARCHS}"
+ mycmakeargs+=(
+ $(kokkos_arch_option "${CUDAARCHS}")
+ )
+ fi
+ fi
+
+ 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/kokkos/kokkos-5.1.1.ebuild b/dev-cpp/kokkos/kokkos-5.1.1.ebuild
new file mode 100644
index 000000000000..3879a12dbe94
--- /dev/null
+++ b/dev-cpp/kokkos/kokkos-5.1.1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake cuda toolchain-funcs
+
+DESCRIPTION="C++ Performance Portability Programming EcoSystem"
+HOMEPAGE="https://github.com/kokkos"
+
+if [[ ${PV} = *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/kokkos/kokkos.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0/${PV}"
+IUSE="cuda +openmp test"
+RESTRICT="!test? ( test )"
+
+DEPEND="sys-apps/hwloc:="
+RDEPEND="${DEPEND}"
+
+#
+# Try to translate the "${CUDAARCHS}" number coming from __nvcc_device_query
+# into an option string that Kokkos' CMake configuration understands:
+#
+kokkos_arch_option() {
+ case "${1}" in
+ 3[0257]) echo "-DKokkos_ARCH_KEPLER${1}=ON" ;;
+ 5[023]) echo "-DKokkos_ARCH_MAXWELL${1}=ON" ;;
+ 6[01]) echo "-DKokkos_ARCH_PASCAL${1}=ON" ;;
+ 7[02]) echo "-DKokkos_ARCH_VOLTA${1}=ON" ;;
+ 75) echo "-DKokkos_ARCH_TURING${1}=ON" ;;
+ 8[06]) echo "-DKokkos_ARCH_AMPERE${1}=ON" ;;
+ 89) echo "-DKokkos_ARCH_ADA${1}=ON" ;;
+ 90) echo "-DKokkos_ARCH_HOPPER${1}=ON" ;;
+ 1[02]0) echo "-DKokkos_ARCH_BLACKWELL${1}=ON" ;;
+ *) die "Unknown CUDA architecture »${1}«" ;;
+ esac
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+src_prepare() {
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_INCLUDEDIR=include/kokkos
+ -DKokkos_ENABLE_TESTS="$(usex test)"
+ -DKokkos_ENABLE_AGGRESSIVE_VECTORIZATION=ON
+ -DKokkos_ENABLE_SERIAL=ON
+ -DKokkos_ENABLE_HWLOC=ON
+ -DKokkos_ENABLE_CUDA="$(usex cuda)"
+ -DKokkos_ENABLE_CUDA_CONSTEXPR="$(usex cuda)"
+ -DKokkos_HWLOC_DIR="${EPREFIX}/usr"
+ -DKokkos_ENABLE_OPENMP="$(usex openmp)"
+ -DBUILD_SHARED_LIBS=ON
+ )
+
+ if use cuda; then
+ cuda_add_sandbox -w
+
+ if [[ ! -n "${CUDAARCHS}" ]]; then
+ if ! SANDBOX_WRITE=/dev/nvidiactl test -w /dev/nvidiactl ; then
+ eerror
+ eerror "Can not access the GPU at /dev/nvidiactl."
+ eerror "User $(id -nu) is not in the group \"video\"."
+ eerror
+ ewarn
+ ewarn "Can not query the native device. You will need to set one of the"
+ ewarn "supported Kokkos_ARCH_{..} CMake variables, or the CUDAARCHS"
+ ewarn "environment variable to the appropriate architecture by hand..."
+ ewarn
+ else
+ local CUDAARCHS
+ CUDAARCHS="$(__nvcc_device_query || eerror "failed to query the native device")"
+ fi
+ fi
+
+ if [[ -n "${CUDAARCHS}" ]]; then
+ einfo "Building with CUDAARCHS=${CUDAARCHS}"
+ mycmakeargs+=(
+ $(kokkos_arch_option "${CUDAARCHS}")
+ )
+ fi
+ fi
+
+ 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/kokkos/metadata.xml b/dev-cpp/kokkos/metadata.xml
index a201f557fceb..83f4c1a6a64e 100644
--- a/dev-cpp/kokkos/metadata.xml
+++ b/dev-cpp/kokkos/metadata.xml
@@ -10,5 +10,5 @@
<name>Gentoo Science Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/libcmis/metadata.xml b/dev-cpp/libcmis/metadata.xml
index abd7cc6464dd..f9bff6fe4923 100644
--- a/dev-cpp/libcmis/metadata.xml
+++ b/dev-cpp/libcmis/metadata.xml
@@ -9,5 +9,5 @@
<use>
<flag name="tools">Build client tool for testing and viewing features</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/libjson-rpc-cpp/metadata.xml b/dev-cpp/libjson-rpc-cpp/metadata.xml
index 9a8ef34d074f..f8e68b18377a 100644
--- a/dev-cpp/libjson-rpc-cpp/metadata.xml
+++ b/dev-cpp/libjson-rpc-cpp/metadata.xml
@@ -13,5 +13,5 @@
<flag name="redis-server">Build support for Redis server using <pkg>dev-libs/hiredis</pkg></flag>
<flag name="stubgen">Build header stub code generator (needed for development and when pregenerated headers are not bundled)</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/libmcpp/metadata.xml b/dev-cpp/libmcpp/metadata.xml
index 09b0ed18f1f6..63dee7d9ce34 100644
--- a/dev-cpp/libmcpp/metadata.xml
+++ b/dev-cpp/libmcpp/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:mcpp_project:mcpp</remote-id>
</upstream>
- <origin>ports</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/libxmlpp/metadata.xml b/dev-cpp/libxmlpp/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/libxmlpp/metadata.xml
+++ b/dev-cpp/libxmlpp/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/lucene++/metadata.xml b/dev-cpp/lucene++/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/lucene++/metadata.xml
+++ b/dev-cpp/lucene++/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/magic_enum/metadata.xml b/dev-cpp/magic_enum/metadata.xml
index 1b8db8b4c1d6..61945f9d476d 100644
--- a/dev-cpp/magic_enum/metadata.xml
+++ b/dev-cpp/magic_enum/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Games Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/mm-common/metadata.xml b/dev-cpp/mm-common/metadata.xml
index bb30ccb425d2..fca0909ae632 100644
--- a/dev-cpp/mm-common/metadata.xml
+++ b/dev-cpp/mm-common/metadata.xml
@@ -6,6 +6,6 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
<stabilize-allarches/>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/mm-common/mm-common-1.0.6.ebuild b/dev-cpp/mm-common/mm-common-1.0.6.ebuild
index 8ce10e69625b..d1e3ead58e5c 100644
--- a/dev-cpp/mm-common/mm-common-1.0.6.ebuild
+++ b/dev-cpp/mm-common/mm-common-1.0.6.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit gnome.org python-any-r1 meson
DESCRIPTION="Build infrastructure and utilities for GNOME C++ bindings"
diff --git a/dev-cpp/mm-common/mm-common-1.0.7.ebuild b/dev-cpp/mm-common/mm-common-1.0.7.ebuild
index 8ce10e69625b..33b71b838105 100644
--- a/dev-cpp/mm-common/mm-common-1.0.7.ebuild
+++ b/dev-cpp/mm-common/mm-common-1.0.7.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org python-any-r1 meson
DESCRIPTION="Build infrastructure and utilities for GNOME C++ bindings"
diff --git a/dev-cpp/ms-gsl/metadata.xml b/dev-cpp/ms-gsl/metadata.xml
index 1a56032bc5b9..029750aca161 100644
--- a/dev-cpp/ms-gsl/metadata.xml
+++ b/dev-cpp/ms-gsl/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/msgpack-cxx/metadata.xml b/dev-cpp/msgpack-cxx/metadata.xml
index 43c87b8fc3c6..66afc2b564bc 100644
--- a/dev-cpp/msgpack-cxx/metadata.xml
+++ b/dev-cpp/msgpack-cxx/metadata.xml
@@ -9,5 +9,5 @@
<use>
<flag name="boost">Enable boost support</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/muParser/metadata.xml b/dev-cpp/muParser/metadata.xml
index 21c8260ba7e0..78c8c6d503a2 100644
--- a/dev-cpp/muParser/metadata.xml
+++ b/dev-cpp/muParser/metadata.xml
@@ -11,5 +11,5 @@
precalculating constant parts of it.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/mustache/metadata.xml b/dev-cpp/mustache/metadata.xml
index 736a1167c898..7a420b460d5e 100644
--- a/dev-cpp/mustache/metadata.xml
+++ b/dev-cpp/mustache/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/mvfst/metadata.xml b/dev-cpp/mvfst/metadata.xml
index 8a55334d67dc..37174a5d9749 100644
--- a/dev-cpp/mvfst/metadata.xml
+++ b/dev-cpp/mvfst/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/nlohmann_json/metadata.xml b/dev-cpp/nlohmann_json/metadata.xml
index 245678eb539e..44d3a69fb0c9 100644
--- a/dev-cpp/nlohmann_json/metadata.xml
+++ b/dev-cpp/nlohmann_json/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Video project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/notcurses/metadata.xml b/dev-cpp/notcurses/metadata.xml
index 3aee360d1c21..8834f42bd80f 100644
--- a/dev-cpp/notcurses/metadata.xml
+++ b/dev-cpp/notcurses/metadata.xml
@@ -20,5 +20,5 @@
Presenta una API similar a la de Curses y funciona sobre Terminfo.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/opentelemetry-cpp/metadata.xml b/dev-cpp/opentelemetry-cpp/metadata.xml
index 61de79ad9ee1..0d1a4a8ebbb6 100644
--- a/dev-cpp/opentelemetry-cpp/metadata.xml
+++ b/dev-cpp/opentelemetry-cpp/metadata.xml
@@ -14,5 +14,5 @@
<flag name="otlp">Build support for the OTLP (OpenTelemetry Protocol) File exporter</flag>
<flag name="prometheus">include the Prometheus Client in the SDK</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/pangomm/metadata.xml b/dev-cpp/pangomm/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/pangomm/metadata.xml
+++ b/dev-cpp/pangomm/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/pangomm/pangomm-2.46.4.ebuild b/dev-cpp/pangomm/pangomm-2.46.4.ebuild
index 43a601b9556c..0d414fc6deb5 100644
--- a/dev-cpp/pangomm/pangomm-2.46.4.ebuild
+++ b/dev-cpp/pangomm/pangomm-2.46.4.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for pango"
diff --git a/dev-cpp/pangomm/pangomm-2.50.2.ebuild b/dev-cpp/pangomm/pangomm-2.50.2.ebuild
index 70d3cd94a1f9..8faae9457e63 100644
--- a/dev-cpp/pangomm/pangomm-2.50.2.ebuild
+++ b/dev-cpp/pangomm/pangomm-2.50.2.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for pango"
diff --git a/dev-cpp/pangomm/pangomm-2.56.1.ebuild b/dev-cpp/pangomm/pangomm-2.56.1.ebuild
index 99b44931a266..95daa2a26409 100644
--- a/dev-cpp/pangomm/pangomm-2.56.1.ebuild
+++ b/dev-cpp/pangomm/pangomm-2.56.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit gnome.org meson-multilib python-any-r1
DESCRIPTION="C++ interface for pango"
diff --git a/dev-cpp/parallel-hashmap/metadata.xml b/dev-cpp/parallel-hashmap/metadata.xml
index 99a86615ce41..4ca36323f121 100644
--- a/dev-cpp/parallel-hashmap/metadata.xml
+++ b/dev-cpp/parallel-hashmap/metadata.xml
@@ -33,5 +33,5 @@ natvis visualization support in Visual Studio (hash map/set only)
<upstream>
<bugs-to>https://github.com/greg7mdp/parallel-hashmap/issues</bugs-to>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/pcg-cpp/metadata.xml b/dev-cpp/pcg-cpp/metadata.xml
index c7988496c374..507e3326b244 100644
--- a/dev-cpp/pcg-cpp/metadata.xml
+++ b/dev-cpp/pcg-cpp/metadata.xml
@@ -13,5 +13,5 @@
<bugs-to>https://github.com/imneme/pcg-cpp/issues</bugs-to>
<doc>https://www.pcg-random.org/using-pcg-cpp.html</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/picojson/metadata.xml b/dev-cpp/picojson/metadata.xml
index 1183760b76e5..0d1df55c9165 100644
--- a/dev-cpp/picojson/metadata.xml
+++ b/dev-cpp/picojson/metadata.xml
@@ -6,5 +6,5 @@
<name>Alexis Ballier</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/popl/metadata.xml b/dev-cpp/popl/metadata.xml
index d299cc2689c8..dd4e95eaf2bf 100644
--- a/dev-cpp/popl/metadata.xml
+++ b/dev-cpp/popl/metadata.xml
@@ -12,5 +12,5 @@
</maintainer>
<bugs-to>https://github.com/badaix/popl/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/prometheus-cpp/metadata.xml b/dev-cpp/prometheus-cpp/metadata.xml
index 9314a2c0b0e7..7400edf5d658 100644
--- a/dev-cpp/prometheus-cpp/metadata.xml
+++ b/dev-cpp/prometheus-cpp/metadata.xml
@@ -12,5 +12,5 @@
<bugs-to>https://github.com/jupp0r/prometheus-cpp/issues</bugs-to>
<doc lang="en">https://jupp0r.github.io/prometheus-cpp/</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/pystring/metadata.xml b/dev-cpp/pystring/metadata.xml
index cfe36608be3d..f57a347569fd 100644
--- a/dev-cpp/pystring/metadata.xml
+++ b/dev-cpp/pystring/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/qt-jdenticon/metadata.xml b/dev-cpp/qt-jdenticon/metadata.xml
index eea54cc6b50b..69ed90210747 100644
--- a/dev-cpp/qt-jdenticon/metadata.xml
+++ b/dev-cpp/qt-jdenticon/metadata.xml
@@ -10,5 +10,5 @@
reproducible computer generated avatars.
</longdescription>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/random123/metadata.xml b/dev-cpp/random123/metadata.xml
index 66ee50826efd..da4360c8272a 100644
--- a/dev-cpp/random123/metadata.xml
+++ b/dev-cpp/random123/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Science Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/range-v3/metadata.xml b/dev-cpp/range-v3/metadata.xml
index 707d47dee439..afc247b8f978 100644
--- a/dev-cpp/range-v3/metadata.xml
+++ b/dev-cpp/range-v3/metadata.xml
@@ -16,5 +16,5 @@
range-v3 ranges are an abstration layer on top of iterators.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/rapidcheck/metadata.xml b/dev-cpp/rapidcheck/metadata.xml
index b13584e837a7..56df824ad167 100644
--- a/dev-cpp/rapidcheck/metadata.xml
+++ b/dev-cpp/rapidcheck/metadata.xml
@@ -10,5 +10,5 @@
<name>Sergei Trofimovich</name>
</maintainer>
- <origin>ports</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/rapidfuzz-cpp/metadata.xml b/dev-cpp/rapidfuzz-cpp/metadata.xml
index 4207c6f887e3..d152e6f5a68c 100644
--- a/dev-cpp/rapidfuzz-cpp/metadata.xml
+++ b/dev-cpp/rapidfuzz-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>Michał Górny</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/rapidyaml/metadata.xml b/dev-cpp/rapidyaml/metadata.xml
index a3b44b016c9f..d7842f8f4f67 100644
--- a/dev-cpp/rapidyaml/metadata.xml
+++ b/dev-cpp/rapidyaml/metadata.xml
@@ -6,5 +6,5 @@
<name>Ionen Wolkens</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/reflection-cpp/metadata.xml b/dev-cpp/reflection-cpp/metadata.xml
index 97d84b677ff0..4787336d3f68 100644
--- a/dev-cpp/reflection-cpp/metadata.xml
+++ b/dev-cpp/reflection-cpp/metadata.xml
@@ -6,5 +6,5 @@
<name>David Roman</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/robin-map/metadata.xml b/dev-cpp/robin-map/metadata.xml
index 66ee50826efd..da4360c8272a 100644
--- a/dev-cpp/robin-map/metadata.xml
+++ b/dev-cpp/robin-map/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Science Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/robin-map/robin-map-1.4.1.ebuild b/dev-cpp/robin-map/robin-map-1.4.1.ebuild
index 0dd43e0f3ad9..8171bfc100bd 100644
--- a/dev-cpp/robin-map/robin-map-1.4.1.ebuild
+++ b/dev-cpp/robin-map/robin-map-1.4.1.ebuild
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]] ; then
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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~x86"
fi
LICENSE="MIT"
diff --git a/dev-cpp/robotraconteur-companion/Manifest b/dev-cpp/robotraconteur-companion/Manifest
index cdb3bed25c96..ec59029b86aa 100644
--- a/dev-cpp/robotraconteur-companion/Manifest
+++ b/dev-cpp/robotraconteur-companion/Manifest
@@ -1 +1,2 @@
DIST RobotRaconteurCompanion-0.4.2-Source.tar.gz 247805 BLAKE2B 83ebea93a9d52ba0310509c8bc74bd330776ca353319af0b7ef9eede12b41d60b1bf23d982fe901be613b6cfac293d8699ae6448b4ca4c39bb64b653ca36c3d7 SHA512 be4e25d7d8b8718afb24837d050e10d363a1a61c66bb82fe1526319877aa30ab1883e2982b011275476e3949d7e21191b2b515b328c5fb3c4373a6dff6abe2aa
+DIST RobotRaconteurCompanion-0.4.3-Source.tar.gz 242152 BLAKE2B c9fc1ad4c5af0e3f444c08f860064120dc9245e7b8bbdf422ad05ee91113f2c5e483eeac37ee3caa057b2873ebc962afa8021bca9bbc61a5d8afd2f7331d116a SHA512 7074c2479b755984cb02db1bedf7ab1997d2130b3ac12d9732a06dab2d3efc61ac1e8897d65daca1c8983a00e6b4f61cd89d3093627181a2a9dcb652ced547ae
diff --git a/dev-cpp/robotraconteur-companion/metadata.xml b/dev-cpp/robotraconteur-companion/metadata.xml
index fd6940b88f8b..59059b394931 100644
--- a/dev-cpp/robotraconteur-companion/metadata.xml
+++ b/dev-cpp/robotraconteur-companion/metadata.xml
@@ -12,5 +12,5 @@
<bugs-to>https://github.com/robotraconteur/robotraconteur_companion/issues</bugs-to>
<doc>http://robotraconteur.com</doc>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/robotraconteur-companion/robotraconteur-companion-0.4.3.ebuild b/dev-cpp/robotraconteur-companion/robotraconteur-companion-0.4.3.ebuild
new file mode 100644
index 000000000000..07482c031379
--- /dev/null
+++ b/dev-cpp/robotraconteur-companion/robotraconteur-companion-0.4.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Robot Raconteur C++ Companion Library"
+HOMEPAGE="https://github.com/robotraconteur/robotraconteur_companion"
+SRC_URI="https://github.com/robotraconteur/robotraconteur_companion/releases/download/v${PV}/RobotRaconteurCompanion-${PV}-Source.tar.gz"
+
+S="${WORKDIR}/RobotRaconteurCompanion-${PV}-Source"
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~arm64"
+
+DEPEND="dev-libs/boost:=
+ dev-libs/openssl
+ dev-cpp/yaml-cpp:=
+ dev-cpp/eigen
+ dev-cpp/robotraconteur
+"
+RDEPEND="${DEPEND}"
+
+src_configure() {
+local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DBUILD_TESTING=OFF
+ -DBUILD_DOCUMENTATION=OFF
+ -DROBOTRACONTEUR_COMPANION_SOVERSION_MAJOR_ONLY=ON
+ )
+ cmake_src_configure
+}
diff --git a/dev-cpp/robotraconteur/Manifest b/dev-cpp/robotraconteur/Manifest
index 989b83135870..fc3da18407fb 100644
--- a/dev-cpp/robotraconteur/Manifest
+++ b/dev-cpp/robotraconteur/Manifest
@@ -1 +1,2 @@
DIST RobotRaconteur-1.2.7-Source.tar.gz 11808734 BLAKE2B cef41066cb557131250d6817658792e4af1b7f5ce8c4ee279823f99232b2da7340a59eec9d37ca29a4763193f531e3a7d12599dff1fdf82745a5015d533bc997 SHA512 9d01d648c4d140206ec794d5c55e237078154ed3419013c8d071d75a664c659fb515482fb4d502a15373e1ae13afcdcf1c53b3458b81b2cc2f522986400ed231
+DIST RobotRaconteur-1.2.8-Source.tar.gz 11831136 BLAKE2B de9ecf9f5b432b9a64b19f7f64390f110a038a36b33b6c73dd822abd2f18e30eebada08111ca636c7fffdff929f8a5ed78a6015d46d43f75fc119560482053f7 SHA512 1a9ffe6bb0839523e63980b5140c3052772bb2d903c0c81a3e29f8346ea80507f5e2246a3474cd877d93cf3c9117830c9ef73b7bfe9ff78fbad4031e4a20ec27
diff --git a/dev-cpp/robotraconteur/metadata.xml b/dev-cpp/robotraconteur/metadata.xml
index a136c72e13d1..9c7b903af8f6 100644
--- a/dev-cpp/robotraconteur/metadata.xml
+++ b/dev-cpp/robotraconteur/metadata.xml
@@ -15,5 +15,5 @@
<use>
<flag name="python">Enable Python bindings</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/robotraconteur/robotraconteur-1.2.7.ebuild b/dev-cpp/robotraconteur/robotraconteur-1.2.7.ebuild
index 7f90ef625430..d2872e54bbd8 100644
--- a/dev-cpp/robotraconteur/robotraconteur-1.2.7.ebuild
+++ b/dev-cpp/robotraconteur/robotraconteur-1.2.7.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit cmake python-r1
diff --git a/dev-cpp/robotraconteur/robotraconteur-1.2.8.ebuild b/dev-cpp/robotraconteur/robotraconteur-1.2.8.ebuild
new file mode 100644
index 000000000000..d2872e54bbd8
--- /dev/null
+++ b/dev-cpp/robotraconteur/robotraconteur-1.2.8.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{12..14} )
+
+inherit cmake python-r1
+
+DESCRIPTION="Robot Raconteur C++ library with Python bindings"
+HOMEPAGE="https://github.com/robotraconteur/robotraconteur"
+SRC_URI="https://github.com/robotraconteur/robotraconteur/releases/download/v${PV}/RobotRaconteur-${PV}-Source.tar.gz"
+
+S="${WORKDIR}/RobotRaconteur-${PV}-Source"
+
+LICENSE="Apache-2.0"
+SLOT="1/${PV}"
+KEYWORDS="~amd64 ~arm64"
+IUSE="python"
+
+DEPEND="dev-libs/boost:=
+ dev-libs/openssl
+ dev-libs/libusb
+ sys-apps/dbus
+ net-wireless/bluez
+ python? ( dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/pip[${PYTHON_USEDEP}] )
+"
+RDEPEND="
+ ${DEPEND}
+ python? (
+ ${PYTHON_DEPS}
+ )
+"
+
+REQUIRED_USE="
+ python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+python_configure() {
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DBUILD_GEN=ON
+ -DBUILD_TESTING=OFF
+ -DBUILD_DOCUMENTATION=OFF
+ -DBUILD_PYTHON3=ON
+ -DINSTALL_PYTHON3_PIP=ON
+ -DINSTALL_PYTHON3_PIP_EXTRA_ARGS="--compile --use-pep517 --no-build-isolation --no-deps --root-user-action=ignore"
+ -DROBOTRACONTEURCORE_SOVERSION_MAJOR_ONLY=ON
+ )
+ cmake_src_configure
+}
+
+src_configure() {
+ if use python; then
+ python_foreach_impl python_configure
+ else
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DBUILD_GEN=ON
+ -DBUILD_TESTING=OFF
+ -DBUILD_DOCUMENTATION=OFF
+ -DROBOTRACONTEURCORE_SOVERSION_MAJOR_ONLY=ON
+ )
+ cmake_src_configure
+ fi
+}
+
+src_compile() {
+ if use python; then
+ python_foreach_impl cmake_src_compile
+ else
+ cmake_src_compile
+ fi
+}
+
+python_install(){
+ cmake_src_install
+ python_optimize "${D}$(python_get_sitedir)/RobotRaconteur" || die "Failed to optimize Python files"
+}
+
+src_install() {
+ if use python; then
+ python_foreach_impl python_install
+ else
+ cmake_src_install
+ fi
+}
diff --git a/dev-cpp/safeint/files/safeint-3.0.28a-strip-O3.patch b/dev-cpp/safeint/files/safeint-3.0.28a-strip-O3.patch
new file mode 100644
index 000000000000..610dac56b944
--- /dev/null
+++ b/dev-cpp/safeint/files/safeint-3.0.28a-strip-O3.patch
@@ -0,0 +1,28 @@
+From: Pavel Sobolev <contact@paveloom.dev>
+Subject: [PATCH] Strip `-O3`.
+
+Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
+
+--- a/Test/ClangTest/CMakeLists.txt
++++ b/Test/ClangTest/CMakeLists.txt
+@@ -26,7 +26,7 @@ else()
+ set(CMAKE_CXX_COMPILER ${CLANG_PLUS_PLUS})
+
+ # the standard level is already at C++11, which is what we need for runtime tests
+- add_compile_options(-O3 -ftrapv)
++ add_compile_options(-ftrapv)
+
+ # Note - the test matrix here is as follows:
+ # int128 is available (best case)
+--- a/Test/GccTest/CMakeLists.txt
++++ b/Test/GccTest/CMakeLists.txt
+@@ -31,7 +31,7 @@ else()
+ message(STATUS "g++ available, configuring g++ tests")
+ set(CMAKE_CXX_COMPILER ${GCC_PLUS_PLUS})
+ # the standard level is already at C++11, which is what we need for runtime tests
+- add_compile_options(-O3 -ftrapv)
++ add_compile_options(-ftrapv)
+
+ # Note - -fsanitize=undefined isn't currently working with g++ and cmake
+ # if you go build from the old makefile in Test/GccTest, it does work
+
diff --git a/dev-cpp/safeint/metadata.xml b/dev-cpp/safeint/metadata.xml
index 8282ea84a406..fadef070bf50 100644
--- a/dev-cpp/safeint/metadata.xml
+++ b/dev-cpp/safeint/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<bugs-to>https://github.com/dcleblanc/SafeInt/issues</bugs-to>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/safeint/safeint-3.0.28a.ebuild b/dev-cpp/safeint/safeint-3.0.28a.ebuild
index e260a6393e92..2f7f31d769ea 100644
--- a/dev-cpp/safeint/safeint-3.0.28a.ebuild
+++ b/dev-cpp/safeint/safeint-3.0.28a.ebuild
@@ -21,6 +21,7 @@ PATCHES=(
"${FILESDIR}/${PN}-3.0.28a-install-the-library.patch"
"${FILESDIR}/${PN}-3.0.28a-make-tests-optional.patch"
"${FILESDIR}/${PN}-3.0.28a-remove-broken-tests.patch"
+ "${FILESDIR}/${PN}-3.0.28a-strip-O3.patch"
)
src_configure() {
diff --git a/dev-cpp/scitokens-cpp/metadata.xml b/dev-cpp/scitokens-cpp/metadata.xml
index 043451253c2f..c2d3cb6b7aa3 100644
--- a/dev-cpp/scitokens-cpp/metadata.xml
+++ b/dev-cpp/scitokens-cpp/metadata.xml
@@ -21,5 +21,5 @@
want to delegate trust for an issuer for managing a storage allocation.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/scnlib/metadata.xml b/dev-cpp/scnlib/metadata.xml
index 736a1167c898..7a420b460d5e 100644
--- a/dev-cpp/scnlib/metadata.xml
+++ b/dev-cpp/scnlib/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/sdbus-c++/Manifest b/dev-cpp/sdbus-c++/Manifest
index 862990d00e8c..9f8fb85d545c 100644
--- a/dev-cpp/sdbus-c++/Manifest
+++ b/dev-cpp/sdbus-c++/Manifest
@@ -1 +1 @@
-DIST sdbus-c++-2.1.0.tar.gz 251656 BLAKE2B 47a8cc2a5416ca9d06134e5faf797b91ae3a8f18d103523cb727567f34df15018ce0f17c37e0a811cba82188c446cc21d59646fba8163002f5b3d3ee0edf3b8a SHA512 4247d49f0d5231e2768c0c96fa9c266bbcc340292c9c3d748f9c37ff992b82301faea798300f916e9a5c992d77adfe56186866c91a4c7d4157750ff09ba5a047
+DIST sdbus-c++-2.3.1.tar.gz 263568 BLAKE2B ae36590d5b3cfb3d1c26fbfb6ec69d6e517b31615ebae0c77e9e6b95864fe61fc102f94de670011aef025ba75cd609907d83d889b83e62f793dd1b161af5c841 SHA512 621618ad88a379788714fe5291c4db88a0d21fce92e7ca0d0e72d5a230d83f916a4ae89341a603542275a3700b264e769e111562a6468bd4b76e21495358bc2a
diff --git a/dev-cpp/sdbus-c++/metadata.xml b/dev-cpp/sdbus-c++/metadata.xml
index 352f03457598..fbe2163946a9 100644
--- a/dev-cpp/sdbus-c++/metadata.xml
+++ b/dev-cpp/sdbus-c++/metadata.xml
@@ -10,5 +10,5 @@
<flag name="systemd">Use external libsystemd instead of statically-linked build</flag>
<flag name="tools">Install interface stub code generator</flag>
</use>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/sdbus-c++/sdbus-c++-2.1.0.ebuild b/dev-cpp/sdbus-c++/sdbus-c++-2.3.1.ebuild
index a51e79b81e4b..824802974d39 100644
--- a/dev-cpp/sdbus-c++/sdbus-c++-2.1.0.ebuild
+++ b/dev-cpp/sdbus-c++/sdbus-c++-2.3.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-cpp/simdutf/metadata.xml b/dev-cpp/simdutf/metadata.xml
index f2710c9e5c09..c9b6b0b24a72 100644
--- a/dev-cpp/simdutf/metadata.xml
+++ b/dev-cpp/simdutf/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo GNOME Desktop</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/simdutf/simdutf-7.7.1.ebuild b/dev-cpp/simdutf/simdutf-7.7.1.ebuild
index f1095d566a5d..80afd8a0cb0b 100644
--- a/dev-cpp/simdutf/simdutf-7.7.1.ebuild
+++ b/dev-cpp/simdutf/simdutf-7.7.1.ebuild
@@ -6,7 +6,7 @@ EAPI=8
DOCS_BUILDER="doxygen"
DOCS_DIR=""
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake docs python-any-r1
diff --git a/dev-cpp/simdutf/simdutf-8.2.0.ebuild b/dev-cpp/simdutf/simdutf-8.2.0.ebuild
index 00e3010d9bde..257604b202db 100644
--- a/dev-cpp/simdutf/simdutf-8.2.0.ebuild
+++ b/dev-cpp/simdutf/simdutf-8.2.0.ebuild
@@ -6,7 +6,7 @@ EAPI=8
DOCS_BUILDER="doxygen"
DOCS_DIR=""
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake docs python-any-r1
diff --git a/dev-cpp/simdutf/simdutf-9.0.0.ebuild b/dev-cpp/simdutf/simdutf-9.0.0.ebuild
index 088797c390dd..226b366b5cc8 100644
--- a/dev-cpp/simdutf/simdutf-9.0.0.ebuild
+++ b/dev-cpp/simdutf/simdutf-9.0.0.ebuild
@@ -6,7 +6,7 @@ EAPI=8
DOCS_BUILDER="doxygen"
DOCS_DIR=""
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake docs python-any-r1
diff --git a/dev-cpp/simpleini/metadata.xml b/dev-cpp/simpleini/metadata.xml
index 1b8db8b4c1d6..61945f9d476d 100644
--- a/dev-cpp/simpleini/metadata.xml
+++ b/dev-cpp/simpleini/metadata.xml
@@ -6,5 +6,5 @@
<name>Gentoo Games Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/sol2/metadata.xml b/dev-cpp/sol2/metadata.xml
index aa58da196279..0033df6d211d 100644
--- a/dev-cpp/sol2/metadata.xml
+++ b/dev-cpp/sol2/metadata.xml
@@ -14,5 +14,5 @@
<name>Gentoo Games Project</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/sparsehash/metadata.xml b/dev-cpp/sparsehash/metadata.xml
index e0ede33ab617..12e475e1d0a2 100644
--- a/dev-cpp/sparsehash/metadata.xml
+++ b/dev-cpp/sparsehash/metadata.xml
@@ -6,5 +6,5 @@
<name>Jakov Smolić</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/sprout/metadata.xml b/dev-cpp/sprout/metadata.xml
index dfe34d5869d6..7694b28eee79 100644
--- a/dev-cpp/sprout/metadata.xml
+++ b/dev-cpp/sprout/metadata.xml
@@ -10,5 +10,5 @@
<flag name="texconv">Install texconv from subproject compost</flag>
<flag name="wavconv">Install texconv from subproject darkroom</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/string-theory/metadata.xml b/dev-cpp/string-theory/metadata.xml
index dd4edbe2a4ac..d6ee80448e5a 100644
--- a/dev-cpp/string-theory/metadata.xml
+++ b/dev-cpp/string-theory/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/taskflow/Manifest b/dev-cpp/taskflow/Manifest
index 9d31dd6f4899..843dc8a6fa27 100644
--- a/dev-cpp/taskflow/Manifest
+++ b/dev-cpp/taskflow/Manifest
@@ -2,3 +2,4 @@ DIST taskflow-3.10.0.tar.gz 55396434 BLAKE2B 8b2351de0ae898e4e42aec295723064ac21
DIST taskflow-3.11.0.tar.gz 63626565 BLAKE2B 824b115f7d91039788996845e4edee1567e3af0e29c46c5dc4373b16981d3c2dd2d4290e5d7dd6a771ef999f8a75921128e14d70e16022880a5c1facc0935d00 SHA512 ca56f07db18767483ef6c2371a0dd9675e4f848cce891fe0ade85ec38609c08ddac2152a227a511c65901ade27439a988cdf70ad6841489f2bdbf712cde97f44
DIST taskflow-3.6.0.tar.gz 66335249 BLAKE2B bcdc6d721e32b7c40f65ed5bd115d2c0083663e8b51c0e4460baa5f62e576382a45e8da735119b577d8a6ae7a64c72431654471a3b8335997fdf4f9191ad64af SHA512 1bf17b69cdb29b982fc74b9091f5b6c8fc4fd3004b26afe7e73e71569738e492cf8663b71d98cfbc4e240c08ceb8a99bf51cccce95254710722f89929a4bbea8
DIST taskflow-3.7.0.tar.gz 66383509 BLAKE2B 92a9d56f0101d507b7f924ce9038d6d43a5f39c9270582f910644ad281ea2cee3f8fa39f3ee4e748f90d013d57a3bc2f24842e328ab345bc580d1a9a5de4f308 SHA512 2faecc9eaf9e7f24253a5aedbb4ef6164ba8b5181b7f2c65d8646c21300f28278d7817e928eeab7e85ec2b9644508a8665bab1a7482ec85a7f6de18cecb32d6f
+DIST taskflow-4.0.0.tar.gz 63725755 BLAKE2B 96eca19196444288eeedb70d9837276e36abfbbf86e209a065713a0c7f0cac3dcefbc3fb0f5b733db8309e11dc21570c58ee3ebcc4f812c70c0ac901caca463d SHA512 01da8c002774bac0e1651e32ca9cb6041ab17b78b2301f399640e0888d86fcd65657db7942e77b8a561dcefc0f137f4d698fd491d00fa1670ff85608d0e7597d
diff --git a/dev-cpp/taskflow/metadata.xml b/dev-cpp/taskflow/metadata.xml
index 5cc3d99f4e0e..2ea68b564c3d 100644
--- a/dev-cpp/taskflow/metadata.xml
+++ b/dev-cpp/taskflow/metadata.xml
@@ -15,5 +15,5 @@
handling complex parallel workloads.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/taskflow/taskflow-4.0.0.ebuild b/dev-cpp/taskflow/taskflow-4.0.0.ebuild
new file mode 100644
index 000000000000..8fa1b9436602
--- /dev/null
+++ b/dev-cpp/taskflow/taskflow-4.0.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2026 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://taskflow.github.io"
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/taskflow/${PN}.git"
+ inherit git-r3
+ S="${WORKDIR}/taskflow-${PV}"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~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_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/tbb/metadata.xml b/dev-cpp/tbb/metadata.xml
index 8215cd682c0c..58e12b20d183 100644
--- a/dev-cpp/tbb/metadata.xml
+++ b/dev-cpp/tbb/metadata.xml
@@ -16,5 +16,5 @@
<bugs-to>https://github.com/uxlfoundation/oneTBB/issues</bugs-to>
<doc>https://github.com/uxlfoundation/oneTBB?tab=readme-ov-file#documentation</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/tclap/metadata.xml b/dev-cpp/tclap/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/tclap/metadata.xml
+++ b/dev-cpp/tclap/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/termcolor/metadata.xml b/dev-cpp/termcolor/metadata.xml
index 7005c32b12c1..fc27a371aff2 100644
--- a/dev-cpp/termcolor/metadata.xml
+++ b/dev-cpp/termcolor/metadata.xml
@@ -6,5 +6,5 @@
<name>Sam James</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/tinygltf/metadata.xml b/dev-cpp/tinygltf/metadata.xml
index b88102874f2e..9d1f2bd9c1d0 100644
--- a/dev-cpp/tinygltf/metadata.xml
+++ b/dev-cpp/tinygltf/metadata.xml
@@ -6,5 +6,5 @@
<name>Nguyen Dinh Dang Duong</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/tinygltf/tinygltf-2.9.6.ebuild b/dev-cpp/tinygltf/tinygltf-2.9.6.ebuild
index ad4bc7734432..85301c5c2f85 100644
--- a/dev-cpp/tinygltf/tinygltf-2.9.6.ebuild
+++ b/dev-cpp/tinygltf/tinygltf-2.9.6.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..14} )
inherit cmake edo python-any-r1
DESCRIPTION="Header only C++11 tiny glTF 2.0 library"
diff --git a/dev-cpp/tlfloat/metadata.xml b/dev-cpp/tlfloat/metadata.xml
index a6b256295160..c2271a207d95 100644
--- a/dev-cpp/tlfloat/metadata.xml
+++ b/dev-cpp/tlfloat/metadata.xml
@@ -6,5 +6,5 @@
<name>Tupone Alfredo</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/toml11/metadata.xml b/dev-cpp/toml11/metadata.xml
index ecd6134f7692..8d25eff8abff 100644
--- a/dev-cpp/toml11/metadata.xml
+++ b/dev-cpp/toml11/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<bugs-to>https://github.com/ToruNiina/toml11/issues/</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/tomlplusplus/metadata.xml b/dev-cpp/tomlplusplus/metadata.xml
index ee00ffb5cd81..dd7f51efdb9a 100644
--- a/dev-cpp/tomlplusplus/metadata.xml
+++ b/dev-cpp/tomlplusplus/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/trantor/metadata.xml b/dev-cpp/trantor/metadata.xml
index e195fdd4e632..3c24565b06e6 100644
--- a/dev-cpp/trantor/metadata.xml
+++ b/dev-cpp/trantor/metadata.xml
@@ -11,5 +11,5 @@
<use>
<flag name="spdlog">enable <pkg>dev-libs/spdlog</pkg> logging backend</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/tree/metadata.xml b/dev-cpp/tree/metadata.xml
index 64b63a068c4a..57b9bc03b2e2 100644
--- a/dev-cpp/tree/metadata.xml
+++ b/dev-cpp/tree/metadata.xml
@@ -13,5 +13,5 @@
STL or alternative algorithms are available.
</longdescription>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/trompeloeil/Manifest b/dev-cpp/trompeloeil/Manifest
index 8926e4ec4118..269ac5a91aac 100644
--- a/dev-cpp/trompeloeil/Manifest
+++ b/dev-cpp/trompeloeil/Manifest
@@ -1 +1,2 @@
DIST trompeloeil-47.tar.gz 319940 BLAKE2B 2ea8bf5f5a730c637742aded374bb4c09b7ed1972a88dcd3aec0784559b72f3938269fb9c898934bc6eb69ff543249b70e6e2eb596860940a5d37c97192fa20f SHA512 e29d5424318c9d09adfa37767a5ad2cc074a01d5bb12eb832868d2bf54e67f12310a47b0887b1a6c62eebcdddf4155d940a37a8c93c3547742d91a3ce857dd69
+DIST trompeloeil-49.tar.gz 336774 BLAKE2B b6e5807f43becc27ea6cee6614485cf537c81eb12dee92e47800470673f7b912a20d30318e6c1bb3abc5a7f3013db89b60bea36962f8694305d5e807b46d8ad0 SHA512 f1a7212eacfb79f73cea075a147066b4cb10da76a6826e4594c29412395ae69647bb852d12936dd3f9b5c5a7f0aad3ebae246fdfb4006072c39b1efcd51876f5
diff --git a/dev-cpp/trompeloeil/metadata.xml b/dev-cpp/trompeloeil/metadata.xml
index 736a1167c898..7a420b460d5e 100644
--- a/dev-cpp/trompeloeil/metadata.xml
+++ b/dev-cpp/trompeloeil/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/trompeloeil/trompeloeil-49.ebuild b/dev-cpp/trompeloeil/trompeloeil-49.ebuild
new file mode 100644
index 000000000000..16367a1bd05d
--- /dev/null
+++ b/dev-cpp/trompeloeil/trompeloeil-49.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Header only C++14 mocking framework"
+HOMEPAGE="https://github.com/rollbear/trompeloeil"
+SRC_URI="https://github.com/rollbear/trompeloeil/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( >=dev-cpp/catch-2:0 )"
+
+src_prepare() {
+ # bug #947154
+ sed -i '/-Werror/d' test/CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DTROMPELOEIL_BUILD_TESTS=$(usex test)
+ )
+
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_src_test
+
+ "${BUILD_DIR}"/test/self_test || die
+}
diff --git a/dev-cpp/units/Manifest b/dev-cpp/units/Manifest
index 36503ed8a415..7c3f1c5f581b 100644
--- a/dev-cpp/units/Manifest
+++ b/dev-cpp/units/Manifest
@@ -1,2 +1 @@
-DIST units-2.3.3.tar.gz 1612045 BLAKE2B f81461e28d2cfe331ada2a0d1c0276d6a6c52825f2ec28caf2160e80aaa343ccc947892fe6be6133c5a80f277ac1767df49b66a10ad3ed573b57e6af16acd385 SHA512 40d803e6bb17f4bb46a0136c7753ae25a0d3ce352dbff3843b0c231e94eb8bade1de65d5b988589607fb12b11e4bfa762708a68839f2d7dccb45440672d09031
-DIST units-2.3.4.tar.gz 1125818 BLAKE2B dd84266bdfba116d7f675600a6dbf3925fd071892ffdfec11392b70b74026dab96628c606d48a5284a8c1661a390245543083eebd9691896008154a8c3fca037 SHA512 2280782fe020fb60fe16f304105de73b30fa51c36e075bfa9b4d0c9d585936084802dd8cca6b1967ad10c7ad949afce27937050184151c2a67f2113f14c38c1b
+DIST units-3.3.0.tar.gz 1198638 BLAKE2B db2f821fc831835d00ca3a1284ec54050bc8c3017913f5bb835898bffd3a3f529380f89b9e29e091bb781e091a1f41dc3bbc9f4b2e57f257fafa196b81ab8195 SHA512 9cedc52e0405140b9a8014195f59f4deb2edd155fe78df76005eb721974c2a640975d9b959777be48f41c24f6a0a7047536649958da847e2aa8b0c3b9a6d139a
diff --git a/dev-cpp/units/files/units-2.3.3-disable-failing-tests.patch b/dev-cpp/units/files/units-2.3.3-disable-failing-tests.patch
deleted file mode 100644
index c148445704dd..000000000000
--- a/dev-cpp/units/files/units-2.3.3-disable-failing-tests.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/unitTests/main.cpp b/unitTests/main.cpp
-index 96befa3..73a4d93 100644
---- a/unitTests/main.cpp
-+++ b/unitTests/main.cpp
-@@ -1409,7 +1409,7 @@ TEST_F(UnitContainer, to_string)
- EXPECT_STREQ("8 m", units::length::to_string(b).c_str());
- }
-
--TEST_F(UnitContainer, to_string_locale)
-+TEST_F(UnitContainer, DISABLED_to_string_locale)
- {
- struct lconv * lc;
-
diff --git a/dev-cpp/units/metadata.xml b/dev-cpp/units/metadata.xml
index 0c17645a7fe0..22757237e910 100644
--- a/dev-cpp/units/metadata.xml
+++ b/dev-cpp/units/metadata.xml
@@ -6,5 +6,5 @@
<name>Kostadin Shishmanov</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/units/units-2.3.4.ebuild b/dev-cpp/units/units-2.3.4.ebuild
deleted file mode 100644
index 8964bf8a55a6..000000000000
--- a/dev-cpp/units/units-2.3.4.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="A compile-time, header-only, dimensional analysis and unit conversion library"
-HOMEPAGE="https://github.com/nholthaus/units"
-SRC_URI="https://github.com/nholthaus/units/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-PATCHES=(
- "${FILESDIR}/${PN}-2.3.3-disable-failing-tests.patch"
-)
-
-src_configure() {
- local mycmakeargs+=(
- -DBUILD_TESTS="$(usex test ON OFF)"
- )
- cmake_src_configure
-}
diff --git a/dev-cpp/units/units-2.3.3.ebuild b/dev-cpp/units/units-3.3.0.ebuild
index 69fa8c6ae25e..1fc603ae2ab8 100644
--- a/dev-cpp/units/units-2.3.3.ebuild
+++ b/dev-cpp/units/units-3.3.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,13 +16,12 @@ KEYWORDS="~amd64"
IUSE="test"
RESTRICT="!test? ( test )"
-PATCHES=(
- "${FILESDIR}/${P}-disable-failing-tests.patch"
-)
+DEPEND="test? ( >=dev-cpp/gtest-1.17.0 )"
src_configure() {
local mycmakeargs+=(
- -DBUILD_TESTS="$(usex test ON OFF)"
+ -DBUILD_TESTING="$(usex test ON OFF)"
+ -DUNITS_BUILD_TESTS="$(usex test ON OFF)"
)
cmake_src_configure
}
diff --git a/dev-cpp/ut2-glaze/metadata.xml b/dev-cpp/ut2-glaze/metadata.xml
index 723f60bf94b5..e6d09a1cf0a2 100644
--- a/dev-cpp/ut2-glaze/metadata.xml
+++ b/dev-cpp/ut2-glaze/metadata.xml
@@ -17,5 +17,5 @@
<changelog>https://github.com/openalgz/ut/releases</changelog>
<bugs-to>https://github.com/openalgz/ut/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/valijson/metadata.xml b/dev-cpp/valijson/metadata.xml
index 68f705d5ef56..58788203a3f6 100644
--- a/dev-cpp/valijson/metadata.xml
+++ b/dev-cpp/valijson/metadata.xml
@@ -10,5 +10,5 @@
<name>Proxy Maintainers</name>
</maintainer>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/wangle/metadata.xml b/dev-cpp/wangle/metadata.xml
index b608eb4115c5..13d11dad64d3 100644
--- a/dev-cpp/wangle/metadata.xml
+++ b/dev-cpp/wangle/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:facebook:wangle</remote-id>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/waylandpp/metadata.xml b/dev-cpp/waylandpp/metadata.xml
index 6fbcd2761abc..d1559f227823 100644
--- a/dev-cpp/waylandpp/metadata.xml
+++ b/dev-cpp/waylandpp/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<bugs-to>https://github.com/NilsBrause/waylandpp/issues</bugs-to>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/websocketpp/metadata.xml b/dev-cpp/websocketpp/metadata.xml
index 83d00b14c8d4..7a420b460d5e 100644
--- a/dev-cpp/websocketpp/metadata.xml
+++ b/dev-cpp/websocketpp/metadata.xml
@@ -2,5 +2,5 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/workflow/metadata.xml b/dev-cpp/workflow/metadata.xml
index 0278f84e08d3..7370c64e20a2 100644
--- a/dev-cpp/workflow/metadata.xml
+++ b/dev-cpp/workflow/metadata.xml
@@ -6,5 +6,5 @@
<name>Aisha Tammy</name>
</maintainer>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/wt/metadata.xml b/dev-cpp/wt/metadata.xml
index 1bb23aac582c..c78d4a3a1679 100644
--- a/dev-cpp/wt/metadata.xml
+++ b/dev-cpp/wt/metadata.xml
@@ -15,5 +15,5 @@
<flag name="pango">Enable <pkg>x11-libs/pango</pkg>, which is used for improved font support (WPdfImage and WRasterImage)</flag>
<flag name="wttest">Build Wt::Test for automated (integration/unit) tests</flag>
</use>
- <origin>ports</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/xsimd/Manifest b/dev-cpp/xsimd/Manifest
index 2619e028ad00..480e7e0bd710 100644
--- a/dev-cpp/xsimd/Manifest
+++ b/dev-cpp/xsimd/Manifest
@@ -1,2 +1,3 @@
DIST xsimd-13.2.0.tar.gz 269287 BLAKE2B 596d348e32cd6cde6112d7dee304d44111db755eb5827c6c55a57c2803a65956ef4660784748c6f127c28c80c62689d9956363bbc49ef9d2edf5f1f8b428af55 SHA512 3825626547b0dd9b58f306bc89e9b3bc6dd778ad3811b7828e50fc16ae102574255b53f2b0714995de2bd6f9eb7b2c5d266a1a24fbfdf5420dc5e94d7dcbb522
DIST xsimd-14.0.0.tar.gz 306182 BLAKE2B 8f17b86916cb7f88d8ba5f67abe063a514aa6707ed465a1a654fdcc9a59080ac27e2ab7b525eb289bfacf83d93a5b2fbddde46a6d99e819fc1dfbe9b1e591e98 SHA512 f1d9bc50482a52a7b1891637c4e054eeafed0503b938ef07050fea8354e215b9483bafb17485b22fca8d715ddd7c79f03af352116487558d610d4e03d7dbcf4e
+DIST xsimd-14.2.0.tar.gz 339961 BLAKE2B 7f8253f7a6531d01678a51ec21bd15224a52da1b97ae94f9ba94e6d33aa97664d4e58d087206654a9fff37ef0fc11494296e87bdcc74c4ac2f92f5f2cd6de18f SHA512 5a93511719b5460fa27248d7bbfda61a72fd32d67c9dbffee26686d57b54042957e9ed8a7b55923677122e04f0c2f4ba5f92b54028cfb2f4328d45f2858b3bd6
diff --git a/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch b/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch
new file mode 100644
index 000000000000..6dca6f7b84ba
--- /dev/null
+++ b/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch
@@ -0,0 +1,58 @@
+We both want to respect the user's CFLAGS, but also, not all of our arches support
+-march or -mtune.
+--- a/benchmark/CMakeLists.txt
++++ b/benchmark/CMakeLists.txt
+@@ -30,7 +30,6 @@
+
+ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Intel")
+ if(NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native")
+ endif()
+
+ if(NOT MSVC)
+--- a/examples/CMakeLists.txt
++++ b/examples/CMakeLists.txt
+@@ -26,7 +26,6 @@
+
+ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Intel")
+ if (NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -mtune=native")
+ endif()
+ if(NOT CMAKE_CXX_COMPILER_ID MATCHES Clang) # We are using clang-cl
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp")
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -42,8 +42,6 @@
+
+ # Note: to compile on ARM (or cross compile), you may need to add the following:
+ # -DTARGET_ARCH="armv8-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi"
+-set(TARGET_ARCH "native" CACHE STRING "Target architecture arguments")
+-string(REGEX MATCH "emulated\\<[0-9]+\\>" TARGET_EMULATED ${TARGET_ARCH})
+
+ if (TARGET_EMULATED)
+ message(STATUS "Using emulated target: ${TARGET_EMULATED}")
+@@ -100,7 +99,6 @@
+ include_directories(/usr/${ARM_ARCH_DIRECTORY}/include/)
+ if(NOT CMAKE_CXX_FLAGS MATCHES "-march")
+ message(STATUS "SETTING ARCH TO ${TARGET_ARCH}")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=${TARGET_ARCH}")
+ endif()
+ if(ARM_ARCH_DIRECTORY MATCHES "arm-linux-gnueabi")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi")
+@@ -110,16 +108,13 @@
+ message(STATUS "CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}")
+ message(STATUS "CMAKE_CXX_LINK_EXECUTABLE: ${CMAKE_CXX_LINK_EXECUTABLE}")
+ elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^ppc64" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcpu=${TARGET_ARCH} -mtune=${TARGET_ARCH}")
+ elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "riscv64")
+ # Nothing specific
+ elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "powerpc")
+ # Nothing specific
+ elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "s390x")
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=z14 -mzvector")
+ elseif(NOT WIN32 AND NOT EMSCRIPTEN)
+ if(TARGET_ARCH AND NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=${TARGET_ARCH}")
+ endif()
+ endif()
+ endif()
diff --git a/dev-cpp/xsimd/metadata.xml b/dev-cpp/xsimd/metadata.xml
index c1aa073d78a3..0ddba6e66f1e 100644
--- a/dev-cpp/xsimd/metadata.xml
+++ b/dev-cpp/xsimd/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<doc>https://xsimd.readthedocs.io/en/latest/</doc>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/xsimd/xsimd-13.2.0.ebuild b/dev-cpp/xsimd/xsimd-13.2.0.ebuild
index 4a0d3c134b39..dd799720c404 100644
--- a/dev-cpp/xsimd/xsimd-13.2.0.ebuild
+++ b/dev-cpp/xsimd/xsimd-13.2.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..13} )
inherit cmake python-any-r1
DESCRIPTION="C++ wrappers for SIMD intrinsics"
diff --git a/dev-cpp/xsimd/xsimd-14.0.0.ebuild b/dev-cpp/xsimd/xsimd-14.0.0.ebuild
index d3103e1cec8b..575c78b432f5 100644
--- a/dev-cpp/xsimd/xsimd-14.0.0.ebuild
+++ b/dev-cpp/xsimd/xsimd-14.0.0.ebuild
@@ -1,9 +1,9 @@
-# Copyright 2023-2025 Gentoo Authors
+# Copyright 2023-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{11..14} )
inherit cmake python-any-r1
DESCRIPTION="C++ wrappers for SIMD intrinsics"
@@ -13,7 +13,7 @@ SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm ~arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="doc test"
RESTRICT="!test? ( test )"
diff --git a/dev-cpp/xsimd/xsimd-14.2.0.ebuild b/dev-cpp/xsimd/xsimd-14.2.0.ebuild
new file mode 100644
index 000000000000..3ab9fac1271e
--- /dev/null
+++ b/dev-cpp/xsimd/xsimd-14.2.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2023-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+inherit cmake python-any-r1
+
+DESCRIPTION="C++ wrappers for SIMD intrinsics"
+HOMEPAGE="https://github.com/xtensor-stack/xsimd"
+SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ doc? (
+ app-text/doxygen
+ $(python_gen_any_dep '
+ dev-python/breathe[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+ ')
+ )
+ test? ( dev-cpp/doctest )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-14.0.0-c++17.patch
+ "${FILESDIR}"/${P}-no-march.patch
+)
+
+python_check_deps() {
+ python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/breathe[${PYTHON_USEDEP}]"
+
+}
+
+pkg_setup() {
+ use doc && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ sed -i \
+ -e '/fPIC/d' \
+ test/CMakeLists.txt \
+ || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use doc && emake -C docs html
+}
+
+src_install() {
+ use doc && HTML_DOCS=( docs/build/html/* )
+ cmake_src_install
+}
diff --git a/dev-cpp/xtensor/metadata.xml b/dev-cpp/xtensor/metadata.xml
index a27b6368b5f9..16bd3ce53bfe 100644
--- a/dev-cpp/xtensor/metadata.xml
+++ b/dev-cpp/xtensor/metadata.xml
@@ -12,5 +12,5 @@
<flag name="openmp">Enable parallel assignment loop using OpenMP</flag>
<flag name="tbb">Enable parallel assignment loop using dev-cpp/tbb</flag>
</use>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/xtensor/xtensor-0.26.0.ebuild b/dev-cpp/xtensor/xtensor-0.26.0.ebuild
index 973935564299..d05832ae454d 100644
--- a/dev-cpp/xtensor/xtensor-0.26.0.ebuild
+++ b/dev-cpp/xtensor/xtensor-0.26.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake python-any-r1 optfeature toolchain-funcs
diff --git a/dev-cpp/xtl/metadata.xml b/dev-cpp/xtl/metadata.xml
index c3af7bf8918e..e31d58688516 100644
--- a/dev-cpp/xtl/metadata.xml
+++ b/dev-cpp/xtl/metadata.xml
@@ -8,5 +8,5 @@
<upstream>
<doc>https://xtl.readthedocs.io/en/latest/</doc>
</upstream>
- <origin>gentoo-guru-overlay</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-cpp/xtl/xtl-0.8.0.ebuild b/dev-cpp/xtl/xtl-0.8.0.ebuild
index 93634d806c76..4d74e49b6200 100644
--- a/dev-cpp/xtl/xtl-0.8.0.ebuild
+++ b/dev-cpp/xtl/xtl-0.8.0.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_COMPAT=( python3_{12..13} )
inherit cmake python-any-r1
diff --git a/dev-cpp/yaml-cpp/metadata.xml b/dev-cpp/yaml-cpp/metadata.xml
index 6870f7599247..7ef5d4111d82 100644
--- a/dev-cpp/yaml-cpp/metadata.xml
+++ b/dev-cpp/yaml-cpp/metadata.xml
@@ -12,5 +12,5 @@
<upstream>
<remote-id type="cpe">cpe:/a:yaml-cpp_project:yaml-cpp</remote-id>
</upstream>
- <origin>gentoo-staging</origin>
+ <origin>liguros-repo</origin>
</pkgmetadata> \ No newline at end of file