Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 688780 - net-misc/aria2[-bittorrent,gnutls,nettle] links against dev-libs/nettle but the ebuild's dependencies do not reflect that
Summary: net-misc/aria2[-bittorrent,gnutls,nettle] links against dev-libs/nettle but t...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Michał Górny
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-06-26 22:04 UTC by Lars Wendler (Polynomial-C) (RETIRED)
Modified: 2019-06-27 08:18 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2019-06-26 22:04:44 UTC
After today's upgrade from dev-libs/nettle-3.4.1 to nettle-3.5 which came with a .so version bump, preserved-libs kicked in and told me to rebuild net-misc/aria2:

!!! existing preserved libs:
>>> package: dev-libs/nettle-3.5
 *  - /usr/lib64/libnettle.so.6
 *  - /usr/lib64/libnettle.so.6.5
 *      used by /usr/lib64/libaria2.so.0.0.0 (net-misc/aria2-1.34.0-r1)

The ebuild seems to only depend on nettle if USE="bittorrent gnutls nettle" is set but I do have the "bittorrent" USE flag disabled. 
So I suppose this has changed with some new aria2 release and needs adjustment in the ebuild's dependencies.


# emerge --info aria2
Portage 2.3.67 (python 3.6.8-final-0, default/linux/amd64/17.1/desktop/plasma, gcc-8.3.0, glibc-2.29-r2, 4.19.56 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.19.56-x86_64-AMD_Opteron-tm-_Processor_6328-with-gentoo-2.6
KiB Mem:   131999296 total, 108784720 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Wed, 26 Jun 2019 18:00:01 +0000
Head commit of repository gentoo: 4698035892f923ace42de2f4359bde1c408b61f3
Timestamp of repository poly-c: Wed, 26 Jun 2019 12:30:52 +0000
sh dash 0.5.10.2
ld GNU ld (Gentoo 2.32 p2) 2.32.0
app-shells/bash:          5.0_p7::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.0::gentoo
dev-lang/python:          2.7.16::gentoo, 3.6.8::gentoo, 3.7.3::gentoo
dev-util/cmake:           3.15.0_rc2::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::poly-c
sys-apps/openrc:          0.41.2::gentoo
sys-apps/sandbox:         2.17::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.13.4-r2::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            8.3.0-r1::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.14-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r2::gentoo
Repositories:

gentoo
    location: /var/portage
    sync-type: rsync
    sync-uri: rsync://192.168.0.254/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: --new-compress
    sync-rsync-verify-max-age: 24

poly-c
    location: /usr/local/portage
    masters: gentoo
    priority: 0

Installed sets: @system
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -mtune=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-3.0"
CONFIG_PROTECT_MASK="/etc/X11/Sessions /etc/X11/app-defaults /etc/X11/xinit /etc/bonobo-activation /etc/ca-certificates /etc/ca-certificates.conf /etc/dbus-1 /etc/dconf /etc/env.d /etc/fonts /etc/fonts/fonts.conf /etc/foomatic /etc/games /etc/gconf /etc/gentoo-release /etc/gimp /etc/gnome-vfs-2.0 /etc/gre.d /etc/gtk-2.0 /etc/hp /etc/hsqldb /etc/htdig /etc/init.d /etc/iproute2 /etc/java-config-2 /etc/lftp /etc/logrotate.d /etc/ntop /etc/opt /etc/pango /etc/profile.d /etc/qt4 /etc/revdep-rebuild /etc/sandbox.d /etc/sasl2 /etc/sensors.d /etc/sgml /etc/sound /etc/ssl /etc/ssmtp /etc/t1lib /etc/terminfo /etc/vbox /etc/xdg /etc/xinetd.d /etc/xml"
CXXFLAGS="-march=native -mtune=native -O2 -pipe"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical --with-bdeps=y --misspell-suggestions=n --autounmask=n --quiet-build=n --verbose-slot-rebuilds=n --fuzzy-search=n --dynamic-deps=n --changed-deps-report=y"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN 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-docompress binpkg-dostrip binpkg-logs buildpkg config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
INSTALL_MASK="/etc/systemd /home/ftp /lib/systemd /lib32/systemd /lib64/systemd /usr/lib/systemd /usr/lib32/systemd /usr/lib64/systemd /etc/init.d/functions.sh /usr/lib/modules-load.d/virtualbox.conf /usr/lib64/firefox/browser/features/firefox@getpocket.com.xpi"
LANG="C.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--as-needed"
LINGUAS="de de@1901 en"
MAKEOPTS="-j16"
PKGDIR="/opt/portage/packages"
PORTAGE_BZIP2_COMMAND="lbzip2"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--new-compress"
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="3dnow 3dnowext X a52 aac aacs acl acpi activities alsa amd64 berkdb bluetooth bluray branding brotli bzip2 c++0x cairo caps cdda cdr cli crypt css cups cxx dbus declarative dri dts dvd dvdr elogind emboss encode exif faac ffmpeg flac gcrypt gdbm gif glamor gmp gnutls gstreamer gtk iconv icu idn imagemagick inotify jpeg jpeg2k kde kipi kwallet lame lcms libcanberra libnotify libtirpc linguas_de lzma mac mad matroska midi mmap mmx mmxext mng mp3 mp4 mpeg mpfr multilib ncurses nls nptl nsplugin ogg openal opengl openmp opus pam pango pcre pdf phonon plasma png policykit ppds pulseaudio qml qt5 quicktime readline rtmp sdl seccomp slang speex spell split-usr sse sse2 ssl startup-notification svg theora threads tiff truetype twolame udev udisks unicode upower usb vaapi vcd vdpau vorbis vpx vulkan webp widgets wxwidgets x264 x265 xattr xcb xcomposite xinerama xml xv xvid xvmc zlib zsh-completion zstd" 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="access_compat alias auth_basic auth_digest authn_anon authn_core authn_default authn_file authz_core authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dir env file_cache filter headers http2 include info log_config mime mime_magic rewrite socache_shmcb status unique_id unixd userdir vhost_alias" CPU_FLAGS_X86="aes avx fma3 fma4 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 xop" CURL_SSL="gnutls" ELIBC="glibc" GRUB_PLATFORMS="pc" INPUT_DEVICES="libinput" KERNEL="linux" L10N="de de-1901 en" LIBREOFFICE_EXTENSIONS="pdfimport presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python3_6 python3_7" RUBY_TARGETS="ruby25 ruby26" USERLAND="GNU" VIDEO_CARDS="amdgpu radeonsi"
Unset:  CC, CPPFLAGS, CTARGET, CXX, LC_ALL, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

=================================================================
                        Package Settings
=================================================================

net-misc/aria2-1.34.0-r1::gentoo was built with the following:
USE="-adns -bittorrent gnutls -jemalloc -libuv libxml2 -metalink nettle nls -scripts -sqlite -ssh ssl -tcmalloc -test xmlrpc" ABI_X86="(64)"
FEATURES="distlocks xattr protect-owned preserve-libs sign config-protect-if-modified ipc-sandbox binpkg-docompress assume-digests multilib-strict network-sandbox buildpkg binpkg-dostrip fixlafiles unmerge-orphans merge-sync unmerge-logs strict usersync sfperms unknown-features-warn pid-sandbox sandbox ebuild-locks usersandbox userpriv news userfetch binpkg-logs parallel-fetch"
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-06-27 06:25:40 UTC
Actually, this is probably our mistake.  The logic is very complex there, and I'm not sure if we can actually express it sanely with USE flags.

Basically, we're talking about two main options: ssl & md, that have some partially overlapping providers.

ssl: openssl || (gnutls + (nettle || gcrypt))
md: openssl || nettle || gcrypt || builtin

With ssl being optional, and md not (because of builtin fallback).
Comment 2 Larry the Git Cow gentoo-dev 2019-06-27 08:18:00 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=01d7096ca1ab0c79e5bbf442188d13ab6aadefff

commit 01d7096ca1ab0c79e5bbf442188d13ab6aadefff
Author:     Michał Górny <mgorny@gentoo.org>
AuthorDate: 2019-06-27 07:31:26 +0000
Commit:     Michał Górny <mgorny@gentoo.org>
CommitDate: 2019-06-27 08:17:49 +0000

    net-misc/aria2: Attempt to correct crazy crypto-lib logic
    
    Attempt to rework crypto-lib dependencies to correctly indicate
    libraries needed for program operation.  The new logic involves using
    OpenSSL only with USE=ssl+!gnutls but using it both for TLS & MD.
    In all other circumstances, GnuTLS is used for TLS (if USE=ssl),
    and nettle/libgcrypt is used for MD.  The latter is needed independently
    of bittorrent support; it only affects additional libgmp dependency.
    
    Closes: https://bugs.gentoo.org/688780
    Signed-off-by: Michał Górny <mgorny@gentoo.org>

 net-misc/aria2/aria2-1.34.0-r2.ebuild | 184 ++++++++++++++++++++++++++++++++++
 net-misc/aria2/metadata.xml           |   3 +-
 2 files changed, 186 insertions(+), 1 deletion(-)