[Development] Proposing CMake as build tool for Qt 6
michael.winkelmann at qt.io
Thu Jun 6 19:19:41 CEST 2019
Any ideas/plans for WebAssembly?
On 06.06.19 13:45, Simon Hausmann wrote:
> In the past months we, some developers from the Qt Company and KDAB,
> have made good progress on the port of Qt to use CMake as build tool.
> Since the initial prototype, the port has advanced very well and its
> current state can be summarized roughly like this:
> * Builds on
> * Windows (desktop)
> * macOS
> * Linux (desktop and embedded)
> * Android (running not tested yet)
> * Static builds and plugins are implemented.
> * Many examples and tests are compiling and running.
> * Several modules outside of qtbase have been ported as well,
> including qtsvg, qtimageformats, qnetworkauth as well as parts of
> * There are early-warning style CI builds (no tests) running and
> reporting results to patches uploaded to Gerrit.
> * There is tooling in-place to re-generate cmake files from
> .pro/configure.json files, providing a method of dealing with the
> long term maintenance of merging from qmake based Qt (5) branches.
> * Very basic support for compiling applications (not modules) with qmake
> against a CMake built Qt.
> Many of the more fine-grained details are tracked in JIRA under an Epic:
> as well as in the Qt Project Wiki at
> Detailed steps on how to build Qt with CMake are available at
> There are some caveats with the above as well, but overall we feel confident
> about it. Therefore we would like to propose CMake as the build tool for
> Qt 6
> and would like to achieve a decision within the Qt project by lazy
> For the decision making it is important to also lay out the proposed path
> forward. We would like to merge the wip/cmake branch(es) into the wip/qt6
> branch of qtbase and other applicable repositories. This would pave the way
> for a transition that could look like this:
> (1) The CMake build system related files and scripts become visible
> to Qt 6 development. Both build systems co-exist.
> (2) The wip/qt6 branches continue to be built using qmake in the CI
> until we are ready to switch.
> (3) When the corresponding changes in Coin and qtbase are ready, a
> new configuration file in qtbase would switch the qtbase build over
> to use cmake for some configurations.
> (4) Through iteration all configurations are changed to use cmake.
> (5) The .pro/.pri files of projects can be removed -- the qmake
> sources themselves as well as mkspecs/features (and potentially
> other files) remain.
> We are looking forward to a productive discussion and feedback.
> Development mailing list
> Development at qt-project.org
The Qt Company GmbH
Rudower Chaussee 13
michael.winkelmann at qt.io
Geschäftsführer: Mika Pälsi, Juha Varelius, Mika Harjuaho
Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht
Charlottenburg, HRB 144331 B
More information about the Development