Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 402081

Summary: Possibility to ignore libraries for preserved-libs/revdep-rebuild - BUNDLED_LIBS ebuild variable
Product: Portage Development Reporter: Dennis Schridde <dschridde+gentoobugs>
Component: Enhancement/Feature RequestsAssignee: Portage team <dev-portage>
Status: RESOLVED WONTFIX    
Severity: enhancement CC: tools-portage
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=265372
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 240323, 400979    

Description Dennis Schridde 2012-02-03 16:59:24 UTC
What I'd need is a way to mark P as never needing library L (at least when it comes to preserved-libs). Reason is bug #400979, where portage assumes that the openssl:0.9.8 libraries shall be preserved, even though they are bundled with the binary package.

Zac suggested an ebuild variable to inform portage about (binary) libraries that come with the package and dont need to be considered as dependencies:
IGNORE_FOR_PRESERVED_LIBS="!system-libs? ( ..list-of-files.. )". Support for conditional use syntax is necessary, in case the package unbundles these libraries based on a use flag (like "system-libs"), in which case the libraries ought not to be ignored.

Reproducible: Always
Comment 1 Dennis Schridde 2012-02-03 17:02:48 UTC
In case you search for better names of the var, BUNDLED_LIBS might also be good.
Comment 2 Paul Varner (RETIRED) gentoo-dev 2012-02-03 20:18:50 UTC
Isn't this a dupe of Bug 307391?
Comment 3 Dennis Schridde 2012-02-04 00:20:46 UTC
(In reply to comment #2)
> Isn't this a dupe of Bug 307391?
It is quite similar, but not exactly the same. As I read revdep-rebuild(1), SEARCH_DIRS_MASK names directories where NO contained libraries are considered when searching for (potentially) broken dependencies. The ebuild variable Zac and I suggested names specific libraries for a specific package which shall be considered as always present. The BUNDLED_LIBS variable seems a bit more precise than SEARCH_DIRS_MASK, though it probably deals with the same problem.
Comment 4 Paul Varner (RETIRED) gentoo-dev 2012-02-06 16:35:45 UTC
Regardless, of which way we go with this, we should probably have revdep-rebuild honor the variable in the same way as portage's preserved_libs.
Comment 5 Dennis Schridde 2012-09-12 21:49:30 UTC
Is this a candidate for EAPI5 or 5?

(In reply to comment #0)
> IGNORE_FOR_PRESERVED_LIBS="!system-libs? ( ..list-of-files.. )". Support for
> conditional use syntax is necessary, in case the package unbundles these
> libraries based on a use flag (like "system-libs"), in which case the
> libraries ought not to be ignored.
This is not necessary anymore. After discussion with Diego Elio "flameeyes" Pettenò (bug #426798), we (maintainers of app-backup/spideroak-bin) consider optional system-libs usage to be undesired.
Comment 6 Zac Medico gentoo-dev 2012-10-10 01:35:26 UTC
(In reply to comment #0)
> What I'd need is a way to mark P as never needing library L (at least when
> it comes to preserved-libs). Reason is bug #400979, where portage assumes
> that the openssl:0.9.8 libraries shall be preserved, even though they are
> bundled with the binary package.

This looks analogous to bug #265372, which we solved by using patchelf --set-rpath '$ORIGIN' on the installed files. Setting the rpath allows tools like portage to properly recognize bundled libraries of this sort, and it seems like the cleanest possible solution to me.