Monday, 18 May 2020

Help understanding the package set we need to maintain for partial i386

I was revisiting one of the packages the server team usually looks
after: `rdma-core`.
Late in the focal release cycle I was asked to mark the `pandoc`
build-dependency with !i386 as it doesn't exist there and was causing
problems [1]. I was revisiting this now to resolve it in a better way
to be able to make the package a sync again.

I had a discussion with Debian and started to wonder why this is a
problem for Ubuntu at all. That made me identify a weak spot in my
understanding of partial i386 [3][4].
The odd thing to me is that `rdma-core` isn't part of the i386
whitelist [5], so why would it be a problem that the d/control lists
pandoc as build-dep - I'd have expected it to not build at all.
Then I realized that germinate still pulls it in [6], but failed to
see why. Is it that we actually have i386 builds on the whitelist and
in addition all-of-its-build-deps ?

Furthermore that might explain why the only dependency left is openmpi
which also isn't part of the whitelist [5] but shown in germinate [6].

$ reverse-depends --release=groovy --arch=i386 src:rdma-core
* libopenmpi-dev (for libibverbs-dev)

I now wonder if a much easier fix might be to remove the build
dependency to rdma-core on src:openmpi (for i386 only) which would
finally make rdma-core really not building on i386. Is that a better
solution? Openmpi in turn has a much longer list of things depending
on it, doing the cut at openmpi->rdma-core seems to be the cleanest.

But then I have realized that while there are not more runtime
dependencies, build dependencies in i386 seem to be quite a lot still
(reverse-depends --release=groovy --arch=i386 --build-dep
src:rdma-core shows 41).

With this mail I'd look for:
a) general guidance on `is the effective i386 build = whitelist + build-deps`
b) feedback on the suggestion to remove the rdma-core build dep on
openmpi; or would all 41 build-deps have to go away?
c) other alternatives

The answers to (a) we could add to the wiki [4].
The answers to (b)+(c) will hopefully help me to go on with this, it
might eventually come down to keeping the current Delta (trivial) in
rdma-core, but along the way understanding the inner workings better
would be great.


Christian Ehrhardt
Staff Engineer, Ubuntu Server
Canonical Ltd

ubuntu-devel mailing list
Modify settings or unsubscribe at: