1 |
On Thu, 29 May 2008 11:02:55 +0200 |
2 |
flameeyes@×××××.com (Diego 'Flameeyes' Pettenò) wrote: |
3 |
|
4 |
> Marius Mauch <genone@g.o> writes: |
5 |
> |
6 |
> As much as we want preserve-libs to be an all-curing magic, it's |
7 |
> not. When you need to replace a library you need to do so _for all its |
8 |
> users at once_, if you allow it to be gradually you're opening the |
9 |
> hellgate of symbol collision. |
10 |
|
11 |
That's what `emerge @preserved-rebuild` does, or do you mean something |
12 |
different? |
13 |
|
14 |
> My solution would be to disallow _building_ anything that is or |
15 |
> depends directly or indirectly on a package on the set until it is |
16 |
> removed, or at the request of merging "mickeymouse", depending on |
17 |
> "bar", re-emerging libfoo first, and bar if the user is not using |
18 |
> --as-needed (checking the NEEDED lines). |
19 |
|
20 |
Well, with preserve-libs the situation is this (using your example): |
21 |
- user upgrades expat, portage keeps libexpat.so.0 around |
22 |
(some packages might now be linked against both versions if the session |
23 |
included other packages as well) |
24 |
- emerge tells the user to rebuild all affected packages (affected = |
25 |
contains libexpat.so.0 in NEEDED, so includes both libfoo and bar) by |
26 |
using `emerge @preserved-rebuild` (in the future this could also be done |
27 |
automatically, but that won't be before 2.2 final) |
28 |
- when all affected packages have been rebuilt (so their NEEDED entries |
29 |
don't contain libexpat.so.0 anymore) libexpat.so.0 is automatically |
30 |
removed |
31 |
|
32 |
So, if I understand you correctly (probably not), you want portage to |
33 |
prevent the user from building any packages depending on any affected |
34 |
package before the last step is completed? |
35 |
|
36 |
> With all due respect to everybody, the right course of action here has |
37 |
> to be selected by people who knows how the runtime linker works, |
38 |
> symbol collision and all the rest, as that's what's at stake here. |
39 |
|
40 |
Whoever that is is welcome to voice his opinion here, that's the point |
41 |
of this thread after all. |
42 |
|
43 |
Marius |
44 |
-- |
45 |
gentoo-dev@l.g.o mailing list |