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.

Right this makes sense, though, as pointed out in an other post in this thread, cases like

> gmsh: requires mmg3d
> mmg3d: requires scotch

> gmsh-openmpi: requires mmg3d
> mmg3d: requires scotch -> but in this case it is actually ptscotch-openmpi which is desired, right?

The only "sane" way to fix this I see is extending the mmg3d.spec with something like
[...]
%package openmpi
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: ptscotch-openmpi

%package mpich
Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: ptscotch-mpich

Better ideas?

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

Reply via email to