QtCS25 - State and Direction of Qt's Build System
Jump to navigation
Jump to search
Session Summary
A quick presentation of what happened in Build System land, how we can improve the public CMake API, and further future plans.
Session Owners
Alexandru Croitor
Cristian Le
Notes
Can the new functionality to download missing modules be extended to outside of Qt Creator?
- In theory, but in practice this is implemented by Qt Creator (through its injecting of a CMake file into your build)
- Qt Creator matches to the current build kit, which it knows how to extend
- The concept of "kits" does not really exist outside of it Qt Creator
Integration with vcpkg:
- meant to improve how we install 3rd party dependencies in our CI VMs (right now, bunch of hand-written shell/powershell scripts)
- vcpkg harmonises / simplifies this
- build system needs an update to be told "ask vcpkg where stuff is"
- vcpkg installation of dependencies already done
- also helps users who use vcpkg for the dependencies too
Deprecation of old Qt feature system features:
- Many of those ended up in public headers for legacy reasons
- We can hardcode the result if the feature is removed
- How do we tell users to stop using such macros? There may be a _Pragma solution.
New features requiring new CMake versions:
- To implement features requested by other customers
- Problem are users who have old CMake versions (usually, using Yocto Project versions that came with older CMake)
- Customers/users are unwilling to upgrade to new YP releases
- Upgrading CMake triggers a rebuild of other software, which means it could cause failures