Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 665540 - dev-libs/aws-sdk-cpp-1.5.17 does not respect USE flags?
Summary: dev-libs/aws-sdk-cpp-1.5.17 does not respect USE flags?
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Amit Prakash Ambasta
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks:
 
Reported: 2018-09-09 06:28 UTC by augustin
Modified: 2019-09-20 15:36 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,125.71 KB, text/x-log)
2018-10-04 12:03 UTC, Amit Prakash Ambasta
Details
build.log: all gets compiled (build.log,248.53 KB, text/x-log)
2018-10-06 08:05 UTC, augustin
Details
build environment (environment,118.65 KB, text/plain)
2018-10-06 08:07 UTC, augustin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description augustin 2018-09-09 06:28:09 UTC
In package.use, I have:
dev-libs/aws-sdk-cpp aws_targets_polly

The following command confirms that amazon polly is the only package set to be emerged:
# equery uses aws-sdk-cpp
+ - aws_targets_polly                        : SDK Support for AWS polly

Yet, when I emerge the package:
1) absolutely everything appears to be compiled.
2) even though I have 8GB of RAM (4GB being the minimum required), the compilation takes so much resources that it fails, at around 30%, after 30 minutes, and my 8GB memory being exhausted.

I cloned the repository from upstream.
I did:
aws-sdk-cpp/build/ $ cmake -DBUILD_ONLY="polly" ..
and it compiled in about 2 minutes only, without problem.


I had a look at the content of aws-sdk-cpp-1.5.17.ebuild. I only partially understand the ebuild syntax, but I am not familiar will all the intricacies, but it appears to me that the ebuild does not respect the use flags, and compiles everything regardless of USE flags.
Comment 1 augustin 2018-09-09 06:33:04 UTC
As an aside, version 1.6.7 was released 2 days ago, and it fixes at least one Amazon Polly bug on Linux:  https://github.com/aws/aws-sdk-cpp/issues/950 so a version bump with the fix would be appropriate.
Comment 2 Amit Prakash Ambasta 2018-10-04 12:03:38 UTC
Created attachment 549230 [details]
build.log

Could you please attach your build.log?

I am unable to reproduce it locally as specified in the build log locally
Comment 3 augustin 2018-10-05 03:43:14 UTC
Thank you for looking into it and for your time.

The difficulty is that each time I tried to emerge it, my whole computer ran out of resources (memory) and completely froze. I'll arrange a convenient time to do a full test and provide the requested information.
Comment 4 Amit Prakash Ambasta 2018-10-05 04:29:49 UTC
You shouldn't need to completely emerge the package. Feel free to cancel the emerge once compilation actually begins i.e. you see the %age marks like so

[  1%] Building CXX object aws-cpp-sdk-core/CMakeFiles/aws-cpp-sdk-core.dir/source/AmazonWebServiceRequest.cpp.o


I am more interested in the configuration flags.
Comment 5 augustin 2018-10-06 08:04:07 UTC
Ok, thanks. It's easier this way.

# cat /etc/portage/package.use/amazon_polly 
dev-libs/aws-sdk-cpp aws_targets_polly


# equery u dev-libs/aws-sdk-cpp
The list is long but the only one set is:
 + - aws_targets_polly                        : SDK Support for AWS polly

# emerge -a dev-libs/aws-sdk-cpp
[ebuild  N    ~] dev-libs/aws-sdk-cpp-1.5.17  USE="aws_targets_polly  -aws_targets_AWSMigrationHub -aws_targets_access-management -aws_targets_acm -aws_targets_acm-pca -aws_targets_alexaforbusiness -aws_targets_apigateway -aws_targets_application-autoscaling -aws_targets_appstream -aws_targets_appsync -aws_targets_athena -aws_targets_autoscaling -aws_targets_autoscaling-plans -aws_targets_batch -aws_targets_budgets -aws_targets_ce -aws_targets_cloud9 -aws_targets_clouddirectory -aws_targets_cloudformation -aws_targets_cloudfront -aws_targets_cloudhsm -aws_targets_cloudhsmv2 -aws_targets_cloudsearch -aws_targets_cloudsearchdomain -aws_targets_cloudtrail -aws_targets_codebuild -aws_targets_codecommit -aws_targets_codedeploy -aws_targets_codepipeline -aws_targets_codestar -aws_targets_cognito-identity -aws_targets_cognito-idp -aws_targets_cognito-sync -aws_targets_comprehend -aws_targets_config -aws_targets_connect -aws_targets_core -aws_targets_cur -aws_targets_datapipeline -aws_targets_dax -aws_targets_devicefarm -aws_targets_directconnect -aws_targets_discovery -aws_targets_dms -aws_targets_ds -aws_targets_dynamodb -aws_targets_dynamodbstreams -aws_targets_ec2 -aws_targets_ecr -aws_targets_ecs -aws_targets_eks -aws_targets_elasticache -aws_targets_elasticbeanstalk -aws_targets_elasticfilesystem -aws_targets_elasticloadbalancing -aws_targets_elasticloadbalancingv2 -aws_targets_elasticmapreduce -aws_targets_elastictranscoder -aws_targets_email -aws_targets_es -aws_targets_events -aws_targets_firehose -aws_targets_fms -aws_targets_gamelift -aws_targets_glacier -aws_targets_glue -aws_targets_greengrass -aws_targets_guardduty -aws_targets_health -aws_targets_iam -aws_targets_identity-management -aws_targets_importexport -aws_targets_inspector -aws_targets_iot -aws_targets_iot-data -aws_targets_iot-jobs-data -aws_targets_iot1click-devices -aws_targets_iot1click-projects -aws_targets_iotanalytics -aws_targets_kinesis -aws_targets_kinesis-video-archived-media -aws_targets_kinesis-video-media -aws_targets_kinesisanalytics -aws_targets_kinesisvideo -aws_targets_kms -aws_targets_lambda -aws_targets_lex -aws_targets_lex-models -aws_targets_lightsail -aws_targets_logs -aws_targets_machinelearning -aws_targets_macie -aws_targets_marketplace-entitlement -aws_targets_marketplacecommerceanalytics -aws_targets_mediaconvert -aws_targets_medialive -aws_targets_mediapackage -aws_targets_mediastore -aws_targets_mediastore-data -aws_targets_mediatailor -aws_targets_meteringmarketplace -aws_targets_mobile -aws_targets_mobileanalytics -aws_targets_monitoring -aws_targets_mq -aws_targets_mturk-requester -aws_targets_neptune -aws_targets_opsworks -aws_targets_opsworkscm -aws_targets_organizations -aws_targets_pi -aws_targets_pinpoint -aws_targets_pricing -aws_targets_queues -aws_targets_rds -aws_targets_redshift -aws_targets_rekognition -aws_targets_resource-groups -aws_targets_resourcegroupstaggingapi -aws_targets_route53 -aws_targets_route53domains -aws_targets_s3 -aws_targets_s3-encryption -aws_targets_sagemaker -aws_targets_sagemaker-runtime -aws_targets_sdb -aws_targets_secretsmanager -aws_targets_serverlessrepo -aws_targets_servicecatalog -aws_targets_servicediscovery -aws_targets_shield -aws_targets_sms -aws_targets_snowball -aws_targets_sns -aws_targets_sqs -aws_targets_ssm -aws_targets_states -aws_targets_storagegateway -aws_targets_sts -aws_targets_support -aws_targets_swf -aws_targets_text-to-speech -aws_targets_transcribe -aws_targets_transfer -aws_targets_translate -aws_targets_waf -aws_targets_waf-regional -aws_targets_workdocs -aws_targets_workmail -aws_targets_workspaces -aws_targets_xray -static-libs -test" 

Would you like to merge these packages? [Yes/No] y

>>> Emerging (1 of 1) dev-libs/aws-sdk-cpp-1.5.17::gentoo
>>> Downloading 'http://ftp.daum.net/gentoo/distfiles/aws-sdk-cpp-1.5.17.tar.gz'
--2018-10-06 15:53:22--  http://ftp.daum.net/gentoo/distfiles/aws-sdk-cpp-1.5.17.tar.gz
Resolving ftp.daum.net... 113.29.189.165
Connecting to ftp.daum.net|113.29.189.165|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://mirror.kakao.com/gentoo/distfiles/aws-sdk-cpp-1.5.17.tar.gz [following]
--2018-10-06 15:53:23--  http://mirror.kakao.com/gentoo/distfiles/aws-sdk-cpp-1.5.17.tar.gz
Resolving mirror.kakao.com... 113.29.189.165
Reusing existing connection to ftp.daum.net:80.
HTTP request sent, awaiting response... 200 OK
Length: 16424254 (16M) [application/octet-stream]
Saving to: ‘/mnt/old.kubuntu/scratch/portage/distfiles/aws-sdk-cpp-1.5.17.tar.gz’

/mnt/old.kubuntu/sc 100%[===================>]  15.66M   482KB/s    in 47s     

2018-10-06 15:54:11 (338 KB/s) - ‘/mnt/old.kubuntu/scratch/portage/distfiles/aws-sdk-cpp-1.5.17.tar.gz’ saved [16424254/16424254]

 * aws-sdk-cpp-1.5.17.tar.gz BLAKE2B SHA512 size ;-) ...


build.log attached.
Comment 6 augustin 2018-10-06 08:05:44 UTC
Created attachment 549494 [details]
build.log: all gets compiled
Comment 7 augustin 2018-10-06 08:07:21 UTC
Created attachment 549496 [details]
build environment

/var/tmp/portage/dev-libs/aws-sdk-cpp-1.5.17/temp/environment/
Comment 8 augustin 2018-10-06 08:08:30 UTC
# emerge --info
Portage 2.3.49 (python 3.6.5-final-0, default/linux/amd64/17.0/desktop/plasma, gcc-6.4.0, glibc-2.26-r7, 4.9.76-gentoo-r1-2018-mar-18 x86_64)
=================================================================
System uname: Linux-4.9.76-gentoo-r1-2018-mar-18-x86_64-AMD_Phenom-tm-_II_X4_955_Processor-with-gentoo-2.4.1
KiB Mem:     8163916 total,   1510224 free
KiB Swap:    2559996 total,   2559996 free
Timestamp of repository gentoo: Fri, 05 Oct 2018 19:00:01 +0000
Head commit of repository gentoo: 800e343c051242fbb58a47daa6ffad6120e9a4db
Head commit of repository dimibyte: 5b3092e10f16aacfee5e80e273e9a73043f635a3

sh bash 4.4_p12
ld GNU ld (Gentoo 2.30 p5) 2.30.0
app-shells/bash:          4.4_p12::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.24.3-r1::gentoo
dev-lang/python:          2.7.15::gentoo, 3.6.5::gentoo
dev-util/cmake:           3.9.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.4.1-r2::gentoo
sys-apps/openrc:          0.38.2::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.15.1-r2::gentoo
sys-devel/binutils:       2.30-r4::gentoo
sys-devel/gcc:            6.4.0-r1::gentoo, 7.3.0-r3::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.13::gentoo (virtual/os-headers)
sys-libs/glibc:           2.26-r7::gentoo
Repositories:

gentoo
    location: /mnt/old.kubuntu/scratch/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: 
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-max-age: 24

augustin-overlay
    location: /usr/local/portage
    masters: gentoo

dimibyte
    location: /var/db/git/dimibyte
    sync-type: git
    sync-uri: https://github.com/dimibyte/gentoo-overlay.git
    masters: gentoo

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/spool/munin-async/.ssh"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/apache2-php7.0/ext-active/ /etc/php/apache2-php7.2/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cgi-php7.2/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/php/cli-php7.0/ext-active/ /etc/php/cli-php7.2/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news nostrip parallel-fetch preserve-libs protect-owned sandbox sfperms split-elog split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.daum.net/gentoo http://ftp.iij.ad.jp/pub/linux/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_GB.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en en_GB en_US fr fr_FR zh_TW"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi activities alsa amd64 apache2 apm audit bash-completion berkdb bluetooth branding bzip2 cairo cdda cdr cjk cli consolekit crypt css cups curl cxx dbi dbus declarative dri dts dvd dvdr ebook emboss encode epub exif fam ffmpeg flac fortran gd gdbm gif gimp git glamor gpm gtk handbook hddtemp ibus iconv imagemagick inotify ipv6 jack jpeg kde kipi kontact kwallet lcms ldap libass libnotify libtirpc lm_sensors mad maildir matroska memlimit mng mobi modules mp3 mp4 mpeg mplayer multilib mysql mysqli ncurses nfs nls nptl nvidia ogg opengl openmp pam pango pcre pdf phonon plasma png policykit ppds python qml qt5 readline sdl seccomp spell ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vdpau vim-syntax vorbis widgets wxwidgets x264 xattr xcb xcomposite xfce xfconf xml xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon plan sheets stage words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" L10N="en en-GB en-US fr fr-FR zh-TW" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5 postgres10" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby23" USERLAND="GNU" VIDEO_CARDS="nvidia nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL,
Comment 9 Amit Prakash Ambasta 2018-10-08 06:44:30 UTC
Hi,

bgo doesn't allow me to confirm the issue but I have been able to reproduce it locally. Will attempt to push upstream patches today
Comment 10 Sven Eden 2019-08-16 14:54:57 UTC
Respecting the USE flags will be fixed with PR 12718
 (See: https://github.com/gentoo/gentoo/pull/12718 )

However, the amount of modules has grown since v1.5 of the SDK.

Could you please have a look and give your opinion where we could merge flags as modules belong together?
Comment 11 Larry the Git Cow gentoo-dev 2019-09-20 15:36:18 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f0337527131a568b6f3edfd66c60796e1fb23df

commit 0f0337527131a568b6f3edfd66c60796e1fb23df
Author:     Sven Eden <yamakuzure@gmx.net>
AuthorDate: 2019-08-15 16:25:29 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2019-09-20 15:23:33 +0000

    dev-libs/aws-sdk-cpp: Version bump to 1.7.178
    
    Closes: https://bugs.gentoo.org/666494
    Closes: https://bugs.gentoo.org/665540
    Signed-off-by: Sven Eden <yamakuzure@gmx.net>
    Bug: https://bugs.gentoo.org/666494
    Package-Manager: Portage-2.3.71, Repoman-2.3.17
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 dev-libs/aws-sdk-cpp/Manifest                   |   1 +
 dev-libs/aws-sdk-cpp/aws-sdk-cpp-1.7.178.ebuild | 150 +++++++++
 dev-libs/aws-sdk-cpp/metadata.xml               | 424 ++++++++++++++++++++++++
 3 files changed, 575 insertions(+)