Hi, In order for Gentoo's binary package support to compete with that of binary distros, it would be useful to have some new ebuild metadata variables that would be used to customize filtering of automatically generated soname dependencies. For example, Fedora has __provides_exclude and __requires_exclude variables for this purpose [1].
In order to implement something like this for Gentoo, we could add PROVIDES_EXCLUDE and REQUIRES_EXCLUDE ebuild metadata variables. These variables would be used to automatically generate PROVIDES and REQUIRES data for binary packages, based on the output of scanelf. The resulting PROVIDES and REQUIRES data would simply contain lists of sonames (and their corresponding ABIs, for multilib support), which would be used to resolve dependencies of binary packages. For example, the resulting REQUIRES and PROVIDES data for sys-libs/zlib-1.2.8-r1 built with ABI_X86="32 64" might look something like this: REQUIRES: X86_64: libc.so.6 386: libc.so.6 PROVIDES: X86_64: libz.so.1 386: libz.so.1 For libz, the new PROVIDES_EXCLUDE and REQUIRES_EXCLUDE ebuild variables would not be needed. However, for things like python and perl modules, these variables would be used to exclude unwanted sonames from REQUIRES and PROVIDES. Please respond with any feedback that you may have about the proposal. [1] http://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering#Filtering_provides_and_requires_after_scanning -- Thanks, Zac