Summary: | dev-lang/python 3.1.4-r3 and 2.7.2-r3 sys-libs/readline is conditional on ncurses? | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Walter Dnes <waltdnes> |
Component: | Core - Dependencies | Assignee: | Python Gentoo Team <python> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | mgorny |
Priority: | Normal | ||
Version: | 2.1 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Walter Dnes
2012-01-31 16:07:11 UTC
RDEPEND appears to be correct, so could you try again after emerging: sys-apps/portage-2.1.10.44 I keyworded and emerged sys-apps/portage-2.1.10.44 and went through the cycle again. No change from before. I did some more looking at the ebuild, and I think I've found the problem. "readline" is mentioned in 2 places in the python-2.7.2-r3 ebuild, and presumably the other ebuilds. The 2 places are in IUSE and RDEPEND. In RDEPEND it's... ############################################# ncurses? ( >=sys-libs/ncurses-5.2 readline? ( >=sys-libs/readline-4.1 ) ) ############################################# IANAD (I Am Not A Developer) but I read that fragment as 2 nested IF's... IF "ncurses" flag pull in sys-libs/ncurses IF "readline" flag pull in sys-libs/readline END IF END IF In other words, portage won't even try to pull in sys-libs/readline unless the "ncurses" flag is set. This seems to over-ride the IUSE line. I changed the line in /etc/portage/package.use to... dev-lang/python ncurses readline ssl xml ...and it pulls in sys-libs/readline. Problem found. I need to set both "ncurses" and "readline". Readline gets pulled in, and is now protected against depclean. Question, did the developers really intend to allow readline only if ncurses was present, or was this an error? This looks really suspicious, and still applies to newest ebuilds. In any case, we should either move the dep, or update module conditional to match. The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6c4829483f69298a2cd83f02a44ef24680ebb2c commit b6c4829483f69298a2cd83f02a44ef24680ebb2c Author: Michał Górny <mgorny@gentoo.org> AuthorDate: 2018-04-20 21:37:56 +0000 Commit: Michał Górny <mgorny@gentoo.org> CommitDate: 2018-04-20 21:41:44 +0000 dev-lang/python: Move readline dep outside 'ncurses?' Move the dependency on readline to be independent of ncurses. Looking at the code, there is no apparent reason for putting it inside 'ncurses?' block. Furthermore, it is inconsistent with how the readline module build is controlled. Closes: https://bugs.gentoo.org/401651 dev-lang/python/python-2.7.14-r1.ebuild | 6 ++---- dev-lang/python/python-3.4.6-r1.ebuild | 6 ++---- dev-lang/python/python-3.5.5.ebuild | 6 ++---- dev-lang/python/python-3.6.5.ebuild | 6 ++---- 4 files changed, 8 insertions(+), 16 deletions(-) |