[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1034830: qtbase5-private-dev ships header that requires cbor.h without dependency



Hi all, again.

On Tue, Apr 25, 2023 at 05:56:36PM +0200, Steve Langasek wrote:
> Dear maintainers,
>
> As part of an investigation to establish the feasibility of moving 32-bit
> archs to 64-bit time_t, I am running an analysis of all header files in the
> archive to determine which libraries' ABIs are affected.  This requires the
> headers in question to be compilable.
>
> qtbase5-private-dev ships header files which have includes that are not
> satisfied by its dependencies.  For my purposes, I've worked around these
> unusable headers by adding quirks to my scripts, but it seems worth
> reporting as a bug that headers are being shipped that aren't usable.
>
> - qt5/QtCore/5.15.8/QtCore/private/qcborcommon_p.h, which #includes cbor.h,
>   found in libcbor-dev; but does not provide the CborValue type

Actually, Qt uses tinycbor [1], not libcbor. tinycbor is not packaged in
Debian, and Qt doesn't have an option to build with system tinycbor anyway,
so we are using the bundled version.

[1]: https://github.com/intel/tinycbor

> - qt5/QtCore/5.15.8/QtCore/private/qcfsocketnotifier_p.h, which #includes
>   CoreFoundation/CoreFoundation.h, not found in any package in the archive.
> - qt5/QtGui/5.15.8/QtGui/private/qcoregraphics_p.h: same
> - qt5/QtCore/5.15.8/QtCore/private/qcore_mac_p.h, same
> - qt5/QtFontDatabaseSupport/5.15.8/QtFontDatabaseSupport/private/qcoretextfontdatabase_p.h,
>   depends on the preceding
> - qt5/QtFontDatabaseSupport/5.15.8/QtFontDatabaseSupport/private/qfontengine_coretext_p.h:
>   same
> - qt5/QtTest/5.15.8/QtTest/private/qappletestlogger_p.h: same

These headers are macOS-specific, but the Qt build system installs all
headers unconditionally.

> - qt5/QtCore/5.15.8/QtCore/private/qcollator_p.h, which #includes
>   unicode/ucol.h, found in libicu-dev
> - qt5/QtCore/5.15.8/QtCore/private/qdoublescanprint_p.h, which #includes
>   double-conversion/double-conversion.h, found in libdouble-conversion-dev
> [...]

I have added these two and the other packages you mentioned to Suggests.
Thank you for providing such a list.

As earlier discussed, I don't want to depend on 16 packages that most of
qtbase5-private-dev users won't actually need.

--
Dmitry Shachnev

Attachment: signature.asc
Description: PGP signature


Reply to: