summaryrefslogtreecommitdiff
path: root/dev-cpp
diff options
context:
space:
mode:
authorCrucible <crucible@localhost>2026-09-24 16:55:33 -0500
committerCrucible <crucible@localhost>2026-09-24 16:55:33 -0500
commit6295f37a70d50a32011b5a1ee7793fea329cd5f2 (patch)
tree11a38d28475be98b7cf8226e8aa2a95aeb7d771e /dev-cpp
parent2c54208beece2b6a1243a50c850e195d1a42d716 (diff)
downloadsrcux-6295f37a70d50a32011b5a1ee7793fea329cd5f2.tar.gz
srcux-6295f37a70d50a32011b5a1ee7793fea329cd5f2.tar.xz
srcux-6295f37a70d50a32011b5a1ee7793fea329cd5f2.zip
Publish srcux candidate 0000000383-20260924-165302
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/aws-crt-cpp/Manifest1
-rw-r--r--dev-cpp/aws-crt-cpp/aws-crt-cpp-0.43.7.ebuild55
-rw-r--r--dev-cpp/aws-sdk-cpp/Manifest1
-rw-r--r--dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.887.ebuild69
-rwxr-xr-xdev-cpp/aws-sdk-cpp/files/mnt_check_aws_groups77
-rw-r--r--dev-cpp/cairomm/Manifest1
-rw-r--r--dev-cpp/cairomm/cairomm-1.18.1.ebuild58
-rw-r--r--dev-cpp/eigen/Manifest1
-rw-r--r--dev-cpp/eigen/eigen-3.4.0-r3.ebuild458
-rw-r--r--dev-cpp/eigen/eigen-3.4.1.ebuild (renamed from dev-cpp/eigen/eigen-3.4.1-r1.ebuild)4
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch108
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-noansi.patch18
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch195
-rw-r--r--dev-cpp/eigen/files/eigen-3.4.1-fix-Werror-undef.patch19
-rw-r--r--dev-cpp/gtkmm/Manifest2
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild (renamed from dev-cpp/gtkmm/gtkmm-4.22.0.ebuild)20
-rw-r--r--dev-cpp/gtkmm/gtkmm-4.20.0.ebuild52
-rw-r--r--dev-cpp/libcmis/Manifest1
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch47
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch45
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch26
-rw-r--r--dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild73
-rw-r--r--dev-cpp/libcmis/libcmis-0.6.3.ebuild2
-rw-r--r--dev-cpp/msgpack-cxx/Manifest1
-rw-r--r--dev-cpp/msgpack-cxx/msgpack-cxx-9.0.0.ebuild59
25 files changed, 1031 insertions, 362 deletions
diff --git a/dev-cpp/aws-crt-cpp/Manifest b/dev-cpp/aws-crt-cpp/Manifest
index b69d888859a8..a8d2d5aa0da9 100644
--- a/dev-cpp/aws-crt-cpp/Manifest
+++ b/dev-cpp/aws-crt-cpp/Manifest
@@ -1,4 +1,3 @@
DIST aws-crt-cpp-0.35.4.tar.gz 377147 BLAKE2B 9011b1191d5403c5e106c20a1420d4595c873e05a3ce2844198604e22c47544f50d1060ef35989e58d5bf1601078390d68d2e08aa4bc49ce37a95d9d5373562b SHA512 a8620827869be5465828d400f9cefe38e6030982ef45e7b780c84c68b403d1adc74f59c7b4626d84e730c0e197977430e9c5f5b78992fd3c0092d4ecab8a990b
DIST aws-crt-cpp-0.42.3.tar.gz 401899 BLAKE2B 3e0f90e8b77b59c8edda62a2fedaa93f860a6e22a2328f684e231d17ad9c34218b005f4577fb758d4800aef2b12931cc062acf622580d5720c9827f9f7d37a43 SHA512 318496a5823a802b8eb619eb1a42816efb2508d097168a5f4d73169c01ebfdfbe470739f35712a77a1e486408f8de4440e5b7483a8ca334c69571c6ceef459c6
DIST aws-crt-cpp-0.43.6.tar.gz 417290 BLAKE2B b0956785c2b875e94426c0c2f08a656db211c5b869ae76e6df85d88c672c1d727ff9c5bd21ed91e200ed88933c57f06df608ce0d700e1d08a4bca4ef23c288f1 SHA512 4c72a700ef7f76ca870896edcafa8526567306d1d202b1dbb9397deab4d77f309cbb8b786bbdf25b775baab9cb9a19bc925b973cf4752810b4b8855ef846f856
-DIST aws-crt-cpp-0.43.7.tar.gz 418294 BLAKE2B 94dd54730662d5cb3a77ca6feb64ed6d5ffbe0f9cd49fc4700e4c789fd38cf2d2ffd4c3d09c14ab1c725f9db235b64cef9bb8529457bead688ff0e0adf47f596 SHA512 314bfa9eb14167e8ca6e6f3b959c05bbb28c0ba143b1b1ef3884c1bde7411c2ba1089816d73016354f480a442f4f3706361656225e2b84aa732fc5b071d5a264
diff --git a/dev-cpp/aws-crt-cpp/aws-crt-cpp-0.43.7.ebuild b/dev-cpp/aws-crt-cpp/aws-crt-cpp-0.43.7.ebuild
deleted file mode 100644
index c2739af2c1c8..000000000000
--- a/dev-cpp/aws-crt-cpp/aws-crt-cpp-0.43.7.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="C++ wrapper around the aws-c-* libraries"
-HOMEPAGE="https://github.com/awslabs/aws-crt-cpp"
-SRC_URI="https://github.com/awslabs/aws-crt-cpp/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-RESTRICT="!test? ( test )"
-
-DEPEND="
- dev-libs/aws-c-auth:=
- dev-libs/aws-c-cal:=
- dev-libs/aws-c-common:=
- dev-libs/aws-c-event-stream:=
- dev-libs/aws-c-http:=
- dev-libs/aws-c-io:=
- dev-libs/aws-c-mqtt:=
- dev-libs/aws-c-s3:=
- dev-libs/aws-c-sdkutils:=
- dev-libs/aws-checksums:=
-"
-RDEPEND="${DEPEND}"
-BDEPEND="dev-libs/aws-c-common"
-
-src_configure()
-{
- local mycmakeargs=(
- -DBUILD_DEPS=OFF # disable embedded 3rd-party repositories.
- -DBUILD_TESTING=$(usex test)
- )
-
- use test && mycmakeargs+=(
- -DENABLE_NET_TESTS=OFF # Network Sandbox cause these to fail.
- )
-
- cmake_src_configure
-}
-
-src_install()
-{
- cmake_src_install
-
- if use test; then
- rm -r "${D}/usr/bin" || die "Error removing testbinaries from /usr/bin"
- fi
-}
diff --git a/dev-cpp/aws-sdk-cpp/Manifest b/dev-cpp/aws-sdk-cpp/Manifest
index f1b746dba18c..db1344cc4453 100644
--- a/dev-cpp/aws-sdk-cpp/Manifest
+++ b/dev-cpp/aws-sdk-cpp/Manifest
@@ -1,3 +1,2 @@
DIST aws-sdk-cpp-1.11.712.tar.gz 80207334 BLAKE2B ae221b828a6b57bacb6a66725e827dd5cc2242e0dcb1434a9d5724ad20b4dd2e3796bca25ec0d490f90195c86d33ca312d60bb32cad44d419235d4a6e359d5ba SHA512 bbf220d3188111f6e93c8f0a36d62be05bf844e9745d1e214a419c2c15b2d7f0abb642b2eff8f47113a1925bf94bdd983db618e5940f3c30a4deed00994b08d6
DIST aws-sdk-cpp-1.11.764.tar.gz 81899504 BLAKE2B 87494fb5cdd79c97583b633b3268ac5cb7aa08152f8fa8494ea35b8552adae16fd9f5255667bdb5f55814dc5019d7c28d4022a2a68fd0bf8ecf4258b29c8a5d9 SHA512 41a4cbfedaf35b22a3f30fd3bb6cbd89ae2df9f62127db93a9a1a6405fc1c019695db4bd944ce0206a6cb812b5c2f028ca2b40d5d1780f37480813f8ee086549
-DIST aws-sdk-cpp-1.11.887.tar.gz 88687601 BLAKE2B fe70b4833e3629469da61c8af0c6bc0c4d7b46504524737ce18406232721fced255fb627b1b603c3d22d68ed1d838af951803d3b785186e4ac25c9011a2b7f26 SHA512 874be6a7b33be2197d529b49c8148ddb65a2831dd09d50ecfa6d3df1cf36727c3ba6b3f0d4ff2e664cc7b51e9f2a39e759cd6c523d63eef220b8c18d8ed2eee5
diff --git a/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.887.ebuild b/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.887.ebuild
deleted file mode 100644
index 4b38a59442e7..000000000000
--- a/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.887.ebuild
+++ /dev/null
@@ -1,69 +0,0 @@
-# Copyright 2025-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DESCRIPTION="AWS SDK for C++"
-HOMEPAGE="https://github.com/aws/aws-sdk-cpp"
-SRC_URI="https://github.com/aws/aws-sdk-cpp/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-inherit cmake
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# BUILD_ONLY lists
-declare -g -A AWS_GROUPS=(
- [analytics]="amp;amplify;amplifybackend;amplifyuibuilder;appflow;appintegrations;athena;cleanrooms;cleanroomsml;cloudsearch;cloudsearchdomain;databrew;dataexchange;datapipeline;datazone;dsql;entityresolution;finspace;finspace-data;firehose;forecast;forecastquery;glue;kafka;kafkaconnect;kinesisanalytics;kinesisanalyticsv2;lakeformation;lookoutequipment;machinelearning;mwaa;mwaa-serverless;omics;pi;quicksight;repostspace"
- [compute]="apigateway;apigatewaymanagementapi;apigatewayv2;application-autoscaling;apprunner;appstream;appsync;autoscaling;autoscaling-plans;batch;compute-optimizer;compute-optimizer-automation;ec2;ec2-instance-connect;ecr;ecr-public;ecs;eks;eks-auth;elasticbeanstalk;elasticfilesystem;elasticloadbalancing;elasticloadbalancingv2;elasticmapreduce;emr-containers;emr-serverless;imagebuilder;lambda;lambda-core;lambda-microvms;lightsail;m2;outposts;s3outposts;states;swf;workspaces-instances"
- [database]="clouddirectory;dax;docdb;docdb-elastic;dynamodb;dynamodbstreams;elasticache;es;keyspaces;memorydb;neptune;neptunedata;neptune-graph;odb;opensearch;opensearchserverless;osis;rds;rds-data;redshift;redshift-data;redshift-serverless;sdb;simpledbv2;timestream-influxdb;timestream-query;timestream-write"
- [devops]="artifact;b2bi;cloud9;codeartifact;codebuild;codecatalyst;codecommit;codeconnections;codedeploy;codeguruprofiler;codeguru-reviewer;codepipeline;codestar-connections;codestar-notifications;devicefarm;gamelift;gameliftstreams;keyspacesstreams;mturk-requester;proton;schemas;serverlessrepo"
- [iot]="greengrass;greengrassv2;groundstation;iot;iot-data;iotdeviceadvisor;iotfleetwise;iot-jobs-data;iot-managed-integrations;iotsecuretunneling;iotsitewise;iotthingsgraph;iottwinmaker;iotwireless"
- [management]="account;appconfig;appconfigdata;applicationcostprofiler;application-insights;application-signals;AWSMigrationHub;bcm-data-exports;bcm-pricing-calculator;billing;billingconductor;budgets;ce;cloudcontrol;cloudformation;cloudtrail;cloudtrail-data;controlcatalog;controltower;cost-optimization-hub;cur;discovery;dlm;dms;drs;fms;invoicing;launch-wizard;license-manager;license-manager-linux-subscriptions;license-manager-user-subscriptions;marketplace-agreement;marketplace-catalog;marketplacecommerceanalytics;marketplace-deployment;marketplace-discovery;marketplace-entitlement;marketplace-reporting;meteringmarketplace;mgn;migrationhub-config;migrationhuborchestrator;migration-hub-refactor-spaces;migrationhubstrategy;mpa;organizations;partnercentral-account;partnercentral-benefits;partnercentral-channel;partnercentral-revenue-measurement;partnercentral-selling;pricing-plan-manager;ram;resource-explorer-2;resource-groups;resourcegroupstaggingapi;savingsplans;servicecatalog;servicecatalog-appregistry;service-quotas;ssm;ssm-contacts;ssm-guiconnect;ssm-incidents;ssm-quicksetup;ssm-sap;supplychain;support;support-app;taxsettings;workspaces;workspaces-thin-client;workspaces-web"
- [media]="deadline;elementalinference;ivs;ivschat;ivs-realtime;kinesis;kinesisvideo;kinesis-video-archived-media;kinesis-video-media;kinesis-video-signaling;kinesis-video-webrtc-storage;mediaconnect;mediaconvert;medialive;mediatailor;voice-id"
- [messaging]="chatbot;chime;chime-sdk-identity;chime-sdk-media-pipelines;chime-sdk-meetings;chime-sdk-messaging;chime-sdk-voice;connect;connectcampaigns;connectcampaignsv2;connectcases;connect-contact-lens;connectparticipant;customer-profiles;email;eventbridge;mailmanager;mq;notifications;notificationscontacts;pinpoint;pinpoint-email;pinpoint-sms-voice-v2;pipes;rum;scheduler;sesv2;sms-voice;sns;socialmessaging;sqs;sustainability;uxc;wickr;wisdom;workmail;workmailmessageflow"
- [ml]="agent-registry;agent-registry-control;bedrock;bedrock-agent;bedrock-agent-runtime;bedrock-data-automation;bedrock-data-automation-runtime;bedrock-runtime;comprehend;comprehendmedical;frauddetector;kendra;kendra-ranking;lex;lex-models;lexv2-models;lexv2-runtime;medical-imaging;personalize;personalize-events;personalize-runtime;polly;qapps;qbusiness;qconnect;rekognition;sagemaker;sagemaker-a2i-runtime;sagemaker-edge;sagemaker-featurestore-runtime;sagemaker-geospatial;sagemakerjobruntime;sagemaker-metrics;sagemaker-runtime;sagemaker-runtime-http2;textract;transcribe;transcribestreaming;translate"
- [monitor]="aiops;appfabric;config;devops-agent;devops-guru;fis;grafana;health;healthlake;inspector;inspector2;inspector-scan;internetmonitor;logs;monitoring;oam;observabilityadmin;resiliencehub;resiliencehubv2;security-ir;synthetics;trustedadvisor;wellarchitected;xray"
- [networking]="appmesh;arc-zonal-shift;cloudfront;cloudfront-keyvaluestore;directconnect;geo-maps;geo-places;geo-routes;globalaccelerator;interconnect;location;network-firewall;networkflowmonitor;networkmanager;networkmonitor;route53;route53domains;route53globalresolver;route53profiles;route53-recovery-cluster;route53-recovery-control-config;route53-recovery-readiness;route53resolver;servicediscovery;tnb;vpc-lattice"
- [security]="accessanalyzer;account-access;acm;acm-pca;auditmanager;cloudhsm;cloudhsmv2;codeguru-security;detective;directory-service-data;guardduty;iam;iam-toolbox;macie2;payment-cryptography;payment-cryptography-data;pca-connector-ad;pca-connector-scep;pcs;rolesanywhere;secretsmanager;securityagent;securityhub;securitylake;shield;signer;signer-data;signin;sso;sso-admin;supportauthz;verifiedpermissions;waf;waf-regional;wafv2"
- [storage]="awstransfer;backup;backup-gateway;backupsearch;datasync;ebs;fsx;glacier;importexport;mediapackage;mediapackagev2;mediapackage-vod;mediastore;mediastore-data;rbin;s3;s3control;s3-crt;s3files;s3tables;snowball;snow-device-management;storagegateway;workdocs"
- [uncategorized]="braket;connecthealth;ds;evs;freetier;managedblockchain;managedblockchain-query;nova-act"
-)
-
-IUSE="${!AWS_GROUPS[*]}"
-
-DEPEND="dev-cpp/aws-crt-cpp:=
- dev-libs/aws-c-auth:=
- dev-libs/aws-c-common:=
- dev-libs/aws-c-compression:=
- dev-libs/aws-c-event-stream:=
- dev-libs/aws-c-http:=
- dev-libs/aws-c-io:=
- dev-libs/aws-c-mqtt:=
- dev-libs/aws-c-s3:=
- dev-libs/aws-c-sdkutils:=
- dev-libs/aws-checksums:=
- net-misc/curl:=
- virtual/zlib:="
-RDEPEND="${DEPEND}"
-BDEPEND="dev-libs/aws-c-common"
-
-src_configure() {
- local mybuildtargets="core;kms;identity-management;sts;cognito-identity;cognito-idp;cognito-sync;identitystore;sso-oidc;events;pricing"
-
- local g
- for g in "${!AWS_GROUPS[@]}"; do
- if use "${g}"; then
- mybuildtargets+=";${AWS_GROUPS[$g]}"
- fi
- done
-
- local mycmakeargs=(
- -DLEGACY_BUILD=ON
- -DBUILD_DEPS=OFF # disable embedded 3rd-party repositories.
- -DBUILD_ONLY="${mybuildtargets}"
- )
-
- cmake_src_configure
-}
diff --git a/dev-cpp/aws-sdk-cpp/files/mnt_check_aws_groups b/dev-cpp/aws-sdk-cpp/files/mnt_check_aws_groups
deleted file mode 100755
index f55e4b02f435..000000000000
--- a/dev-cpp/aws-sdk-cpp/files/mnt_check_aws_groups
+++ /dev/null
@@ -1,77 +0,0 @@
-#! /bin/bash
-
-# Just fake it to allow sourcing the .ebuild file directly into scope.
-inherit() {
- :
-}
-
-in_array() {
- local needle="$1"
- shift
- while [[ $# -gt 0 ]]; do
- [[ "$1" = "$needle" ]] && return 0
- shift
- done
- return 1
-}
-
-if [[ -r /usr/libexec/rc/sh/functions.sh ]]; then
- # We have openrc so high-jack these for prettier output.
- . /usr/libexec/rc/sh/functions.sh
-else
- ebegin() { echo "$*"; }
- eend() { :; }
- eerror() { echo "$*"; }
-fi
-
-for eb in "$@"; do
- unset AWS_GROUPS
- if [[ "$(basename "${eb}")" != aws-sdk-cpp-*.ebuild ]] ; then
- eerror "Ebuild name ${eb} looks invalid, skipping."
- continue
- fi
- if [[ ! -r "${eb}" ]]; then
- eerror "${eb} is not readable, skipping."
- continue
- fi
- ebegin "${eb}"
- r=0
-
- if ! ebuild "${eb}" fetch; then
- eerror "Error fetching dist files."
- avail_mods=()
- else
- distname="$(portageq metadata / ebuild dev-cpp/aws-sdk-cpp-1.11.887 SRC_URI | sed -nre 's/.* -> aws/aws/p')"
- avail_mods=($(tar tf "$(portageq envvar DISTDIR)/${distname}" --wildcards "*/generated/src/*" | sed -nre 's:.*/generated/src/aws-cpp-sdk-([^/]+)$:\1:p'))
- fi
-
- . "${eb}"
- declare -A listed_names=()
- for c in "${!AWS_GROUPS[@]}"; do
- IFS=';' mods=(${AWS_GROUPS[$c]})
- for m in "${mods[@]}"; do
- if [[ -n "${listed_names[$m]}" ]]; then
- eerror "${m} is listed twice, in first in ${listed_names[$m]} then in ${c}"
- r=1
- else
- listed_names[$m]="${c}"
- fi
- if [[ "${#avail_mods[@]}" -gt 0 ]] && ! in_array "${m}" "${avail_mods[@]}"; then
- eerror "Module ${m} listed in AWS_GROUPS category ${c} is not found in sources."
- r=1
- fi
- done
- sorted_list="$(printf "%s\n" "${mods[@]}" | sort | tr '\n' ';')"
- if [[ "${sorted_list%;}" != "${AWS_GROUPS[$c]}" ]]; then
- eerror "Category ${c} in AWS_GROUPS is not sorted, correctly sorted list is: ${sorted_list%;}"
- r=1
- fi
- done
- for m in "${avail_mods[@]}"; do
- if [[ -z "${listed_names[$m]}" ]]; then
- eerror "Module ${m} in sources is not found in any AWS_GROUPS category."
- r=1
- fi
- done
- eend $r
-done
diff --git a/dev-cpp/cairomm/Manifest b/dev-cpp/cairomm/Manifest
index 92561f5e83c5..1684ed88eda5 100644
--- a/dev-cpp/cairomm/Manifest
+++ b/dev-cpp/cairomm/Manifest
@@ -1,3 +1,2 @@
DIST cairomm-1.14.5.tar.xz 653276 BLAKE2B ad26a3eff8adae3b7202ed6a6c8706394ea0b508eadc0a526c2b18bec912645b09f25e786ec9021fef56ba6a6b4ffa76fed24bcf7e14252044cafdc6afd49fed SHA512 19e5f84f6167c1641b27545c3af4e780b6a072513322adc6296577e2d0ebcffe933afd15c32117a203394e9f5f28734820aaf1802dfdeb35ff2a657f140570b0
DIST cairomm-1.18.0.tar.xz 632520 BLAKE2B e05135eb2e22ed6002821567dd951644febc173b04e001f3574d6dac36d0c6d012c3806e7485fa7856402945934c653c4546855a8e97b016130edac31726d827 SHA512 d358a765136e244773b4a0fdcb2d9c81dd0b76f7a27c7108f94df9765f2d790f5f50b5645c09c292efce3e012528f85114d51916450c5fe6fa87d09f5a405d4c
-DIST cairomm-1.18.1.tar.xz 613728 BLAKE2B 698e408bbf727758c392393cb551defae69660d57f521e29468a9c3a94ee5e900abfa0ceb00943513aca5a5ea5b299f5c7588a6ea876ec114da301458001228e SHA512 ff23565dba657b45658613971429b5f06a60c585b467e9a302bda8ded7cf33dc3d4290b1699bd2bde907f5cbd3c8b4219d4e7f8442d65f61712767db6cb21874
diff --git a/dev-cpp/cairomm/cairomm-1.18.1.ebuild b/dev-cpp/cairomm/cairomm-1.18.1.ebuild
deleted file mode 100644
index 5f3ad5e8fc55..000000000000
--- a/dev-cpp/cairomm/cairomm-1.18.1.ebuild
+++ /dev/null
@@ -1,58 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{13..14} )
-inherit meson-multilib python-any-r1
-
-DESCRIPTION="C++ bindings for the Cairo vector graphics library"
-HOMEPAGE="https://cairographics.org/cairomm/ https://gitlab.freedesktop.org/cairo/cairomm"
-SRC_URI="https://www.cairographics.org/releases/${P}.tar.xz"
-
-LICENSE="LGPL-2.1+"
-SLOT="1.16"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="gtk-doc test X"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-libs/libsigc++:3[gtk-doc?,${MULTILIB_USEDEP}]
- >=x11-libs/cairo-1.14.10[X=,${MULTILIB_USEDEP}]
-"
-DEPEND="${RDEPEND}
- test? (
- dev-libs/boost[${MULTILIB_USEDEP}]
- media-libs/fontconfig[${MULTILIB_USEDEP}]
- )
-"
-BDEPEND="
- virtual/pkgconfig
- gtk-doc? (
- ${PYTHON_DEPS}
- >=dev-cpp/mm-common-1.0.4
- app-text/doxygen[dot]
- dev-libs/libxslt
- )
-"
-
-pkg_setup() {
- use gtk-doc && python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=(
- $(meson_native_use_bool gtk-doc build-documentation)
- -Dbuild-examples=false
- $(meson_use test build-tests)
- -Dboost-shared=true
- )
- meson_src_configure
-}
-
-multilib_src_install_all() {
- if use gtk-doc; then
- mkdir -p "${ED}/usr/share/gtk-doc/html/" || die
- mv "${ED}/usr/share/doc/cairomm-1.16" "${ED}/usr/share/gtk-doc/html/" || die
- fi
-}
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
index a4baa003538b..e78035ce5e3c 100644
--- a/dev-cpp/eigen/Manifest
+++ b/dev-cpp/eigen/Manifest
@@ -1,3 +1,4 @@
+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
diff --git a/dev-cpp/eigen/eigen-3.4.0-r3.ebuild b/dev-cpp/eigen/eigen-3.4.0-r3.ebuild
new file mode 100644
index 000000000000..21f9174b1ab0
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.4.0-r3.ebuild
@@ -0,0 +1,458 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_NEEDED="test"
+inherit cmake cuda fortran-2 llvm toolchain-funcs
+
+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} = 3.4.9999* ]] ; then
+ EGIT_BRANCH="3.4"
+ 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
+
+LICENSE="MPL-2.0"
+SLOT="3"
+
+# 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"
+ "opengl"
+ "openmp"
+ "pastix"
+ "sparsehash"
+ "spqr"
+ "superlu"
+ "umfpack"
+)
+
+IUSE="${CPU_FEATURES_MAP[*]%:*} clang cuda hip debug doc lapack mathjax test ${IUSE_TEST_BACKENDS[*]}" #zvector
+
+REQUIRED_USE="
+ test? ( !lapack )
+ || ( ${IUSE_TEST_BACKENDS[*]} )
+"
+
+# Tests failing again because of compiler issues; bugs #932646, #943401
+RESTRICT="test !test? ( test )"
+
+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 )
+"
+
+# 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 )
+ opengl? (
+ media-libs/freeglut
+ media-libs/glew
+ media-libs/libglvnd
+ )
+ pastix? ( sci-libs/pastix[-mpi] )
+ 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 )
+"
+DEPEND="
+ test? (
+ cuda? (
+ !clang? (
+ dev-util/nvidia-cuda-toolkit
+ )
+ clang? (
+ llvm-core/clang[llvm_targets_NVPTX]
+ openmp? ( llvm-runtimes/openmp[llvm_targets_NVPTX,offload] )
+ )
+ )
+ hip? ( dev-util/hip )
+ 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.0-noansi.patch"
+ "${FILESDIR}/${PN}-3.4.0-cxxstandard.patch"
+ "${FILESDIR}/${PN}-3.4.0-ppc-no-vsx.patch" # bug 936107
+)
+
+# 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"
+
+ 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}"
+ 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
+}
+
+pkg_setup() {
+ use test && use cuda && use clang && llvm_pkg_setup
+}
+
+src_unpack() {
+ if [[ ${PV} = *9999* ]] ; then
+ git-r3_src_unpack
+ else
+ unpack "${P}.tar.bz2"
+
+ if use test && use lapack; then
+ cd "${S}/lapack" || die
+ unpack "${PN}-lapack_addons-3.4.1.tgz"
+ fi
+ fi
+}
+
+src_prepare() {
+ 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
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS="yes"
+ -DBUILD_TESTING="$(usex test)"
+
+ -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation
+ -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen
+ )
+ 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+=(
+ # 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_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_BUILD_BTL=yes # Build benchmark suite
+
+ -DEIGEN_TEST_BUILD_DOCUMENTATION="$(usex doc)" # Test building the doxygen documentation
+
+ # -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_DASHBOARD_BUILD_TARGET=buildtests # Target to be built in dashboard mode, default is buildtests
+
+ # -DEIGEN_DEFAULT_TO_ROW_MAJOR=no # Use row-major as default matrix storage order
+
+ # -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
+ )
+
+ 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)"
+ )
+ fi
+
+ if use arm64; then
+ mycmakeargs+=(
+ -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)"
+ )
+ 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.
+ # -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 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
+
+ mycmakeargs+=(
+ -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests
+ -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex clang)")" # 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; 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)"
+ else
+ cuda_set_CUDAHOSTCXX
+ mycmakeargs+=(
+ -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}"
+ )
+ fi
+ if [[ "${CUDA_VERBOSE}" == true ]]; then
+ mycmakeargs+=(
+ -DCUDA_VERBOSE_BUILD=yes
+ )
+ NVCCFLAGS+=" -v"
+ fi
+
+ export CUDAFLAGS="${NVCCFLAGS}"
+
+ [[ -z "${CUDAARCHS}" ]] && einfo "trying to determine host CUDAARCHS"
+ : "${CUDAARCHS:=$(__nvcc_device_query)}"
+ export CUDAARCHS
+
+ mycmakeargs+=(
+ -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}"
+ )
+ fi
+ fi
+
+ cmake_src_configure
+}
+
+src_compile() {
+ local targets=()
+ if use doc; then
+ targets+=( doc )
+ HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
+ fi
+ if use test; then
+ targets+=( buildtests )
+ if ! use lapack; then
+ targets+=( blas )
+ fi
+ # tests generate random data, which
+ # obviously fails for some seeds
+ export EIGEN_SEED=712808
+ fi
+
+ if use doc || use test; 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)
+ )
+
+ if use cuda ; then
+ cuda_add_sandbox -w
+
+ CMAKE_SKIP_TESTS+=(
+ cxx11_tensor_cast_float16_gpu
+ cxx11_tensor_gpu_5
+ )
+ fi
+
+ if use lapack ; then
+ CMAKE_SKIP_TESTS+=(
+ "^LAPACK-.*$"
+ )
+ fi
+
+ local myctestargs=(
+ -j1 # otherwise breaks due to cmake reruns
+ )
+
+ cmake_src_test
+}
diff --git a/dev-cpp/eigen/eigen-3.4.1-r1.ebuild b/dev-cpp/eigen/eigen-3.4.1.ebuild
index bdc98bc7841d..65f1b42f809f 100644
--- a/dev-cpp/eigen/eigen-3.4.1-r1.ebuild
+++ b/dev-cpp/eigen/eigen-3.4.1.ebuild
@@ -30,7 +30,7 @@ else
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"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
fi
SRC_URI+="
@@ -231,8 +231,6 @@ PATCHES=(
"${DISTDIR}/${P}_p1.patch"
"${DISTDIR}/${P}_p2.patch"
-
- "${FILESDIR}/${P}-fix-Werror-undef.patch" # bug 976285
)
# TODO should be in cuda.eclass
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch b/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch
new file mode 100644
index 000000000000..826aa78d05aa
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch
@@ -0,0 +1,108 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -74,19 +74,9 @@ macro(ei_add_cxx_compiler_flag FLAG)
+ endif()
+ endmacro()
+
+-check_cxx_compiler_flag("-std=c++11" EIGEN_COMPILER_SUPPORT_CPP11)
+-
+-if(EIGEN_TEST_CXX11)
+- set(CMAKE_CXX_STANDARD 11)
+- set(CMAKE_CXX_EXTENSIONS OFF)
+- if(EIGEN_COMPILER_SUPPORT_CPP11)
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+- endif()
+-else()
+- #set(CMAKE_CXX_STANDARD 03)
+- #set(CMAKE_CXX_EXTENSIONS OFF)
+- ei_add_cxx_compiler_flag("-std=c++03")
+-endif()
++set(CMAKE_CXX_STANDARD 14)
++set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
++set(CMAKE_CXX_EXTENSIONS OFF)
+
+ # Determine if we should build shared libraries on this platform.
+ get_cmake_property(EIGEN_BUILD_SHARED_LIBS TARGET_SUPPORTS_SHARED_LIBS)
+@@ -157,7 +157,6 @@ if(NOT MSVC)
+ 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("-Wdouble-promotion")
+ # ei_add_cxx_compiler_flag("-Wconversion")
+
+--- a/Eigen/src/Core/util/Macros.h
++++ b/Eigen/src/Core/util/Macros.h
+@@ -37,7 +37,7 @@
+ // Expected values are 03, 11, 14, 17, etc.
+ // By default, let's use an arbitrarily large C++ version.
+ #ifndef EIGEN_MAX_CPP_VER
+-#define EIGEN_MAX_CPP_VER 99
++#define EIGEN_MAX_CPP_VER 14
+ #endif
+
+ /** Allows to disable some optimizations which might affect the accuracy of the result.
+--- a/doc/examples/CMakeLists.txt
++++ b/doc/examples/CMakeLists.txt
+@@ -14,7 +14,3 @@ foreach(example_src ${examples_SRCS})
+ )
+ add_dependencies(all_examples ${example})
+ endforeach()
+-
+-if(EIGEN_COMPILER_SUPPORT_CPP11)
+-ei_add_target_property(nullary_indexing COMPILE_FLAGS "-std=c++11")
+-endif()
+\ No newline at end of file
+diff --git a/doc/snippets/CMakeLists.txt b/doc/snippets/CMakeLists.txt
+index 65f195a..4cb18c8 100644
+--- a/doc/snippets/CMakeLists.txt
++++ b/doc/snippets/CMakeLists.txt
+@@ -15,9 +15,6 @@ foreach(snippet_src ${snippets_SRCS})
+ if(EIGEN_STANDARD_LIBRARIES_TO_LINK_TO)
+ target_link_libraries(${compile_snippet_target} ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO})
+ endif()
+- if(${snippet_src} MATCHES "cxx11")
+- set_target_properties(${compile_snippet_target} PROPERTIES COMPILE_FLAGS "-std=c++11")
+- endif()
+ if(${snippet_src} MATCHES "deprecated")
+ set_target_properties(${compile_snippet_target} PROPERTIES COMPILE_FLAGS "-DEIGEN_NO_DEPRECATED_WARNING")
+ endif()
+--- a/test/CMakeLists.txt
++++ b/test/CMakeLists.txt
+@@ -399,7 +399,6 @@ if(CUDA_FOUND)
+ set(CUDA_NVCC_FLAGS "-ccbin ${CMAKE_C_COMPILER}" CACHE STRING "nvcc flags" FORCE)
+ endif()
+ 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}")
+--- a/unsupported/test/CMakeLists.txt
++++ b/unsupported/test/CMakeLists.txt
+@@ -59,7 +59,7 @@ find_package(MPREAL)
+ if(MPREAL_FOUND AND EIGEN_COMPILER_SUPPORT_CPP11)
+ ei_add_property(EIGEN_TESTED_BACKENDS "MPFR C++, ")
+ include_directories(${MPREAL_INCLUDES})
+- ei_add_test(mpreal_support "-std=c++11" "${MPREAL_LIBRARIES}" )
++ ei_add_test(mpreal_support "-std=c++14" "${MPREAL_LIBRARIES}" )
+ else()
+ ei_add_property(EIGEN_MISSING_BACKENDS "MPFR C++, ")
+ endif()
+@@ -308,7 +308,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA)
+ set(CUDA_NVCC_FLAGS "-ccbin ${CMAKE_C_COMPILER}" CACHE STRING "nvcc flags" FORCE)
+ endif()
+ 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}")
+--- 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})
+ add_dependencies(all_examples random_cpp11)
+- ei_add_target_property(random_cpp11 COMPILE_FLAGS "-std=c++11")
+
+ add_custom_command(
+ TARGET random_cpp11
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch b/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch
new file mode 100644
index 000000000000..c0ce44445c1d
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch
@@ -0,0 +1,18 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -184,6 +184,7 @@ if(NOT MSVC)
+ ei_add_cxx_compiler_flag("-wd2304") # disable ICC's "warning #2304: non-explicit constructor with single argument may cause implicit type conversion" produced by -Wnon-virtual-dtor
+
+
++ if(NOT EIGEN_TEST_CXX11)
+ # The -ansi flag must be added last, otherwise it is also used as a linker flag by check_cxx_compiler_flag making it fails
+ # Moreover we should not set both -strict-ansi and -ansi
+ check_cxx_compiler_flag("-strict-ansi" COMPILER_SUPPORT_STRICTANSI)
+@@ -194,6 +195,7 @@ if(NOT MSVC)
+ else()
+ ei_add_cxx_compiler_flag("-ansi")
+ endif()
++ endif()
+
+ if(ANDROID_NDK)
+ ei_add_cxx_compiler_flag("-pie")
diff --git a/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch b/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch
new file mode 100644
index 000000000000..7cfeaaf129ff
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch
@@ -0,0 +1,195 @@
+https://gitlab.com/libeigen/eigen/-/merge_requests/1028
+https://bugs.gentoo.org/936107
+--- a/Eigen/Core
++++ b/Eigen/Core
+@@ -346,7 +346,7 @@
+ #include "src/Core/CoreIterators.h"
+ #include "src/Core/ConditionEstimator.h"
+
+-#if defined(EIGEN_VECTORIZE_ALTIVEC) || defined(EIGEN_VECTORIZE_VSX)
++#if defined(EIGEN_VECTORIZE_VSX)
+ #include "src/Core/arch/AltiVec/MatrixProduct.h"
+ #elif defined EIGEN_VECTORIZE_NEON
+ #include "src/Core/arch/NEON/GeneralBlockPanelKernel.h"
+--- a/Eigen/src/Core/arch/AltiVec/Complex.h
++++ b/Eigen/src/Core/arch/AltiVec/Complex.h
+@@ -100,6 +100,7 @@
+ HasAbs2 = 0,
+ HasMin = 0,
+ HasMax = 0,
++ HasSqrt = 1,
+ #ifdef __VSX__
+ HasBlend = 1,
+ #endif
+@@ -320,6 +321,7 @@
+ HasAbs2 = 0,
+ HasMin = 0,
+ HasMax = 0,
++ HasSqrt = 1,
+ HasSetLinear = 0
+ };
+ };
+--- a/Eigen/src/Core/arch/AltiVec/MathFunctions.h
++++ b/Eigen/src/Core/arch/AltiVec/MathFunctions.h
+@@ -40,16 +40,14 @@
+ return pcos_float(_x);
+ }
+
++#ifdef __VSX__
+ #ifndef EIGEN_COMP_CLANG
+ template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED
+ Packet4f prsqrt<Packet4f>(const Packet4f& x)
+ {
+ return vec_rsqrt(x);
+ }
+-#endif
+
+-#ifdef __VSX__
+-#ifndef EIGEN_COMP_CLANG
+ template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED
+ Packet2d prsqrt<Packet2d>(const Packet2d& x)
+ {
+@@ -74,6 +72,26 @@
+ {
+ return pexp_double(_x);
+ }
++
++template<> EIGEN_STRONG_INLINE Packet8bf psqrt<Packet8bf> (const Packet8bf& a){
++ BF16_TO_F32_UNARY_OP_WRAPPER(psqrt<Packet4f>, a);
++}
++
++#ifndef EIGEN_COMP_CLANG
++template<> EIGEN_STRONG_INLINE Packet8bf prsqrt<Packet8bf> (const Packet8bf& a){
++ BF16_TO_F32_UNARY_OP_WRAPPER(prsqrt<Packet4f>, a);
++}
++#endif
++#else
++template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS
++Packet4f psqrt<Packet4f>(const Packet4f& x)
++{
++ Packet4f a;
++ for (Index i = 0; i < packet_traits<float>::size; i++) {
++ a[i] = numext::sqrt(x[i]);
++ }
++ return a;
++}
+ #endif
+
+ // Hyperbolic Tangent function.
+--- a/Eigen/src/Core/arch/AltiVec/PacketMath.h
++++ b/Eigen/src/Core/arch/AltiVec/PacketMath.h
+@@ -175,16 +175,19 @@
+ #else
+ HasRsqrt = 0,
+ #endif
++ HasTanh = EIGEN_FAST_MATH,
++ HasErf = EIGEN_FAST_MATH,
++ HasRint = 1,
+ #else
+ HasSqrt = 0,
+ HasRsqrt = 0,
+- HasTanh = EIGEN_FAST_MATH,
+- HasErf = EIGEN_FAST_MATH,
++ HasTanh = 0,
++ HasErf = 0,
++ HasRint = 0,
+ #endif
+ HasRound = 1,
+ HasFloor = 1,
+ HasCeil = 1,
+- HasRint = 1,
+ HasNegate = 1,
+ HasBlend = 1
+ };
+@@ -217,16 +220,17 @@
+ #else
+ HasRsqrt = 0,
+ #endif
++ HasRint = 1,
+ #else
+ HasSqrt = 0,
+ HasRsqrt = 0,
+- HasTanh = EIGEN_FAST_MATH,
+- HasErf = EIGEN_FAST_MATH,
++ HasRint = 0,
+ #endif
++ HasTanh = 0,
++ HasErf = 0,
+ HasRound = 1,
+ HasFloor = 1,
+ HasCeil = 1,
+- HasRint = 1,
+ HasNegate = 1,
+ HasBlend = 1
+ };
+@@ -872,19 +876,29 @@
+ return vec_nor(c,c);
+ }
+
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet4i pcmp_le(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmple(a,b)); }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet4i pcmp_lt(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmplt(a,b)); }
+ template<> EIGEN_STRONG_INLINE Packet4i pcmp_eq(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmpeq(a,b)); }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet8s pcmp_le(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmple(a,b)); }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet8s pcmp_lt(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmplt(a,b)); }
+ template<> EIGEN_STRONG_INLINE Packet8s pcmp_eq(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmpeq(a,b)); }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet8us pcmp_le(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmple(a,b)); }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet8us pcmp_lt(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmplt(a,b)); }
+ template<> EIGEN_STRONG_INLINE Packet8us pcmp_eq(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmpeq(a,b)); }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet16c pcmp_le(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmple(a,b)); }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet16c pcmp_lt(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmplt(a,b)); }
+ template<> EIGEN_STRONG_INLINE Packet16c pcmp_eq(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmpeq(a,b)); }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet16uc pcmp_le(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmple(a,b)); }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet16uc pcmp_lt(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmplt(a,b)); }
+ template<> EIGEN_STRONG_INLINE Packet16uc pcmp_eq(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmpeq(a,b)); }
+
+@@ -937,6 +951,7 @@
+ }
+ template<> EIGEN_STRONG_INLINE Packet4f pceil<Packet4f>(const Packet4f& a) { return vec_ceil(a); }
+ template<> EIGEN_STRONG_INLINE Packet4f pfloor<Packet4f>(const Packet4f& a) { return vec_floor(a); }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet4f print<Packet4f>(const Packet4f& a)
+ {
+ Packet4f res;
+@@ -947,6 +962,7 @@
+
+ return res;
+ }
++#endif
+
+ template<typename Packet> EIGEN_STRONG_INLINE Packet ploadu_common(const __UNPACK_TYPE__(Packet)* from)
+ {
+@@ -1341,12 +1357,6 @@
+ BF16_TO_F32_BINARY_OP_WRAPPER(psub<Packet4f>, a, b);
+ }
+
+-template<> EIGEN_STRONG_INLINE Packet8bf psqrt<Packet8bf> (const Packet8bf& a){
+- BF16_TO_F32_UNARY_OP_WRAPPER(vec_sqrt, a);
+-}
+-template<> EIGEN_STRONG_INLINE Packet8bf prsqrt<Packet8bf> (const Packet8bf& a){
+- BF16_TO_F32_UNARY_OP_WRAPPER(prsqrt<Packet4f>, a);
+-}
+ template<> EIGEN_STRONG_INLINE Packet8bf pexp<Packet8bf> (const Packet8bf& a){
+ BF16_TO_F32_UNARY_OP_WRAPPER(pexp_float, a);
+ }
+@@ -1390,9 +1400,11 @@
+ template<> EIGEN_STRONG_INLINE Packet8bf pround<Packet8bf> (const Packet8bf& a){
+ BF16_TO_F32_UNARY_OP_WRAPPER(pround<Packet4f>, a);
+ }
++#ifdef __VSX__
+ template<> EIGEN_STRONG_INLINE Packet8bf print<Packet8bf> (const Packet8bf& a){
+ BF16_TO_F32_UNARY_OP_WRAPPER(print<Packet4f>, a);
+ }
++#endif
+ template<> EIGEN_STRONG_INLINE Packet8bf pmadd(const Packet8bf& a, const Packet8bf& b, const Packet8bf& c) {
+ Packet4f a_even = Bf16ToF32Even(a);
+ Packet4f a_odd = Bf16ToF32Odd(a);
diff --git a/dev-cpp/eigen/files/eigen-3.4.1-fix-Werror-undef.patch b/dev-cpp/eigen/files/eigen-3.4.1-fix-Werror-undef.patch
deleted file mode 100644
index 9772616e9c16..000000000000
--- a/dev-cpp/eigen/files/eigen-3.4.1-fix-Werror-undef.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Fixes likely mistake in conflict resolution of upstream backport
-of a73970a8640330c4908d68ef9257fd31a4fdae9.
-
-EIGEN_COMP_CLANG_STRICT does not exist in 3.4 branch and was not
-touched in the original commit.
-
-Gentoo-bug: https://bugs.gentoo.org/976285
-
---- a/Eigen/src/Core/util/ConfigureVectorization.h
-+++ b/Eigen/src/Core/util/ConfigureVectorization.h
-@@ -445,7 +445,7 @@
- #define EIGEN_VECTORIZE_FMA
- #endif
-
--#if defined(__F16C__) && !defined(EIGEN_GPUCC) && (!EIGEN_COMP_CLANG_STRICT || EIGEN_COMP_CLANG>=380)
-+#if defined(__F16C__) && (!defined(EIGEN_GPUCC) && (!defined(EIGEN_COMP_CLANG) || EIGEN_COMP_CLANG>=380))
- // We can use the optimized fp16 to float and float to fp16 conversion routines
- #define EIGEN_HAS_FP16_C
-
diff --git a/dev-cpp/gtkmm/Manifest b/dev-cpp/gtkmm/Manifest
index cc7e573286b0..61683b28171e 100644
--- a/dev-cpp/gtkmm/Manifest
+++ b/dev-cpp/gtkmm/Manifest
@@ -1,4 +1,4 @@
DIST gtkmm-2.24.5.tar.xz 12022024 BLAKE2B 6b2bca9fe6ad81cd956e1f3cc3140bc503b78386cf3931c8eeac08c8b2a08c73450bdbb703d1febaee67cdf834093ff5e89790f866357190822613a68a596ad3 SHA512 c50e52830977c37181439f4b82a30ac8bead0cf9022d2bec8225f8dc33e08414f863bf67056e1938fae8f888c09a5a6d757acc011fa9331a78caa6bb626dd51e
DIST gtkmm-3.24.11.tar.xz 13455720 BLAKE2B 17cc7a77f2a7799fe67e1d439ee60d053e985566d3b0f630231c2d7a8883fabbb54254970d1cd29b0ddaad66355e5336df6f769724df7b87814d2e9641f782e9 SHA512 018d4c9b598956c71da030a00ba8097fe0215667ddcad6f76b7f0049ef0f7dd6239bb863058f2b138de79a3e7bc6e700f5c34cc9dea230af3e60148614928abc
+DIST gtkmm-4.18.0.tar.xz 17063416 BLAKE2B bb2a369a80f5e817481e8e3563f97001aa98ec0170b5cfb82ec66d47574c8475be7da14079bf8c75818a2557eece1ada73e050f2300fd990c7d11186379b9514 SHA512 a5469ae03eda2fab466c3a1ac9790debec0715beab8bdfd02283ebea83c7c742ea04fc3bf800f18f171250b7b2441b0d8c4681f350284de9a791760ed6cd5d4c
DIST gtkmm-4.20.0.tar.xz 17463040 BLAKE2B bda16860ead2073b07d4badc21b5dbb377fde84fe2da10557975b816176571017331ee195a3e9679b83ac90b09c6b22460b88a51ce0b1620048b3d6c13db9f83 SHA512 c65bfa6dc0788cdd698c25e3b29861cb47aa0cd9c8bd3632005958ecd5a8d92802fc8ecaf498bcfc281a9b4035e751eeb6c05fa351f4b14c063870218127dabd
-DIST gtkmm-4.22.0.tar.xz 17841520 BLAKE2B e62d9f42db283601a5f01d7fc9e0844a650c882c0b95a98c0757e3e6088606d015bd1aba73abd36d38d19d2fdb368e7ec0ee8a9562fc3e6e4747f714c119c610 SHA512 b0c4b77249dcf2d917919d43b04e41b819507ab34366aa4bbffd53bbe5edbb195081d69ae4996a116573a5d4e6d2affbbbc62d4ff986dcbf95045c5d64284d7f
diff --git a/dev-cpp/gtkmm/gtkmm-4.22.0.ebuild b/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild
index 9a1fa044e2de..68ae57c68576 100644
--- a/dev-cpp/gtkmm/gtkmm-4.22.0.ebuild
+++ b/dev-cpp/gtkmm/gtkmm-4.18.0-r1.ebuild
@@ -11,23 +11,19 @@ HOMEPAGE="https://gtkmm.gnome.org/en/index.html"
LICENSE="LGPL-2.1+"
SLOT="4.0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
-IUSE="gtk-doc test vulkan"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="gtk-doc test"
RESTRICT="!test? ( test )"
-PATCHES=(
- "${FILESDIR}"/MR-101.patch
-)
-
RDEPEND="
>=dev-cpp/glibmm-2.75.0:2.68[gtk-doc?]
- >=gui-libs/gtk-4.22.0:4[vulkan?]
+ >=gui-libs/gtk-4.17.5:4
+ <gui-libs/gtk-4.20:4
>=dev-cpp/cairomm-1.15.4:1.16[gtk-doc?]
>=dev-cpp/pangomm-2.50.0:2.48[gtk-doc?]
>=x11-libs/gdk-pixbuf-2.35.5:2
>=media-libs/libepoxy-1.2
- vulkan? ( media-libs/vulkan-loader )
"
DEPEND="
${RDEPEND}
@@ -55,11 +51,3 @@ src_configure() {
src_test() {
virtx meson_src_test
}
-
-src_install() {
- meson_src_install
- if use gtk-doc; then
- mkdir -p "${ED}"/usr/share/gtk-doc/html/ || die
- mv "${ED}"/usr/share/doc/gtkmm-4.0 "${ED}"/usr/share/gtk-doc/html/ || die
- fi
-}
diff --git a/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild b/dev-cpp/gtkmm/gtkmm-4.20.0.ebuild
new file mode 100644
index 000000000000..5e1456a151d0
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-4.20.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_{13..14} )
+inherit gnome.org meson python-any-r1 virtualx
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://gtkmm.gnome.org/en/index.html"
+
+LICENSE="LGPL-2.1+"
+SLOT="4.0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
+IUSE="gtk-doc test"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.75.0:2.68[gtk-doc?]
+ >=gui-libs/gtk-4.19.4:4
+ >=dev-cpp/cairomm-1.15.4:1.16[gtk-doc?]
+ >=dev-cpp/pangomm-2.50.0:2.48[gtk-doc?]
+ >=x11-libs/gdk-pixbuf-2.35.5:2
+ >=media-libs/libepoxy-1.2
+"
+DEPEND="
+ ${RDEPEND}
+ gtk-doc? ( dev-libs/libsigc++:3 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ gtk-doc? (
+ app-text/doxygen[dot]
+ dev-lang/perl
+ dev-libs/libxslt
+ )
+ ${PYTHON_DEPS}
+"
+
+src_configure() {
+ local emesonargs=(
+ -Dbuild-demos=false
+ $(meson_use gtk-doc build-documentation)
+ $(meson_use test build-tests)
+ )
+ meson_src_configure
+}
+
+src_test() {
+ virtx meson_src_test
+}
diff --git a/dev-cpp/libcmis/Manifest b/dev-cpp/libcmis/Manifest
index bd4d8d991931..5782264ca687 100644
--- a/dev-cpp/libcmis/Manifest
+++ b/dev-cpp/libcmis/Manifest
@@ -1 +1,2 @@
+DIST libcmis-0.6.2.tar.gz 296218 BLAKE2B faad99e09b2721cd56b0d47d2a9589e06222ee7881006e936d0943d5e8afc588fcda721ef282ad7d55c785407a9885c90cbce1d172ca012c4a13cc51da0c15b6 SHA512 a75a69623f34149c39c382c357396b8dd719d589a78424fc3b5d9de84ffbf3f889bcaaed9a01f91b491a507c189347d3d9252db238fddbb522ff8ba9ce7b5ade
DIST libcmis-0.6.3.tar.gz 302198 BLAKE2B f5772991c06ce728c728b6e7d670eaf36ee5fb42e6e655cd1b40a6385d4896076346f499b4e6a8278a0b6f4d065da6ef48a6e720b7a4f5ebbb7d9782952acfba SHA512 28f9fdc51ff87496ad827289ab86f124d79d832176e63e2e92eb21e55294720e6a3a2ba847ebf9a81c7db4ef19e0defe03edf5d181e2386920f8d7451287f9e1
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch
new file mode 100644
index 000000000000..5d2a9ba404e3
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-boost-1.86.patch
@@ -0,0 +1,47 @@
+https://github.com/tdf/libcmis/issues/67
+https://github.com/tdf/libcmis/pull/68
+
+From dfcb642a491f7ec2ae52e3e83d31bb6cdf3670c2 Mon Sep 17 00:00:00 2001
+From: David Seifert <soap@gentoo.org>
+Date: Sat, 31 Aug 2024 12:39:39 +0200
+Subject: [PATCH] Fix boost 1.86 breakage
+
+The fix does not break building against <1.86 since we're now accessing the
+object representation of the return value.
+
+Fixes #67
+---
+ src/libcmis/xml-utils.cxx | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/src/libcmis/xml-utils.cxx b/src/libcmis/xml-utils.cxx
+index e487d17..cdf088f 100644
+--- a/src/libcmis/xml-utils.cxx
++++ b/src/libcmis/xml-utils.cxx
+@@ -531,16 +531,22 @@ namespace libcmis
+ boost::uuids::detail::sha1 sha1;
+ sha1.process_bytes( str.c_str(), str.size() );
+
+- unsigned int digest[5];
++ // on boost < 1.86.0, digest_type is typedef'd as unsigned int[5]
++ // on boost >= 1.86.0, digest_type is typedef'd as unsigned char[20]
++ boost::uuids::detail::sha1::digest_type digest;
+ sha1.get_digest( digest );
+
++ // by using a pointer to unsigned char, we can read the
++ // object representation of either typedef.
++ const unsigned char* ptr = reinterpret_cast<const unsigned char*>( digest );
++
+ stringstream out;
+- // Setup writing mode. Every number must produce eight
++ // Setup writing mode. Every number must produce two
+ // hexadecimal digits, including possible leading 0s, or we get
+ // less than 40 digits as result.
+ out << hex << setfill('0') << right;
+- for ( int i = 0; i < 5; ++i )
+- out << setw(8) << digest[i];
++ for ( int i = 0; i < sizeof( digest ); ++ptr, ++i )
++ out << setw(2) << static_cast<int>( *ptr );
+ return out.str();
+ }
+
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
new file mode 100644
index 000000000000..d098f80212c3
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-fix-sha1-test.patch
@@ -0,0 +1,45 @@
+https://github.com/tdf/libcmis/pull/69
+https://github.com/tdf/libcmis/commit/0753091be57edae28655e43a9bae9e4c4e414117
+
+From 0753091be57edae28655e43a9bae9e4c4e414117 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolan.mcnamara@collabora.com>
+Date: Fri, 13 Sep 2024 16:02:13 +0100
+Subject: [PATCH] sha1 test fails with older boost
+
+<fridrich> 1) test: XmlTest::sha1Test (F) line: 588 test-xmlutils.cxx
+<fridrich> equality assertion failed
+<fridrich> - Expected: f7ff9e8b7bb2e09b70935a5d785e0cc5d9d0abf0
+<fridrich> - Actual : 8b9efff79be0b27b5d5a9370c50c5e78f0abd0d9
+---
+ src/libcmis/xml-utils.cxx | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/src/libcmis/xml-utils.cxx b/src/libcmis/xml-utils.cxx
+index cdf088f..3568ec6 100644
+--- a/src/libcmis/xml-utils.cxx
++++ b/src/libcmis/xml-utils.cxx
+@@ -536,17 +536,19 @@ namespace libcmis
+ boost::uuids::detail::sha1::digest_type digest;
+ sha1.get_digest( digest );
+
+- // by using a pointer to unsigned char, we can read the
+- // object representation of either typedef.
+- const unsigned char* ptr = reinterpret_cast<const unsigned char*>( digest );
+-
+ stringstream out;
+ // Setup writing mode. Every number must produce two
+ // hexadecimal digits, including possible leading 0s, or we get
+ // less than 40 digits as result.
+ out << hex << setfill('0') << right;
+- for ( int i = 0; i < sizeof( digest ); ++ptr, ++i )
++#if BOOST_VERSION < 108600
++ for ( int i = 0; i < 5; ++i )
++ out << setw(8) << digest[i];
++#else
++ const unsigned char* ptr = reinterpret_cast<const unsigned char*>( digest );
++ for ( size_t i = 0; i < sizeof( digest ); ++ptr, ++i )
+ out << setw(2) << static_cast<int>( *ptr );
++#endif
+ return out.str();
+ }
+
diff --git a/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch b/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch
new file mode 100644
index 000000000000..a00fb863dcb5
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.6.2-libxml2-2.12.patch
@@ -0,0 +1,26 @@
+From 72618e63433c7243e4d9e79a638f19a09402eecc Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 21 Nov 2023 23:10:07 +0100
+Subject: [PATCH] Fix build with libxml2-2.12 (missing include)
+
+See also: https://github.com/tdf/libcmis/issues/51
+Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
+---
+ inc/libcmis/xml-utils.hxx | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/inc/libcmis/xml-utils.hxx b/inc/libcmis/xml-utils.hxx
+index 929385e..9bd99ae 100644
+--- a/inc/libcmis/xml-utils.hxx
++++ b/inc/libcmis/xml-utils.hxx
+@@ -34,6 +34,7 @@
+ #include <string>
+
+ #include <boost/date_time.hpp>
++#include <libxml/parser.h>
+ #include <libxml/tree.h>
+ #include <libxml/xpathInternals.h>
+ #include <libxml/xmlwriter.h>
+--
+2.43.0
+
diff --git a/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild b/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
new file mode 100644
index 000000000000..7b096ee60f1b
--- /dev/null
+++ b/dev-cpp/libcmis/libcmis-0.6.2-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/tdf/libcmis.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/tdf/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv x86"
+fi
+inherit autotools flag-o-matic
+
+DESCRIPTION="C++ client library for the CMIS interface"
+HOMEPAGE="https://github.com/tdf/libcmis"
+
+LICENSE="|| ( GPL-2 LGPL-2 MPL-1.1 )"
+SLOT="0/0.6"
+IUSE="man test tools"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ dev-libs/boost:=
+ dev-libs/libxml2:=
+ net-misc/curl
+"
+RDEPEND="
+ ${DEPEND}
+ !dev-cpp/libcmis:0.5
+"
+BDEPEND="
+ virtual/pkgconfig
+ man? (
+ app-text/docbook2X
+ dev-libs/libxslt
+ )
+ test? (
+ dev-util/cppunit
+ )
+"
+
+PATCHES=(
+ # https://github.com/tdf/libcmis/pull/52
+ "${FILESDIR}"/${P}-libxml2-2.12.patch # bug 917523
+ # https://github.com/tdf/libcmis/pull/68
+ "${FILESDIR}"/${P}-boost-1.86.patch
+ # https://github.com/tdf/libcmis/pull/69
+ "${FILESDIR}"/${P}-fix-sha1-test.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ # ODR issues in tests w/ curl
+ filter-lto
+
+ local myeconfargs=(
+ --disable-werror
+ $(use_with man)
+ $(use_enable test tests)
+ $(use_enable tools client)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/libcmis/libcmis-0.6.3.ebuild b/dev-cpp/libcmis/libcmis-0.6.3.ebuild
index 960196b4cef2..72873b0204b5 100644
--- a/dev-cpp/libcmis/libcmis-0.6.3.ebuild
+++ b/dev-cpp/libcmis/libcmis-0.6.3.ebuild
@@ -8,7 +8,7 @@ if [[ ${PV} == *9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/tdf/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="amd64 ~arm arm64 ~loong ppc64 ~riscv x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
fi
inherit autotools flag-o-matic
diff --git a/dev-cpp/msgpack-cxx/Manifest b/dev-cpp/msgpack-cxx/Manifest
index 838bc847b26b..4228a9f0c6a0 100644
--- a/dev-cpp/msgpack-cxx/Manifest
+++ b/dev-cpp/msgpack-cxx/Manifest
@@ -1,3 +1,2 @@
DIST msgpack-cxx-6.1.1.tar.gz 476459 BLAKE2B 6ec940af9b9e02d892c5f118791015baa6b12baa60c77aaf2ff867e8836f21b4f16c436ce448cdfeb7dc8f8a9356a75f3ac829eba9059ca5d78f42a4393700ff SHA512 6a3df977e7a9c8b50feb7c88cff7a78814d1d41d2f7a657dd37d6cfcfe24f44746f40a6dd46bd5dba7ea59d94b9e40c2baa62c08d9b02168ac93c58cbff3becc
DIST msgpack-cxx-8.0.0.tar.gz 480783 BLAKE2B c01a39012dd137e6bd767a350f21e8ddd37d982f01cc95f2b6bf7582823ea79603de332241a77871ba6d7387243cdfe7a514378d591011120dac2b01cc7c9b04 SHA512 8d3a20b04a201a7095556ab901f55ca0ca664940c4b7bebcdddd405fbb3f052fb38720e49aec5259a5513f2c272b9584d8b108139fb7de7d63438ee4258cdfd9
-DIST msgpack-cxx-9.0.0.tar.gz 483566 BLAKE2B 3798e5b323159a35e2b85b12466e27482435282f8f172d6f4d41194a215b47a35daf0c4b0156f5b391ac1802595e274fc0a284e7d9ed7d484db1205e2c7f8927 SHA512 5e230b60d0d62486b51dedb9d6ff81a2f2fcea6345fc803cb19540df665c6889776b1059945a391395e2a7068b25104a7af472347bd5acfbf48b93c7393c2cd0
diff --git a/dev-cpp/msgpack-cxx/msgpack-cxx-9.0.0.ebuild b/dev-cpp/msgpack-cxx/msgpack-cxx-9.0.0.ebuild
deleted file mode 100644
index 6b11b844aa48..000000000000
--- a/dev-cpp/msgpack-cxx/msgpack-cxx-9.0.0.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2026 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="MessagePack for C++"
-HOMEPAGE="https://msgpack.org/ https://github.com/msgpack/msgpack-c/"
-SRC_URI="https://github.com/msgpack/msgpack-c/releases/download/cpp-${PV}/${P}.tar.gz"
-
-LICENSE="Boost-1.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
-IUSE="+boost doc examples test"
-REQUIRED_USE="test? ( boost )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- boost? ( dev-libs/boost[context] )
- !<dev-libs/msgpack-5.0.0
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- doc? ( app-text/doxygen[dot] )
- test? ( virtual/zlib )
-"
-
-src_configure() {
- local mycmakeargs=(
- -DMSGPACK_BUILD_EXAMPLES=OFF
- -DMSGPACK_CXX17=ON
- -DMSGPACK_BUILD_TESTS="$(usex test)"
- -DMSGPACK_USE_BOOST="$(usex boost)"
- -DMSGPACK_USE_X3_PARSE="$(usex boost)"
- )
-
- cmake_src_configure
-}
-
-src_compile() {
- cmake_src_compile
-
- use doc && cmake_build doxygen
-}
-
-src_install() {
- if use doc; then
- local HTML_DOCS=( "${BUILD_DIR}"/doc_cpp/html/. )
- fi
-
- if use examples; then
- docinto examples
- dodoc -r example/.
- docompress -x /usr/share/doc/${PF}/examples
- fi
-
- cmake_src_install
-}