Package: libx11-6
Version: 2:1.8.10-1
Severity: serious
Tags: d-i
Justification: broken shlibs, breaks udebs, etc.
X-Debbugs-Cc: debian-boot@lists.debian.org

Hi,

[ Now turning the initial mail ping into a proper bug report. ]

Spotted via dose's reporting lots of uninstallable udebs on arm64: the
new shlibs for libx11-6 is broken, with various libx* packages now
depending on libx11-xcb1 (not a udeb).

https://d-i.debian.org/dose/graph-unstable-arm64.png

The new debian/rules has:

    override_dh_makeshlibs:
            dh_makeshlibs -a -plibx11-6 -V'libx11-6 (>= 2:1.6.0)' 
--add-udeb=libx11-6-udeb -- -c4
            dh_makeshlibs -a -plibx11-xcb1 -V'libx11-xcb1' -- -c4
            dh_makeshlibs -a -Nlibx11-6 -Nlibx11-xcb1 -- -c4

which leads to the following for libx11-6.shlibs (amd64):

    libX11 6 libx11-xcb1
    udeb: libX11 6 libx11-xcb1

Meanwhile, libx11-xcb1 has:

    libX11-xcb 1 libx11-xcb1

which seems to match the intent in changelog.


Out of curiosity, pausing the build after the first dh_makeshlibs call,
the shlibs for libx11-6 is indeed correct at that point:

    libX11 6 libx11-6 (>= 2:1.6.0)
    udeb: libX11 6 libx11-6-udeb (>= 2:1.6.0)

and the second call is responsible for busting it up, since afterwards
it's amended to become what's found in the package:

    libX11 6 libx11-xcb1
    udeb: libX11 6 libx11-xcb1

So it looks like some confusion due to the -a/-p/-N combinations?


Going back to pausing between first and second dh_makeshlibs calls,
here's the slibs file for libx11-xcb1…

    libX11-xcb 1 libx11-6 (>= 2:1.6.0)
    udeb: libX11-xcb 1 libx11-6 (>= 2:1.6.0)

which convinces me the flag combinations aren't fine as they are.


Cheers,
-- 
Cyril Brulebois (k...@debian.org)            <https://debamax.com/>
D-I release manager -- Release team member -- Freelance Consultant

Reply via email to