Gentoo Archives: gentoo-dev

From: Alec Warner <antarus@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] USE_EXPAND in IUSE ( again )
Date: Sat, 11 Mar 2006 05:20:39
Message-Id: 44125DCB.4000608@gentoo.org
1 So folks seem to want things both ways.
2
3 Some people believe that USE_EXPAND'd variables are private:
4
5 || I have yet to be enlightened on any merit of USE_EXPAND is so perhaps
6 || you could explain as to why there should be
7 || user-configured-yet-undocumented options for ebuilds? More precisely,
8 || how should they be documented if not via use.desc?
9 |
10 |1. Because for things like LINGUAS, there are arbitrarily many legal
11 |values, and documenting them all and keeping the list up to date would
12 |be extremely difficult.
13 |
14 |2. Because USE_EXPAND is used for special USE things like arch and
15 |userland, and because we undocumented the special arch USE flags
16 |because they're not user settable.
17
18 That leaves a couple of things, first off, how do users figure out that
19 a particular setting affects an ebuild. If I have no VIDEO_CARDS set,
20 for example, how do I as a user figure out that that the new modular X
21 ebuilds actually use VIDEO_CARDS?
22
23 Secondly, some USE_EXPAND'd things are user-settable, and some are not.
24 Arguably, some may belong in IUSE, others are just not appropriate (
25 VIDEO_CARDS and LINGUAS both being rather large and difficult to maintain.
26
27 The current state of things is that:
28
29 1. Repoman complains to developers when they use USE_EXPAND in IUSE and
30 there are not entries in use.desc This check for USE_EXPAND'd variables
31 can be turned off, if the community feels that USE_EXPAND should remain
32 undocumented. Or we can commit Diego's patch that reads USE_EXPAND
33 descriptions from $PORTDIR/profiles/desc/USE_EXPAND.desc
34
35 2. Portage complains about USE_EXPAND flags not in IUSE when they are
36 used, because they are not user settable. This ties into the above,
37 either USE_EXPAND flags modify ebuilds publically (IUSE) or they modify
38 it privately ( no IUSE ). I don't really want to see it both ways, as
39 we then need a constant list of USE_EXPAND flags that are supposed to
40 set off warnings versus those that don't. Or we just kill the warnings
41 for any USE_EXPAND variable, which I hope the QA team will comment on.
42
43 3. Jason Stubbs has commited code in portage 2.1 to show USE_EXPAND
44 flags in output. I'm not sure who likes or dislikes this, but depending
45 on that outcome of this discussion, that code may need to be modified.
46
47
48 Conclusion:
49
50 Either USE_EXPAND always goes in IUSE, or USE_EXPAND never goes in IUSE.
51
52 If you want USE_EXPAND that sometimes goes in IUSE and sometimes doesn't
53 you better have a good plan for keeping those lists of proper USE_EXPAND
54 flags and improper flags in sync. I mean I'd love to do it that way,
55 but I'll bet those lists get old and nasty and we will have people
56 complaining about QA warnings that they thought were fixed or that there
57 were no QA warnings when there should have been...etc..
58
59 -Other ideas are always welcome; I'd prefer to get this solved soon.
60
61 -Alec Warner

Attachments

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

Replies

Subject Author
Re: [gentoo-dev] USE_EXPAND in IUSE ( again ) Jason Stubbs <jstubbs@g.o>