1 |
On 8/9/06, Brian Harring <ferringb@×××××.com> wrote: |
2 |
> General problem with use deps; *could* still implement it via |
3 |
> seperating out use specific restrictions and generating the second |
4 |
> logic statement above, but that's bit magic imo. |
5 |
|
6 |
Is it really "magic"? Admittedly I know exactly nothing about portage |
7 |
internals, but it seems to me that use-specific restrictions and |
8 |
version-specific restrictions are two completely separate concepts, |
9 |
and that you have to deal with them separately, regardless of whether |
10 |
you put the directives all in the same file or not. |
11 |
|
12 |
I see the normal case for gcc being something like: |
13 |
|
14 |
sys-devel/gcc[-cxx] |
15 |
>=sys-devel/gcc-5.0 |
16 |
|
17 |
The above is very clear and obvious to me...all versions of gcc should |
18 |
be built with USE=cxx, and you should not try >= version 5.0. If you |
19 |
tried to combine those two concepts into a single directive, you would |
20 |
end up with: |
21 |
|
22 |
>=sys-devel/gcc-5.0[-cxx] |
23 |
|
24 |
and I can think of at least 3 useful and logical interpretations of |
25 |
that single statement. This is quite different than the same token in |
26 |
an [R]DEPEND, where only one sane interpretation exists. |
27 |
|
28 |
So in fact I think that in the context of masking/unmasking packages, |
29 |
you must deal with the version and use flag masking separately. You |
30 |
should not even allow the combined syntax form, since it is so |
31 |
ambiguous. |
32 |
|
33 |
And if you do that, then the unmasking of use-specific or |
34 |
version-specific masks becomes quite obvious. Placing |
35 |
"sys-devel/gcc[-cxx]" in package.unmask has no effect on the |
36 |
_versions_ of gcc that are masked, as it isn't a version-specific |
37 |
directive. |
38 |
|
39 |
-Richard |
40 |
-- |
41 |
gentoo-dev@g.o mailing list |