commit:     44a1ca9abacc91b2cc08e00adcc82d5bb3fcd70f
Author:     KotoishiHeart <trakrailysurely <AT> danceylove <DOT> net>
AuthorDate: Sat Jan 17 13:24:02 2026 +0000
Commit:     Jaco Kroon <jkroon <AT> gentoo <DOT> org>
CommitDate: Mon Jan 19 13:58:00 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=44a1ca9a

dev-cpp/aws-sdk-cpp: pass BUILD_ONLY to cmake

By default, aws-sdk-cpp enables most services, which leads to very long
build times.  Pass -DBUILD_ONLY to cmake so only the required service
groups are built, making the enabled components configurable and
significantly reducing build time.

Signed-off-by: KotoishiHeart <trakrailysurely <AT> danceylove.net>
Part-of: https://github.com/gentoo/gentoo/pull/45416
Closes: https://github.com/gentoo/gentoo/pull/45416
Signed-off-by: Jaco Kroon <jkroon <AT> gentoo.org>

 dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.686-r1.ebuild | 69 ++++++++++++++++++++++
 dev-cpp/aws-sdk-cpp/metadata.xml                   | 16 +++++
 2 files changed, 85 insertions(+)

diff --git a/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.686-r1.ebuild 
b/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.686-r1.ebuild
new file mode 100644
index 000000000000..8a7c3131507e
--- /dev/null
+++ b/dev-cpp/aws-sdk-cpp/aws-sdk-cpp-1.11.686-r1.ebuild
@@ -0,0 +1,69 @@
+# 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]="athena;cleanrooms;cleanroomsml;datazone;entityresolution;finspace;finspace-data;firehose;forecast;forecastquery;glue;lakeformation;lookoutequipment;machinelearning;quicksight;repostspace;timestream-influxdb;amp;amplify;amplifybackend;amplifyuibuilder;omics;kafka;kafkaconnect;dsql;appflow;appintegrations;cloudsearch;cloudsearchdomain;databrew;dataexchange;datapipeline;kinesisanalytics;kinesisanalyticsv2;mwaa;pi"
+       
[compute]="application-autoscaling;autoscaling;autoscaling-plans;batch;compute-optimizer;ec2;ec2-instance-connect;ecr;ecr-public;ecs;eks;elasticbeanstalk;elasticmapreduce;emr-containers;emr-serverless;lambda;lightsail;outposts;simspaceweaver;elasticfilesystem;elasticloadbalancing;elasticloadbalancingv2;m2;s3outposts;imagebuilder;swf;apigateway;apigatewaymanagementapi;apigatewayv2;apprunner;appstream;appsync;eks-auth;states;workspaces-instances"
+       
[database]="docdb;docdb-elastic;dynamodb;dynamodbstreams;keyspaces;memorydb;neptune;neptune-graph;neptunedata;opensearch;opensearchserverless;rds;rds-data;redshift;redshift-data;redshift-serverless;sdb;timestream-influxdb;timestream-query;timestream-write;osis;clouddirectory;dax;elasticache;es;odb"
+       
[devops]="codeartifact;codebuild;codecatalyst;codecommit;codeconnections;codedeploy;codeguru-reviewer;codeguru-security;codepipeline;codestar-connections;codestar-notifications;devicefarm;gamelift;gameliftstreams;proton;artifact;b2bi;serverlessrepo;schemas;mturk-requester;cloud9;codeguruprofiler;keyspacesstreams"
+       
[iot]="greengrass;greengrassv2;groundstation;iot;iot-data;iot-jobs-data;iot-managed-integrations;iotanalytics;iotdeviceadvisor;iotevents;iotevents-data;iotfleetwise;iotsitewise;iotthingsgraph;iottwinmaker;iotwireless;iotsecuretunneling;panorama"
+       
[management]="account;appconfig;appconfigdata;applicationcostprofiler;application-insights;application-signals;budgets;billing;billingconductor;ce;cloudcontrol;cloudformation;cloudtrail;cloudtrail-data;controltower;cur;fms;license-manager;license-manager-linux-subscriptions;license-manager-user-subscriptions;marketplace-agreement;marketplace-catalog;marketplace-deployment;marketplace-entitlement;marketplace-reporting;marketplacecommerceanalytics;organizations;ram;resource-explorer-2;resource-groups;resourcegroupstaggingapi;savingsplans;service-quotas;servicecatalog;servicecatalog-appregistry;support;support-app;taxsettings;AWSMigrationHub;cost-optimization-hub;dlm;dms;drs;mgn;migration-hub-refactor-spaces;migrationhub-config;migrationhuborchestrator;migrationhubstrategy;launch-wizard;meteringmarketplace;supplychain;workspaces;workspaces-thin-client;workspaces-web;bcm-data-exports;bcm-pricing-calculator;controlcatalog;discovery;invoicing;partnercentral-selling;ssm;ssm-contacts;ssm-g
 uiconnect;ssm-incidents;ssm-quicksetup;ssm-sap;mpa"
+       
[media]="elastictranscoder;ivs;ivs-realtime;kinesis;kinesis-video-archived-media;kinesis-video-media;kinesis-video-signaling;kinesis-video-webrtc-storage;mediaconvert;mediatailor;voice-id;deadline;evs;ivschat;kinesisvideo;mediaconnect;medialive"
+       
[messaging]="chatbot;chime;chime-sdk-identity;chime-sdk-media-pipelines;chime-sdk-meetings;chime-sdk-messaging;chime-sdk-voice;connect;connect-contact-lens;connectcampaigns;connectcampaignsv2;connectcases;connectparticipant;customer-profiles;eventbridge;notifications;notificationscontacts;pinpoint;pinpoint-email;pinpoint-sms-voice-v2;pipes;rum;scheduler;sns;sqs;mailmanager;sms-voice;socialmessaging;wisdom;workmail;workmailmessageflow;mq;sesv2;email"
+       
[ml]="bedrock;bedrock-agent;bedrock-agent-runtime;bedrock-data-automation;bedrock-data-automation-runtime;bedrock-runtime;comprehend;comprehendmedical;frauddetector;personalize;personalize-events;personalize-runtime;rekognition;sagemaker;sagemaker-a2i-runtime;sagemaker-edge;sagemaker-featurestore-runtime;sagemaker-geospatial;sagemaker-metrics;sagemaker-runtime;textract;transcribe;transcribestreaming;translate;lex;lex-models;lexv2-models;lexv2-runtime;qapps;qbusiness;medical-imaging;kendra;kendra-ranking;polly;qconnect"
+       
[monitor]="config;devops-guru;health;inspector;inspector-scan;inspector2;internetmonitor;logs;monitoring;observabilityadmin;resiliencehub;security-ir;synthetics;trustedadvisor;wellarchitected;xray;fis;grafana;healthlake;oam;aiops;appfabric;evidently"
+       
[networking]="appmesh;cloudfront;cloudfront-keyvaluestore;directconnect;globalaccelerator;location;network-firewall;networkflowmonitor;networkmanager;networkmonitor;route53;route53-recovery-cluster;route53-recovery-control-config;route53-recovery-readiness;route53domains;route53profiles;route53resolver;vpc-lattice;geo-maps;geo-places;geo-routes;tnb;arc-zonal-shift;servicediscovery"
+       
[security]="accessanalyzer;acm;acm-pca;codeguru-security;guardduty;iam;macie2;payment-cryptography;payment-cryptography-data;rolesanywhere;secretsmanager;securityhub;securitylake;shield;signer;verifiedpermissions;waf;waf-regional;wafv2;auditmanager;cloudhsm;cloudhsmv2;detective;directory-service-data;pca-connector-ad;pca-connector-scep;pcs;sso;sso-admin"
+       
[storage]="backup;backup-gateway;datasync;ebs;fsx;glacier;mediapackage;mediapackage-vod;mediapackagev2;mediastore;mediastore-data;s3;s3-crt;snow-device-management;snowball;storagegateway;workdocs;awstransfer;importexport;rbin;s3tables;backupsearch;s3control"
+       
[uncategorized]="ds;evs;braket;freetier;managedblockchain;managedblockchain-query"
+)
+
+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/metadata.xml b/dev-cpp/aws-sdk-cpp/metadata.xml
index c8f3247dc498..e8ecaccb602d 100644
--- a/dev-cpp/aws-sdk-cpp/metadata.xml
+++ b/dev-cpp/aws-sdk-cpp/metadata.xml
@@ -5,6 +5,22 @@
                <email>[email protected]</email>
                <name>Jaco Kroon</name>
        </maintainer>
+       <use>
+               <flag name="storage">Adds access to services related to object, 
block, and file storage.</flag>
+               <flag name="compute">Adds access to Compute and Auto Scaling 
related services.</flag>
+               <flag name="networking">Adds access to network and CDN related 
services.</flag>
+               <flag name="database">Adds access functionality to RDB, NoSQL, 
TimeStream, and Ledger related services.</flag>
+               <flag name="analytics">Adds access to big data and analysis 
related services.</flag>
+               <flag name="messaging">Adds access to messaging and 
notification services.</flag>
+               <flag name="monitor">Adds access to monitoring and operation 
related services.</flag>
+               <flag name="security">Adds access to services related to ID 
management and security auditing.</flag>
+               <flag name="ml">Adds access to machine learning and AI related 
services.</flag>
+               <flag name="iot">Adds access to IoT and edge services.</flag>
+               <flag name="media">Adds access to media processing related 
services.</flag>
+               <flag name="devops">Adds access to CI/CD and developer related 
services.</flag>
+               <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>
        <upstream>
                <remote-id type="github">aws/aws-sdk-cpp</remote-id>
        </upstream>

Reply via email to