On 09.07.2015 21:42, Orion Poplawski wrote:
On 07/09/2015 01:14 PM, Sandro Mani wrote:
> On 09.07.2015 20:18, Orion Poplawski wrote:
>> Also, it doesn't seem to get all of the requires quite right. For
>> scorep-openmpi I have:
>>
>> Provides: libscorep_adapter_compiler_event.so.2()(64bit)(openmpi-x86_64)
>>
>> but:
>>
>> Requires: libscorep_adapter_compiler_event.so.2()(64bit)
>>
>> is being emitted. This appears to be coming from:
>>
>> ./fileattrs/libsymlink.attr:%__libsymlink_requires
>> %{_rpmconfigdir}/elfdeps --provides --soname-only
>>
>> So it looks like we need to contend with that as well.
>>
>> # cat fileattrs/libsymlink.attr
>> # Make libfoo.so symlinks require the soname-provide of the target library
>> %__libsymlink_requires %{_rpmconfigdir}/elfdeps --provides
>> --soname-only
>> %__libsymlink_magic ^symbolic link to `.*lib.*\.so\..*'$
>> %__libsymlink_exclude_path ^.*[[:digit:]]$
>>
>>
>> Perhaps with:
>>
>> %global __libsymlink_exclude_path ^%{_prefix}/lib(64)?/(openmpi|mpich)/.*$
>>
>> in mpi packages.
> Or directly in mpi.attrs?
No, because there is a default %__libsymlink_exclude_path that we don't want
to override in general (think people building rpms locally with
openmpi/mpich-devel installed).
Ah yes sorry didn't read the contents of fileattrs/libsymlink.attr
properly. But couldn't that be handled with a
%__libsymlink_path ^.*\.so$
%__libsymlink_flags magic_and_path
instead of the %__libsymlink_exclude_path in libsymlink.attr?