Gentoo Archives: gentoo-dev

From: Ciaran McCreesh <ciaranm@×××××××.org>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Reliance upon || ( use? ( ) ) behaviour
Date: Sat, 24 Feb 2007 04:20:39
Message-Id: 20070224041704.5bcc6430@snowdrop
In Reply to: Re: [gentoo-dev] Reliance upon || ( use? ( ) ) behaviour by Jason Stubbs
1 On Sat, 24 Feb 2007 13:09:40 +0900 Jason Stubbs <jstubbs@g.o>
2 wrote:
3 | On Saturday 24 February 2007 12:34, Ciaran McCreesh wrote:
4 | > On Sat, 24 Feb 2007 12:27:35 +0900 Jason Stubbs <jstubbs@g.o>
5 | > wrote:
6 | > | For the 14 cases you mentioned that were making a mistake, they
7 | > | probably can be rewritten so as to force an install of the first
8 | > | matching package, but when that isn't what is wanted it becomes a
9 | > | bit of a headache.
10 | >
11 | > That should *always* be what's wanted. Packages should only alter
12 | > dependencies / build parameters based upon USE flags, not based upon
13 | > what else happens to be installed.
14 |
15 | Okay, I must be missing something here. If package foo can work with
16 | either bar or baz equily as well but not both, why should it force an
17 | artificial preference?
18
19 For consistency. Installing a package with identical USE flags should
20 give the same result on all systems.
21
22 | Also, if packages should not specify dependencies based on what is
23 | installed, the semantics of || ( ) would need to be changed such that
24 | the first non-masked packages is always installed.
25
26 No, || ( ) has legitimate use for switchable dependencies. For example,
27 if a package can use either curl or wget, and it can switch at runtime,
28 RDEPEND="|| ( curl wget )" is fine. Similarly, if a package needs
29 either tetex or ptex at compile time, DEPEND="|| ( tetex ptex )" is
30 correct.
31
32 | The only reason I can see for the above is to be able to have
33 | non-broken binary packages. However, that can be addressed by
34 | replacing *DEPEND in binary packages with their resolved forms.
35
36 If it affects binaries, it needs to be a USE flag.
37
38 --
39 Ciaran McCreesh
40 Mail : ciaranm at ciaranm.org
41 Web : http://ciaranm.org/
42 Paludis, the secure package manager : http://paludis.pioto.org/

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Reliance upon || ( use? ( ) ) behaviour Jason Stubbs <jstubbs@g.o>