Hey all,

Starting today, as soon as rpm-4.11.0.1-5 hits the rawhide buildroots, rpmbuild will filter out "non-library" ELF soname dependencies by default. The soname dependencies are filtered by name: only soname dependencies containing ".so" and starting with "lib" or "ld" will be recorded into requires/provides.

The immediate practical benefit is that most of those gazillion unwanted provides from dlopen'ed plugins and the like will be gone when packages are rebuilt, without having to manually filter them out in specs. Looking at current rawhide provides, once all packages are (eventually) rebuilt, this should bring the number of soname provides down from ~38.000 to ~14500.

Normal packages should not be affected by this in any way, but in case of the inevitable excpetions, the former soname dependency generation can be re-enabled partially or fully as needed with:

%global __elf_provides_opts --no-filter-soname
%global __elf_requires_opts --no-filter-soname

AFAICS, the only require affected by this is on client.so in sawfish-pager:

[root@localhost ~]# repoquery --disablerepo="*" --enablerepo=rawhide -a --whatrequires "client.so()(64bit)"
sawfish-pager-0:0.90.3-3.fc19.x86_64
[root@localhost ~]# repoquery --disablerepo="*" --enablerepo=rawhide -a --whatprovides "client.so()(64bit)"
subversion-ruby-0:1.7.9-3.fc20.x86_64
glusterfs-0:3.4.0-0.4.beta1.fc20.x86_64
sawfish-0:1.9.91-1.fc20.x86_64

...which also points out a likely package problem: sawfish-pager presumably only works with the client.so from sawfish, but two unrelated packages also provide client.so. Once subversion and glusterfs have been rebuilt, that ambiguity will go away, but sawfish and sawfish-pager will either require enabling the former behavior or changing the client.so DSO to a "proper" library name.

I dont expect big issues with this but keep an eye on your package dependencies and please report if you spot any anomalies in this area, whether its something not filtered, excessive filtering or something else.

        - Panu -
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel

Reply via email to