Re: DNF vs YUM, $pkg, $pkg-mpi, $pkg-openmpi having same provides

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12.06.2015 15:34, Orion Poplawski wrote:
On 06/11/2015 10:01 AM, Sandro Mani wrote:
Hello,

Investigating bug #1230838, I noticed that when installing mmg3d-libs,
dnf installs Konsole output ptscotch-mpich, whereas yum-deprecated
installs scotch. Both scotch and  ptscotch-mpich provide the required
libscotch.so.0()(64bit), albeit one in /usr/lib64/ and the other one in
/usr/lib64/mpich/lib/:

$ dnf repoquery --requires mmg3d-libs
[...]
libscotch.so.0()(64bit)
libscotcherr.so.0()(64bit)
[...]


$ dnf provides 'libscotch.so.0()(64bit)'
ptscotch-mpich-6.0.4-2.fc23.x86_64 : PT-Scotch libraries compiled
against mpich
Repo        : rawhide

ptscotch-openmpi-6.0.4-2.fc23.x86_64 : PT-Scotch libraries compiled
against openmpi
Repo        : rawhide

scotch-6.0.4-2.fc23.x86_64 : Graph, mesh and hypergraph partitioning library
Repo        : rawhide


Konsole output $ dnf repoquery -l scotch.x86_64 | grep libscotch.so.0
/usr/lib64/libscotch.so.0
/usr/lib64/libscotch.so.0.2


Konsole output $ dnf repoquery -l ptscotch-mpich.x86_64 | grep
libscotch.so.0
/usr/lib64/mpich/lib/libscotch.so.0
/usr/lib64/mpich/lib/libscotch.so.0.2


$ dnf install mmg3d-libs
[...]
Installing:
  environment-modules                   x86_64
3.2.10-14.fc23                    rawhide                   117 k
  hwloc-libs                            x86_64
1.10.1-2.fc23                     rawhide                   1.3 M
  lzma-libs                             x86_64
4.32.7-13.fc22                    rawhide                    38 k
  mmg3d-libs                            x86_64
4.0.2-1.fc23                      rawhide                   211 k
  mpich                                 x86_64
3.1.4-3.fc23                      rawhide                   1.1 M
  ptscotch-mpich

$ yum-deprecated install mmg3d-libs
[...]
Installing:
  mmg3d-libs                     x86_64
4.0.2-1.fc23                         rawhide 211 k
Installing for dependencies:
  lzma-libs                      x86_64
4.32.7-13.fc22 rawhide                      38 k
  scotch


So, whose fault is this? Packaging of dnf? Nothing relevant for this
caught my eye skimming through the packaging guidelines.

And related: trying to install some $pkg-openmpi package, I don't
generally see packages enforcing that the -openmpi version of some
dependency library is installed as opposed to just the regular libs
package. Should such requires need to be stated explicitly?

MPI packages need to filter out the provides from the MPI versions and explicitly add needed requires on the specific MPI flavors of packages needed. This probably needs to be added to the MPI guidelines.

Having had a go at this: if bar{-openmpi} requires foo-{openmpi}, filtering the provides from foo-openmpi and adding an explicit requires to bar-openmpi on foo-openmpi, this all will result in bar-openmpi depending both on foo-openmpi as well as foo. Obviously the requires could be filtered as well, but then things would start really getting cluttered with syntax overhead...

I was rather thinking, is there an obvious disadvantage in having a {mpich,openmpi}-find-requires.sh script which encodes the mpi flavour in the provides/requires? I.e.

libfoo.so.0()(64bit)(openmpi)

Rules to generate such requires/provides:
* Provides: if the path of the library starts with $MPI_LIB, append the (openmpi) resp (mpich) to the provides string * Requires: if the path of the scanned object starts with $MPI_LIB and the required library exists in $MPI_LIB, add (openmpi) resp (mpich) to the requires string

Overriding the find-requires.sh could be done with a %{?openmpi_package_header}.

Thoughts?

--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux