Summary: | gentoolkit should remember old versions of libraries for revdep-rebuild | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Honza <hkmaly> |
Component: | Enhancement/Feature Requests | Assignee: | Portage Tools Team <tools-portage> |
Status: | RESOLVED WONTFIX | ||
Severity: | enhancement | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Honza
2012-07-28 22:16:16 UTC
Either a managed list, or moving library files from their original place to eg. /usr/oldlib or something like that, and include the dir in LDPATH. The binaries do not hardcode the path of used libs anyway (but tell me if i'm wrong). In the second case no need to touch revdep-rebuild much, just ignore the oldlib while searching for missing libs. (In reply to comment #1) > Either a managed list, or moving library files from their original place to > eg. /usr/oldlib or something like that, and include the dir in LDPATH. The > binaries do not hardcode the path of used libs anyway (but tell me if i'm > wrong). This is essentially the same as FEATURES=preserve-libs (see `man make.conf`). (In reply to comment #2) > This is essentially the same as FEATURES=preserve-libs (see `man make.conf`). Uh, no? (or do I interpret it wrong) "Preserve libraries when the sonames change during upgrade or downgrade. Libraries are preserved only if consumers of those libraries are detected." The idea is quite the opposite. I would like to get rid of the still-used-but-obsolete libraries (but not bluntly deleting them, rather AFTER we recompiled the packages, so really nothing is using it). We are talking about this could be somehwat automated, as getting rid of old libraries happens manually at the moment. * Old versions of installed libraries were detected on your system. * In order to avoid breaking packages that depend on these old libs, * the libraries are not being removed. You need to run revdep-rebuild * in order to remove these old dependencies. If you do not have this * helper program, simply emerge the 'gentoolkit' package. * * # revdep-rebuild --library 'foo' && rm 'foo' Here, library foo could be gathered into a list, which could be processed later. (In reply to comment #3) > (In reply to comment #2) > > This is essentially the same as FEATURES=preserve-libs (see `man make.conf`). > > Uh, no? (or do I interpret it wrong) "Preserve libraries when the sonames > change during upgrade or downgrade. Libraries are preserved only if > consumers of those libraries are detected." If I understand you correctly, your request is identical to preserve-libs. > The idea is quite the opposite. I would like to get rid of the > still-used-but-obsolete libraries (but not bluntly deleting them, rather > AFTER we recompiled the packages, so really nothing is using it). With preserve-libs, the still-used-but-obsolete libraries are automatically removed after you run `emerge @preserved-rebuild`. Oh, then I was underinformed, and I didn't know what to search for. Then found your blog entry about this topic http://blogs.gentoo.org/zmedico/2012/09/21/preserve-libs-available-in-portage-2-1/ but I didn't find anything in man files about "emerge @preserved-rebuild" . Anyway, thank you for pointing this out for me (or us)! (In reply to comment #5) Thanks, I've updated the man page: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=cb49dfc3319a0a202fb26f3cf825cf12790d2bd3 From a gentoolkit perspective, since subslots in EAPI 5 and FEATURES=preserve-libs will eventually deprecate the need for revdep-rebuild in everyday use, we will not be adding this feature to revdep-rebuild. Zac, feel free to close this bug once the portage changes are released. I don't want to hijack this bug, so please just file a new bug for sys-apps/portage if there's anything needed for preserve-libs (bug 240323 tracks preserve-libs issues). |