1 |
On Sun, 2 Oct 2011 10:53:46 -0400 |
2 |
Michael Mol <mikemol@×××××.com> wrote: |
3 |
|
4 |
> On Sun, Oct 2, 2011 at 7:58 AM, Alan McKinnon |
5 |
> <alan.mckinnon@×××××.com> wrote: |
6 |
> > On Sun, 02 Oct 2011 06:36:54 -0500 |
7 |
> > Dale <rdalek1967@×××××.com> wrote: |
8 |
> >> Alan McKinnon wrote: |
9 |
> >> > On Sun, 02 Oct 2011 05:13:49 -0500 |
10 |
> >> > Dale<rdalek1967@×××××.com> wrote: |
11 |
> > You often mention the attraction of Gentoo is you get only what you |
12 |
> > want. But, consider this; if you put flags routinely in make.conf |
13 |
> > you lose most of that benefit. You end up with the equivalent of |
14 |
> > Mandrake where you complied it yourself, not the binary distro. |
15 |
> > |
16 |
> > USE="<every possible flag enabled>" emerge something and |
17 |
> > yum install something and pretty much equivalent in terms of end |
18 |
> > result. |
19 |
> |
20 |
> I'm actually very much in Dale's usage pattern here. If there's a |
21 |
> feature I want, and it's a globally-valid USE flag (such as, say, |
22 |
> ipv6), I put it in make.conf. If there's a feature I want, and it's |
23 |
> package-specific, it goes in package.use. If there's a feature I want, |
24 |
> it's a globally-valid USE flag, but I *don't* want it in a particular |
25 |
> package (say, X in vim), the enabler goes in make.conf, the disabler |
26 |
> goes in packages.use; for 90% of packages, I want that support. |
27 |
> |
28 |
> So that's not USE=<every possible flag enable>, that's USE=<all the |
29 |
> global flags I want enabled>. |
30 |
|
31 |
|
32 |
As with all things in life, USE flags require intelligence, common |
33 |
sense and familiarity to use to best advantage. Not all global USE |
34 |
flags are equal or used in the same way! |
35 |
|
36 |
USE="ipv6" is mostly global and single-meaning. ipv6 support means |
37 |
just that - ipv6 support. For a daemon, that would be listen on an |
38 |
ipv6 interface and talk it back. For config tools, it's " set up |
39 |
interfaces and routes ipv6 style". It's hard to come up with a meaning |
40 |
for the flag that's outside that narrow range; it's equally hard to |
41 |
come up with a reason to use in package.use. Maybe disable it for a |
42 |
package that supports ipv6 but is known to be broken in it's support. |
43 |
|
44 |
USE="perl python" is a very different kettle of fish. While also |
45 |
global (i.e. used in a similar way by more than x number of ebuilds), |
46 |
the meaning in use can differ wildly. It can mean to build support |
47 |
for extra tools written in perl|python, or build language bindings, or |
48 |
use language bindings and possibly many things. These flags can benefit |
49 |
from being used in package.use - whereas you probably want ipv6 support |
50 |
everywhere if used, perl|python isn't used the same way. |
51 |
|
52 |
Your post indicates you already know this :-) |
53 |
|
54 |
I mentioned it to Dale to illuminate that just because a flag is |
55 |
*defined* globally doesn't mean you have to *use* it globally. And the |
56 |
reverse is also true - overlays often have flags used in many ebuilds, |
57 |
always with the same meaning (e17 is like this), but are not global in |
58 |
use.desc. My own make.conf has many of these flags. |
59 |
|
60 |
Sometimes I wish Gentoo would express these distinctions. Then I think |
61 |
about what it would take to do that, and shelf the idea :-) |
62 |
|
63 |
-- |
64 |
Alan McKinnnon |
65 |
alan.mckinnon@×××××.com |