[Development] Qt 5 types under consideration for deprecation / removal in Qt 6
thiago.macieira at intel.com
Fri May 31 19:13:52 CEST 2019
On Friday, 31 May 2019 02:22:03 PDT Tobias Hunger wrote:
> Hi Thiago,
> On Thu, May 30, 2019 at 8:18 PM Thiago Macieira
> <thiago.macieira at intel.com> wrote:
> > On Wednesday, 29 May 2019 06:33:23 PDT Giuseppe D'Angelo via Development
> > wrote:
> > > 2) should QRegExp stay in bootstrap? I have no idea of what's happening
> > > regarding to that in Qt 6.
> > Bootstrap needs to go away in Qt 6.
> While the bootstrap libraries play a much reduced role in the cmake
> branch, the bootstrap code is still needed: moc, rcc, qfloat16-tables
> and tracegen link against it right now. I would love to see somebody
> rewrite these tools in plain C++. It should not be that hard to do
moc I don't see a way out. We'll need to keep bootstrapping it.
rcc should be un-bootstrapped. The only use inside QtCore is for the MIME type
database. We don't need a resource, though it compresses really well (roughly
10:1 with zstd). I'd simply make that a read-only sharable variable, which we
can easily create with a C++11 raw string.
qfloat16-tables does not link to the bootstrap library (it's pure C++). The
only reason it's in C++ was so we didn't depend on Perl or Python during the
qtbase build on Windows (Perl is required on Unix). Also, its output is ALWAYS
the same and there is no input, since the constants are specified by IEEE 754.
I'd actually remove the tool from the build, move it to util/, and add the
resulting file to Git.
tracegen is not needed in all builds. That means we could un-bootstrap it and
simply require that you build it with a previous Qt build.
> Qmake for the time being also links against a special build of QtCore,
> but that is a separate issue. It needs some extra APIs on top of what
> a normal Qt provides. So even with cmake we are currently building
> parts of Qtbase 3 times:-/
Right, we'll need to figure out a solution for qmake, but it should also un-
Thiago Macieira - thiago.macieira (AT) intel.com
Software Architect - Intel System Software Products
More information about the Development