Gentoo Archives: gentoo-portage-dev

From: George Shapovalov <george@g.o>
To: gentoo-portage-dev@l.g.o
Subject: [gentoo-portage-dev] dep resolution weirdness
Date: Sat, 17 Feb 2007 11:31:39
Message-Id: 200702171230.32262.george@gentoo.org
1 Hi guys.
2
3 I am quite confused by the following:
4
5 aldar ~ # emerge -puD world --tree
6 These are the packages that would be merged, in reverse order:
7 Calculating world dependencies... done!
8 [nomerge ] dev-ada/cbind-6.0
9 [nomerge ] virtual/gnat-4.1
10 [ebuild UD] dev-lang/gnat-gcc-4.1.1 [4.1.2]
11
12 aldar ~ # emerge -puD cbind --tree
13 These are the packages that would be merged, in reverse order:
14 Calculating dependencies... done!
15
16 (or, for that matter:
17 aldar gnat # e -puD virtual/gnat
18 These are the packages that would be merged, in order:
19 Calculating dependencies... done!
20 )
21
22 Here, cbind is an Ada library that needs gnat - the Ada compiler, so it
23 DEPENDs (and RDEPENDs) on a virtual which provides the choice of gnat-gcc or
24 gnat-gpl compiler(s). These can be installed side by side (using
25 toolchain-like eclass to manage location and eselect module for choosing the
26 active one) whence the virtual.
27
28 The relevant dependency lines are here:
29 dev-ada/cbind: DEPEND="virtual/gnat"
30
31 virtual/gnat-4.1:
32 RDEPEND="=dev-lang/gnat-gcc-4.1*"
33 DEPEND=""
34
35 (and virtual/gnat-3.4:
36 RDEPEND="|| ( =dev-lang/gnat-gcc-3.4*
37 =dev-lang/gnat-gpl-3.4* )"
38 DEPEND=""
39 although it looks like this one is not considered in this particular case)
40
41
42 As you see emerge -uD world wants to downgrade gnat for some reason (which is
43 wrong), while emerge -uD cbind (or any other Ada library that has similar
44 dependencies) does not (which is right).
45
46 So, what is going on here? Is this a problem with specifying dependencies? If
47 so, how should I fix this? Is this a portage bug? A stale cache? I would like
48 to get this fixed or worked around in some way apparently :). (I just issued
49 an update to gnat-gcc and hit this. Oh, and ~dev-lang/gnat-gcc-4.1 as RDEPEND
50 in virtual/gnat does not work at all (just, as I understand, it should not)).
51
52 George
53 --
54 gentoo-portage-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-portage-dev] dep resolution weirdness Marius Mauch <genone@g.o>