Gilles Dartiguelongue posted on Thu, 15 Jul 2010 11:09:39 +0200 as
> Le jeudi 15 juillet 2010 à 09:49 +0100, Mike Auty a écrit : [...]
>> I can live with this for in places where it causes massive breakage
>> (openssl/libpng/libjpg), because it's genuinely useful, but I think it
>> should be restricted to such important packages, or at least disabled
>> by FEATURES="-preserve-libs".
>> Ideally, these calls should either adhere to FEATURES="-preserve-libs",
>> or there should be a tool that can identify which files portage has
>> preserved, and allow easy rebuilding of dependent packages, and
>> At the moment, I'm having to manually grep ebuilds, ls the libraries
>> and run revdep-rebuild over them one at a time...
> These sound like very good ideas to me.
If I have FEATURE=-preserve-libs, that's what I want. Exceptions should
be limited to what will break the toolchain (including revdep-rebuild
here, since that's what's normally used to get out of the situation)
If there was a way to handle it so a general revdep-rebuild run would
still detect the preserved library as missing and do the necessary
rebuilds, it'd be one thing, but if the libraries are there, it figures
things are OK unless you've fed it that specific library, thereby making a
general revdep-rebuld run useless at the very task it was designed to fix.
Talking about which... What about creating an eutils (or whatever)
function to handle the critical preservations, having it build a
centralized list of them somewhere, and having a revdep-rebuild mode that
will treat that list as if it had been fed in with --library on the
command line? Make revdep-rebuild able to run this mode either on its
own, or as part of an otherwise general run, and then you can have
packages (or the package-manager itself, if it uses the list as well)
preserve libs as they wish, without interfering with the ability of revdep-
rebuild to detect and resolve the issues in a normal run.
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman