Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 535782

Summary: net-libs/gnutls-3.3.10-r2 has many dependencies
Product: Gentoo Linux Reporter: Luke-Jr <luke-jr+gentoobugs>
Component: [OLD] LibraryAssignee: Crypto team [DISABLED] <crypto+disabled>
Status: RESOLVED DUPLICATE    
Severity: normal CC: alonbl, manday, nikoli, pinkbyte
Priority: Normal Keywords: LATER
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 498324    
Bug Blocks:    
Attachments: Patch for net-libs/gnutls/gnutls-3.3.11.ebuild
gnutls-3.3.10-r2.ebuild.patch (adds USE system-libopts)

Description Luke-Jr 2015-01-06 11:08:58 UTC
# USE='-* gmp python_targets_python3_3' armv7a-softfloat-linux-gnueabi-emerge -patv net-libs/gnutls

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[nomerge       ] virtual/perl-Data-Dumper-2.154.0 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]  perl-core/Data-Dumper-2.154.0 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]   dev-lang/perl-5.20.1-r4:0/5.20 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-berkdb -debug -doc -gdbm -ithreads" 
[nomerge       ]    app-admin/perl-cleaner-2.19 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]     sys-apps/portage-2.2.15 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(ipc) -build -doc -epydoc (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python3_3 (-pypy) -python2_7 -python3_4" 
[nomerge       ]      dev-lang/python-3.3.5-r1:3.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-build -doc -examples -gdbm (-hardened) -ipv6 -ncurses -readline -sqlite -ssl -threads -tk -wininst -xml" 
[ebuild  N     ]       app-admin/python-updater-0.13 to /usr/armv7a-softfloat-linux-gnueabi/ 11 KiB
[ebuild  N     ]    app-admin/perl-cleaner-2.19 to /usr/armv7a-softfloat-linux-gnueabi/ 7 KiB
[ebuild  N     ]     sys-apps/portage-2.2.15 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(ipc) -build -doc -epydoc (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python3_3 (-pypy) -python2_7 -python3_4" 887 KiB
[ebuild  N     ]      dev-lang/python-3.3.5-r1:3.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-build -doc -examples -gdbm (-hardened) -ipv6 -ncurses -readline -sqlite -ssl -threads -tk -wininst -xml" 0 KiB
[ebuild  N     ] net-libs/gnutls-3.3.11 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-crywrap -cxx (-dane) -doc -examples -guile -nls -pkcs11 -static-libs {-test} -zlib" LINGUAS="-cs -de -en -fi -fr -it -ms -nl -pl -sv -uk -vi -zh_CN" 6,032 KiB
[ebuild  N     ]  sys-devel/autogen-5.18.4 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-libopts -static-libs" 995 KiB
[ebuild  N     ]   dev-scheme/guile-1.8.8-r1:12 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-debug -debug-freelist -debug-malloc -deprecated -discouraged -emacs -networking -nls -regex -threads" 3,864 KiB
[ebuild  N     ]    sys-devel/libtool-2.4.4:2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-vanilla" 936 KiB
[ebuild  N     ]     sys-devel/automake-1.14.1:1.14 to /usr/armv7a-softfloat-linux-gnueabi/ 1,455 KiB
[ebuild  N     ]      sys-devel/autoconf-2.69:2.5 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-emacs (-multislot)" 0 KiB
[nomerge       ] sys-devel/automake-1.14.1:1.14 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]  dev-lang/perl-5.20.1-r4:0/5.20 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-berkdb -debug -doc -gdbm -ithreads" 
[ebuild  N     ]   virtual/perl-File-Temp-0.230.400-r2 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[ebuild  N     ]    perl-core/File-Temp-0.230.400-r1 to /usr/armv7a-softfloat-linux-gnueabi/ 59 KiB
[ebuild  N     ]   virtual/perl-Data-Dumper-2.154.0 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[ebuild  N     ]    perl-core/Data-Dumper-2.154.0 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[ebuild  N     ]     dev-lang/perl-5.20.1-r4:0/5.20 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-berkdb -debug -doc -gdbm -ithreads" 13,370 KiB
[nomerge       ] dev-scheme/guile-1.8.8-r1:12 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-debug -debug-freelist -debug-malloc -deprecated -discouraged -emacs -networking -nls -regex -threads" 
[ebuild  N     ]  sys-devel/gettext-0.19.4 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-acl -cvs -cxx -doc -emacs -git -java -ncurses -nls -openmp -static-libs" 17,302 KiB
[ebuild  N     ]   virtual/libiconv-0-r1 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[nomerge       ] dev-lang/python-3.3.5-r1:3.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-build -doc -examples -gdbm (-hardened) -ipv6 -ncurses -readline -sqlite -ssl -threads -tk -wininst -xml" 
[ebuild  N     ]  virtual/libffi-3.0.13-r1 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[ebuild  N     ]   dev-libs/libffi-3.2.1 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-debug -pax_kernel -static-libs {-test}" 919 KiB
[ebuild  N     ]  virtual/libintl-0-r1 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[nomerge       ] app-admin/python-updater-0.13 to /usr/armv7a-softfloat-linux-gnueabi/
[ebuild  N     ]  sys-apps/gentoo-functions-0.8 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[nomerge       ] dev-lang/python-3.3.5-r1:3.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-build -doc -examples -gdbm (-hardened) -ipv6 -ncurses -readline -sqlite -ssl -threads -tk -wininst -xml" 
[ebuild  N     ]  app-admin/eselect-python-20140125 to /usr/armv7a-softfloat-linux-gnueabi/ 71 KiB
[ebuild  N     ]  app-misc/mime-types-9 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[nomerge       ] app-admin/python-updater-0.13 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]  sys-apps/portage-2.2.15 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(ipc) -build -doc -epydoc (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python3_3 (-pypy) -python2_7 -python3_4" 
[ebuild  N     ]   dev-lang/python-exec-2.0.1-r1:2 to /usr/armv7a-softfloat-linux-gnueabi/ PYTHON_TARGETS="(python2_7) (python3_3) (python3_4) (-jython2_5) (-jython2_7) (-pypy) (-pypy3)" 0 KiB
[ebuild  N     ]   app-misc/pax-utils-0.9.2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-caps -python" 660 KiB
[ebuild  N     ]   sys-apps/sandbox-2.6-r1 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(-multilib)" 0 KiB
[nomerge       ] app-admin/perl-cleaner-2.19 to /usr/armv7a-softfloat-linux-gnueabi/
[ebuild  N     ]  app-portage/portage-utils-0.53 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-nls -static" 0 KiB
[nomerge       ] sys-devel/automake-1.14.1:1.14 to /usr/armv7a-softfloat-linux-gnueabi/
[ebuild  N     ]  sys-devel/automake-wrapper-9 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[nomerge       ] sys-devel/libtool-2.4.4:2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-vanilla" 
[nomerge       ]  sys-devel/autoconf-2.69:2.5 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-emacs (-multislot)" 
[ebuild  N     ]   sys-devel/m4-1.4.17 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-examples" 1,123 KiB
[ebuild  N     ]   sys-devel/autoconf-wrapper-13 to /usr/armv7a-softfloat-linux-gnueabi/ 0 KiB
[ebuild  N     ]  dev-libs/libltdl-2.4.4 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-static-libs" 0 KiB
[nomerge       ] sys-apps/portage-2.2.15 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(ipc) -build -doc -epydoc (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python3_3 (-pypy) -python2_7 -python3_4" 
[ebuild  N     ]  app-admin/eselect-1.4.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-doc -emacs -vim-syntax" 0 KiB
[nomerge       ] sys-devel/gettext-0.19.4 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-acl -cvs -cxx -doc -emacs -git -java -ncurses -nls -openmp -static-libs" 
[ebuild  N     ]  dev-libs/libxml2-2.9.2:2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-debug -examples -icu -ipv6 -lzma -python -readline -static-libs {-test}" PYTHON_TARGETS="python3_3 -python2_7 -python3_4" 0 KiB
[nomerge       ] app-admin/eselect-python-20140125 to /usr/armv7a-softfloat-linux-gnueabi/
[nomerge       ]  app-admin/eselect-1.4.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-doc -emacs -vim-syntax" 
[ebuild  N     ]   sys-apps/file-5.22 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-python -static-libs -zlib" PYTHON_TARGETS="python3_3 -python2_7 -python3_4" 716 KiB
[nomerge       ] dev-lang/python-3.3.5-r1:3.3 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-build -doc -examples -gdbm (-hardened) -ipv6 -ncurses -readline -sqlite -ssl -threads -tk -wininst -xml" 
[ebuild  N     ]  app-arch/xz-utils-5.2.0 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-nls -static-libs -threads" 1,412 KiB
[nomerge       ] sys-apps/portage-2.2.15 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(ipc) -build -doc -epydoc (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python3_3 (-pypy) -python2_7 -python3_4" 
[ebuild  N     ]  net-misc/rsync-3.1.1 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-acl -iconv -ipv6 -static -xattr" 870 KiB
[ebuild  N     ]   dev-libs/popt-1.16-r2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-nls -static-libs" 0 KiB
[ebuild  N     ]  app-shells/bash-4.3_p33 to /usr/armv7a-softfloat-linux-gnueabi/ USE="(readline) (-afs) -bashlogger -examples -mem-scramble -net -nls -plugins -vanilla" 7,979 KiB
[ebuild  N     ]   sys-libs/readline-6.3_p8-r1 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-static-libs" 3 KiB
[ebuild  N     ]  sys-apps/sed-4.2.2 to /usr/armv7a-softfloat-linux-gnueabi/ USE="-acl -nls (-selinux) -static" 0 KiB
[nomerge       ] sys-devel/automake-1.14.1:1.14 to /usr/armv7a-softfloat-linux-gnueabi/
[ebuild  N     ]  sys-devel/gnuconfig-20140728 to /usr/armv7a-softfloat-linux-gnueabi/ 45 KiB
[nomerge       ] app-admin/perl-cleaner-2.19 to /usr/armv7a-softfloat-linux-gnueabi/
[ebuild  N     ]  sys-apps/coreutils-8.23 to /usr/armv7a-softfloat-linux-gnueabi/ USE="gmp -acl -caps -multicall -nls (-selinux) -static -vanilla -xattr" 5,298 KiB

Total: 42 packages (42 new), Size of downloads: 64,002 KiB
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-06 11:41:14 UTC
What issue would that be?
Comment 2 Luke-Jr 2015-01-06 11:55:21 UTC
(In reply to Jeroen Roovers from comment #1)
> What issue would that be?

The majority of these shouldn't be dependencies, and it doesn't make sense to install on a cross-environment.
Comment 3 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-06 18:30:02 UTC
It needs tools to build which you can remove those after emerging gnutls using emerge --depclean.
Comment 4 Luke-Jr 2015-01-06 18:35:12 UTC
(In reply to Jeroen Roovers from comment #3)
> It needs tools to build which you can remove those after emerging gnutls
> using emerge --depclean.

It's not even possible to cross-build all these dependencies. They exist on the host system.
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2015-01-07 07:57:52 UTC
(In reply to Luke-Jr from comment #0)
> # USE='-* gmp python_targets_python3_3'
> armv7a-softfloat-linux-gnueabi-emerge -patv net-libs/gnutls

You'll just have to get smart about it and perhaps not set global USE flags when you don't need them. For instance, setting USE=python_targets_python3_3 for net-libs/gnutls doesn't make sense here. But emerge will gladly set it for you and then present you with all the deps that USE flag pulls in.

Now please stop reopening this bug report. This is not a support forum. We have forums.gentoo.org for that.
Comment 6 Luke-Jr 2015-01-07 12:04:02 UTC
Created attachment 393400 [details, diff]
Patch for net-libs/gnutls/gnutls-3.3.11.ebuild

(In reply to Jeroen Roovers from comment #5)
> (In reply to Luke-Jr from comment #0)
> > # USE='-* gmp python_targets_python3_3'
> > armv7a-softfloat-linux-gnueabi-emerge -patv net-libs/gnutls
> 
> You'll just have to get smart about it and perhaps not set global USE flags
> when you don't need them. For instance, setting USE=python_targets_python3_3
> for net-libs/gnutls doesn't make sense here. But emerge will gladly set it
> for you and then present you with all the deps that USE flag pulls in.

The whole point of that was to show the dep tree with virtually all USE flags disabled. Portage fails to build a dep tree entirely without gmp and python_targets_python3_3 due to sys-apps/portage's REQUIRED_USE.

> Now please stop reopening this bug report. This is not a support forum. We
> have forums.gentoo.org for that.

Funny, I thought this was a place for getting bugs addressed. If you don't want to think about this bug, please pass it on to someone who cares about making things work. Right now, it is literally *impossible* to emerge gnutls for cross-compiled targets.

After spending another hour or so investigating this, it appears there are a few possible solutions:

Solution 1: build gnutls with `make bin_PROGRAMS=` if USE=-tools (confirmed this works without autogen, and without using a bundled copy); this doesn't fix the problem for those who do actually want tools. I am attaching an ebuild patch that does just that, and works (you may want to remove the embedded-libopts neutering for the production ebuild).

Solution 2: figure out how to get autogen to build without guile (as the copy embedded in gnutls does) - this looks difficult

Solution 3: fix autogen's dependencies to only require guile on the host system, not cross-compiled for the target
Comment 7 Nikoli 2015-02-24 14:58:29 UTC
The bug is valid, this regression was introduced in this commit (adds sys-devel/autogen as non optional RDEPEND and DEPEND):
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-libs/gnutls/gnutls-3.1.6.ebuild?hideattic=0&r1=1.3&r2=1.4


Several gnutls cli tools need libopts: gnutls build system has '--enable-local-libopts' switch which allows to choose whether internal copy is used or shared system:
a) internal copy is used:
$ equery s gnutls
 * net-libs/gnutls-3.3.10-r2
         Total files : 1041
         Total size  : 6.09 MiB
b) shared system copy is used:
$ equery s gnutls
 * net-libs/gnutls-3.3.10-r2
         Total files : 1041
         Total size  : 5.36 MiB
gnutls has at least 8 (sic!) development packages as non optional RDEPEND:
sys-devel/autoconf-wrapper-13
sys-devel/automake-wrapper-9
sys-devel/autoconf-2.69
sys-devel/automake-1.13.4
sys-devel/libtool-2.4.4
sys-devel/gettext-0.19.3
dev-scheme/guile-1.8.8-r1
sys-devel/autogen-5.18.1

Total size of these packages is 16 MiB.


I prefer to have only minimal number of required packages installed in my systems:
a) if system is not using binhost, it has build deps and dev packages installed only when updating: after update i run 'emerge --depclean --with-bdeps=n -qa'
b) if system is using binhost, then it _never_ has build deps and dev packages installed

So i definitely do not like this antifeature of new stable gnutls-3.

The best solution would be extracting libopts from sys-devel/autogen to separate dev-libs/libopts package like it was already done for sys-devel/libtool and dev-libs/libltdl.
Until it is done i think it is safe to use internal copy of libopts: 
1) libopts is not used in gnutls libs, only in cli tools.
2) autogen is not adobe-flash: it is not updated every week for replacing dozens of vulnerabilities. New autogen versions are marked stable every year or even several years.

I talked to alonbl: he is fine with using separate dev-libs/libopts packages, but refuses to use internal copy. May be 'system-libopts' USE is good compromise?
Comment 8 Nikoli 2015-02-24 15:01:46 UTC
Created attachment 397416 [details, diff]
gnutls-3.3.10-r2.ebuild.patch (adds USE system-libopts)

Attached patch works fine for me: tests work fine when USE system-libopts is enabled and when disabled. When system-libopts is enabled installed files are exactly the same as when using not patched ebuild from portage tree.
Comment 9 Alon Bar-Lev (RETIRED) gentoo-dev 2015-02-24 15:02:47 UTC

*** This bug has been marked as a duplicate of bug 498324 ***
Comment 10 Sergey Popov gentoo-dev 2015-02-24 15:29:29 UTC
<QA hat>
This is NOT duplicate of bug #498324, but it depends on it, reopening
</QA hat>
Comment 11 Alon Bar-Lev (RETIRED) gentoo-dev 2015-02-24 15:31:02 UTC
(In reply to Sergey Popov from comment #10)
> <QA hat>
> This is NOT duplicate of bug #498324, but it depends on it, reopening
> </QA hat>

you rather I close this as WONTFIX?
Comment 12 Sergey Popov gentoo-dev 2015-02-24 15:31:06 UTC
*** Bug 540038 has been marked as a duplicate of this bug. ***
Comment 13 Nikoli 2015-02-24 15:42:46 UTC
Alon, why exactly you do not want to add USE system-libopts?
Comment 14 Alon Bar-Lev (RETIRED) gentoo-dev 2015-08-19 08:59:42 UTC
nothing will happen here, no use to keep open, when bug#498324 will be resolved gnutls will use system libopts.

*** This bug has been marked as a duplicate of bug 498324 ***