1 |
OK. I'm looking at bug #173962[1] and bug #187683[2] currently and |
2 |
encountering a problem which I thought I would bring to the group to try |
3 |
to resolve. Both ATI and NVIDIA binary video drivers supply both 64-bit |
4 |
and 32-bit libraries. Now, our default profiles are multilib for amd64, |
5 |
but there is also a no-multilib sub-profile. The problem is that we |
6 |
need to install app-emulation/emul-linux-x86-xlibs on a multilib |
7 |
profile, but cannot install it on a no-multilib profile. The ebuilds |
8 |
currently use USE=multilib, which has been deprecated for a while and is |
9 |
masked on amd64, to determine whether to install this package. Of |
10 |
course, this doesn't work out. I'm pretty sure we cannot do any |
11 |
multilib profile checks prior to *DEPEND because they'll be done in the |
12 |
global scope and will affect cache generation, as the check will get the |
13 |
profile from the server doing cache generation. |
14 |
|
15 |
Now, on to the question... |
16 |
|
17 |
How do we *DEPEND on something that is only necessary for a multilib |
18 |
profile without USE=multilib and without invalidating the cache? |
19 |
|
20 |
My two "solutions" (neither of which are good) are as follows: |
21 |
|
22 |
- Re-enable USE=multilib in the multilib profiles, and force it on in |
23 |
the proper profiles while masking it in the others... this might be |
24 |
feasible simply because we *can* force-enable USE flags in a profile |
25 |
now, which we couldn't do back when this was deprecated |
26 |
- Re-create app-emulation/emul-linux-x86-nvidia with the 32-bit parts of |
27 |
nvidia-drivers in it and have 32-bit apps *DEPEND on this package on the |
28 |
affected architectures... this is also a bit less ugly than it used to |
29 |
be because NVIDIA is now shipping all of the required libraries so all |
30 |
we would need to do is make the versions match |
31 |
|
32 |
Can someone else come up with another idea, preferably a much better |
33 |
one? |
34 |
|
35 |
[1] http://bugs.gentoo.org/show_bug.cgi?id=173962 |
36 |
[2] http://bugs.gentoo.org/show_bug.cgi?id=187683 |
37 |
|
38 |
-- |
39 |
Chris Gianelloni |
40 |
Release Engineering Strategic Lead |
41 |
Alpha/AMD64/x86 Architecture Teams |
42 |
Games Developer/Council Member/Foundation Trustee |
43 |
Gentoo Foundation |