Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 609180 - net-libs/gnutls-3.5.9 changed dependency from libidn to libidn2
Summary: net-libs/gnutls-3.5.9 changed dependency from libidn to libidn2
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Crypto team [DISABLED]
URL:
Whiteboard:
Keywords:
Depends on: 609188
Blocks: 610550
  Show dependency tree
 
Reported: 2017-02-12 23:18 UTC by Denis Sokolovsky
Modified: 2017-02-22 20:39 UTC (History)
3 users (show)

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 Denis Sokolovsky 2017-02-12 23:18:40 UTC
Package config file, shipped with net-libs/gnutls-3.5.9, state that gnutls depends on libidn2.

# tar -Oxf packages/net-libs/gnutls-3.5.8.tbz2 ./usr/lib64/pkgconfig/gnutls.pc
...
Version: 3.5.8
...
Requires.private: nettle, hogweed, libtasn1, libidn, zlib

#  tar -Oxf /packages/net-libs/gnutls-3.5.9.tbz2 ./usr/lib64/pkgconfig/gnutls.pc
...
Version: 3.5.9
...
Requires.private: nettle, hogweed, libtasn1, libidn2, zlib

Shared library also linked against libidn2:
# readelf -d /usr/lib64/libgnutls.so | grep libidn
 0x0000000000000001 (NEEDED)             Shared library: [libidn2.so.0]

P.S. My system have libidn2 because of "idn" use flag for wget and curl. But wget build now fails because libidn2 doesn't provide package configuration file.
Comment 1 Denis Sokolovsky 2017-02-12 23:39:33 UTC
Turns out that gnutls, if not explicitly specified, choose idn library by itself. So, instead of dependency change, an use flag can be added.
Comment 2 Thomas Deutschmann (RETIRED) gentoo-dev 2017-02-13 04:18:09 UTC
Probably more than just that, seeing package failures of net-misc/wget-1.19.1 (bug #609204) and ffmpeg-3.2.4 which are probably related to a bad pkg-config file:

 * Package:    media-video/ffmpeg-3.2.4
 * Repository: gentoo
 * Maintainer: media-video@gentoo.org
 * USE:        abi_x86_64 amd64 bzip2 cpu_flags_x86_aes cpu_flags_x86_mmx cpu_flags_x86_mmxext cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_sse4_2 cpu_flags_x86_ssse3 elibc_glibc encode fftools_aviocat fftools_cws2fws fftools_ffescape fftools_ffeval fftools_ffhash fftools_fourcc2pixfmt fftools_graph2dot fftools_ismindex fftools_pktdumper fftools_qt-faststart fftools_sidxindex fftools_trasher gnutls gpl hardcoded-tables iconv kernel_linux mp3 network postproc threads userland_GNU webp x264 x265 xvid zlib
 * FEATURES:   preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking ffmpeg-3.2.4.tar.bz2 to /var/tmp/portage/media-video/ffmpeg-3.2.4/work
>>> Source unpacked in /var/tmp/portage/media-video/ffmpeg-3.2.4/work
>>> Preparing source in /var/tmp/portage/media-video/ffmpeg-3.2.4/work/ffmpeg-3.2.4 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/media-video/ffmpeg-3.2.4/work/ffmpeg-3.2.4 ...
 * abi_x86_64.amd64: running multilib-minimal_abi_src_configure
/var/tmp/portage/media-video/ffmpeg-3.2.4/work/ffmpeg-3.2.4/configure --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --docdir=/usr/share/doc/ffmpeg-3.2.4/html --mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc --cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --optflags=-O2 -pipe -march=ivybridge -mtune=ivybridge --disable-static --enable-avfilter --enable-avresample --disable-stripping --disable-indev=v4l2 --disable-outdev=v4l2 --disable-indev=alsa --disable-indev=oss --disable-indev=jack --disable-outdev=alsa --disable-outdev=oss --disable-outdev=sdl --enable-bzlib --disable-runtime-cpudetect --disable-debug --disable-gcrypt --enable-gnutls --disable-gmp --enable-gpl --enable-hardcoded-tables --enable-iconv --disable-lzma --enable-network --disable-openssl --enable-postproc --disable-libsmbclient --disable-ffplay --disable-sdl2 --disable-vaapi --disable-vdpau --disable-xlib --disable-libxcb --disable-libxcb-shm --disable-libxcb-xfixes --enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394 --disable-libcaca --disable-openal --disable-opengl --disable-libv4l2 --disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb --disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-libcelt --disable-libgme --disable-libgsm --disable-mmal --disable-libmodplug --disable-libopus --disable-libilbc --disable-librtmp --disable-libssh --disable-libschroedinger --disable-libspeex --disable-libvorbis --disable-libvpx --disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-libebur128 --disable-libflite --disable-frei0r --disable-libfribidi --disable-fontconfig --disable-ladspa --disable-libass --disable-libfreetype --disable-librubberband --disable-libzimg --disable-libsoxr --enable-pthreads --disable-libvo-amrwbenc --enable-libmp3lame --disable-libkvazaar --disable-nvenc --disable-libopenh264 --disable-libsnappy --disable-libtheora --disable-libtwolame --disable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --disable-x11grab --disable-amd3dnow --disable-amd3dnowext --disable-avx --disable-avx2 --disable-fma3 --disable-fma4 --disable-xop --cpu=ivybridge --disable-doc --disable-htmlpages --enable-manpages
ERROR: gnutls not found using pkg-config



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

net-libs/gnutls-3.5.9::gentoo was built with the following:
USE="cxx dane idn nls openssl sslv3 tls-heartbeat tools zlib -doc -examples -guile -pkcs11 -sslv2 -static-libs -test -test-full -valgrind" ABI_X86="64 -32 -x32" LINGUAS="de en -cs -fi -fr -it -ms -nl -pl -sv -uk -vi -zh_CN"


media-video/ffmpeg-3.2.2::gentoo was built with the following:
USE="bzip2 encode gnutls gpl hardcoded-tables iconv mp3 network postproc threads webp x264 x265 xvid zlib -X -alsa (-altivec) -amr -amrenc (-armv5te) (-armv6) (-armv6t2) (-armvfp) -bluray -bs2b -cdio -celt -chromaprint -cpudetection -debug -doc -ebur128 -fdk -flite -fontconfig -frei0r -fribidi -gcrypt -gme -gmp -gsm -iec61883 -ieee1394 -jack -jpeg2k -kvazaar -ladspa -libass -libcaca -libilbc -librtmp -libsoxr -libv4l -lzma (-mipsdspr1) (-mipsdspr2) (-mipsfpu) (-mmal) -modplug (-neon) -nvenc -openal -opengl -openh264 -openssl -opus -oss -pic -pulseaudio -rubberband -samba -schroedinger -sdl -snappy -speex -ssh -static-libs -test -theora -truetype -twolame -v4l -vaapi -vdpau -vorbis -vpx -wavpack -xcb -zimg -zvbi" ABI_X86="64 -32 -x32" CPU_FLAGS_X86="aes mmx mmxext sse sse2 sse3 sse4_1 sse4_2 ssse3 -3dnow -3dnowext -avx -avx2 -fma3 -fma4 -xop" FFTOOLS="aviocat cws2fws ffescape ffeval ffhash fourcc2pixfmt graph2dot ismindex pktdumper qt-faststart sidxindex trasher"


# pkg-config --libs gnutls
-lgnutls


# pkg-config --print-errors gnutls
Package libidn2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `libidn2.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libidn2', required by 'gnutls', not found


So this is probably caused by =net-libs/gnutls-3.5.9.
Comment 3 Thomas Deutschmann (RETIRED) gentoo-dev 2017-02-13 04:30:36 UTC
Confirmed, once the missing pkg-config file for net-dns/libidn2 is there, all the build errors are gone.

net-libs/gnutls-3.5.9 will need to adjust RDEPS to catch automagic on libidn2.
Comment 4 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2017-02-13 08:17:22 UTC
commit 7ac93bc8a56d5bb481d4ebabb8ca3a2eddb0ea63
Author: Lars Wendler <polynomial-c@gentoo.org>
Date:   Mon Feb 13 09:15:40 2017

    net-libs/gnutls: Revbump to fix idn dependency (bug #609180)

    which has been changed from net-dns/libidn to net-dns/libidn2.

    Package-Manager: Portage-2.3.3, Repoman-2.3.1