= Proposed Self Contained Change: RPM MPI Requires Provides =
https://fedoraproject.org/wiki/Changes/RpmMPIReqProv
Change owner(s): Sandro Mani <manisandro at gmail dot com>
Have the rpm-build find-provides and find-requires scripts encode the MPI
compiler name in the provides string of a binary to distinguish otherwise
identical provides between packages $foo, $foo-openmpi and $foo-mpich.
== Detailed Description ==
Currently, the packages libfoo, libfoo-openmpi and libfoo-mpich providing the
library libfoo.so all have a provides string of i.e.
libfoo.so()(64bit)
While yum used a shortest-package-name rule to choose which package to pick,
dnf does not have any rules, and seems to just pick the first match it comes
across. Currently the only solution would be to filter the provides from the
-openmpi, -mpich packages and add explicit Requires: where needed. I'd like to
propose to extend the provides string in such way that it also encodes the MPI
implementation, i.e.:
$ rpm -qp --provides libfoo
libfoo.so()(64bit)
$ rpm -qp --provides libfoo-mpich
libfoo.so()(64bit)(mpich-x86_64)
$ rpm -qp --provides libfoo-openmpi
libfoo.so()(64bit)(openmpi-x86_64)
To this end, I'm proposing to adapt the find-requires and find-provides scripts
as (or similarly to):
find-provides
find-requires
Discussion of these changes are tracked in bug #1232504.
This change is intended to coordinate the rebuild of all MPI related packages
to ensure all such packages consistently use the new provides format.
== Scope ==
* Proposal owners:
- Work on find-provides and find-requires based on feedback.
- As soon as updated find-provides and find-requires shipped with
rpm-build, do a mass-rebuild of all MPI packages.
* Other developers: N/A (not a System Wide Change)
* Release engineering: N/A (not a System Wide Change)
* Policies and guidelines: N/A (not a System Wide Change)
* Trademark approval: N/A (not needed for this Change)
--
Jan Kuřík
_______________________________________________
devel-announce mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/devel-announce
--
devel mailing list
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct