Package: libxcb-randr0-dev
Version: 1.11.1-1
Severity: normal
The pkg-config file for xcb-randr contains
Requires: xcb xcb-render
which in turn results in
$ pkg-config --libs xcb-randr
-lxcb-randr -lxcb-render -lxcb
Applications using xcb-randr don't need to link against
xcb-render unless they're using some of xcb-render's symbols;
the fact that xcb-randr itself uses xcb-render internally is
irrelevant to the application, and in fact
1) dpkg-shlibdeps will raise a warning about this during
package build
2) passing --as-needed to the linker will strip the direct
dependency on xcb-render from the binary
Some of xcb-randr's functions use types defined by xcb-render
as arguments, but that again doesn't create a requirement for
the application to link against xcb-render, it just means it
will have to include the appropriate headers.
The pkg-config file should be changed to look like
Requires: xcb
Requires.private: xcb-render
Well, xcb should be moved to Requires.private as well, and
the same should be done for all xcb-* pkg-config files. But
applications linking against any of the xcb-* libraries are
pretty much guaranteed to link agains xcb as well, so it's
not as critical. But it should still be done :)
-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 4.5.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages libxcb-randr0-dev depends on:
ii libxcb-randr0 1.11.1-1
ii libxcb-render0-dev 1.11.1-1
ii libxcb1-dev 1.11.1-1
libxcb-randr0-dev recommends no packages.
libxcb-randr0-dev suggests no packages.
-- no debconf information
--
Andrea Bolognani <eof@kiyuko.org>
Resistance is futile, you will be garbage collected.
Attachment:
signature.asc
Description: PGP signature