Bug#953020: libhdf5-dev: alternatives have identical priorities

Drew Parsons dparsons at debian.org
Tue Mar 3 10:26:49 GMT 2020


Package: libhdf5-dev
Version: 1.10.4+repack-11
Severity: normal

libhdf5-dev, libhdf5-openmpi-dev and libhdf5-mpich-dev all provide
alternatives for hdf5's pkg-config file hdf5.pc.

But the priorities are the same, priority 50 for all. This means the
behaviour of hdf5 is undetermined. serial or mpi (even mpich) might
randomly get selected at configure time.

A hierarchy of priorities needs to be set so the value of hdf5.pc is
not random, whether serial or mpi gets higher priority (I'd be
inclined to make mpi higher priority than serial. If you've installed
it, you'd want to use it).

openmpi vs mpich might a bit more fiddly to resolve, but the order of
priority is more clear then: the default mpi for the architecture
should have higher priority than the other mpi (in my opinion the
alternative mpi should probably be lower priority than serial)

In this context I recommend providing a hdf5-mpi.pc that links to the
default mpi version (hdf5-openmpi.pc or hdf5-mpich.pc).  Then client
programs can just invoke "pkg-config --cflags hdf5-mpi" (e.g. to get
the flags for hdf5-mpi in the case when hdf5.pc is set to
hdf5-serial.pc), without having to worry about whether the mpi is
openmpi or mpich.

So if openmpi is default, then a suggestion for priorities for hdf5.pc
alternatives could be

hdf5-serial.pc     20
hdf5-mpi.pc        35 
hdf5-openmpi.pc    30
hdf5-mpich.pc      10


If mpich is default, then

hdf5-serial.pc     20
hdf5-mpi.pc        35
hdf5-openmpi.pc    10
hdf5-mpich.pc      30


-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.4.0-4-amd64 (SMP w/4 CPU cores)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE=en_AU:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libhdf5-dev depends on:
ii  hdf5-helpers                       1.10.4+repack-11
ii  libaec-dev                         1.0.4-1
ii  libhdf5-103                        1.10.4+repack-11
ii  libhdf5-cpp-103                    1.10.4+repack-11
ii  libjpeg-dev                        1:1.5.2-2
ii  libjpeg62-turbo-dev [libjpeg-dev]  1:1.5.2-2+b1
ii  zlib1g-dev                         1:1.2.11.dfsg-2

libhdf5-dev recommends no packages.

Versions of packages libhdf5-dev suggests:
ii  libhdf5-doc  1.10.4+repack-11

-- no debconf information



More information about the Pkg-grass-devel mailing list