[Interest] Require a qt_finalize_target() call in CMake user projects that use a static Qt
Joerg Bornemann
joerg.bornemann at qt.io
Wed May 5 13:59:21 CEST 2021
On 5/5/21 1:32 PM, Marius Kittler wrote:
> to me the most important point is that I can still stay in control over which
> plugins are linked against and which not. At best I can turn off pulling
> plugins automatically completely to avoid bloating my applications and keep my
> own build system logic for deciding what plugins are needed.
IIUC what you want to do, you can set the QT_PLUGINS/QT_NO_PLUGINS
properties on your target and specify the plugins you want to
whitelist/blacklist.
The code that does this for QtGui, for example, is in
lib/cmake/Qt6Gui/Qt6GuiPlugins.cmake.
Our CMake API clearly lacks documentation, but we're working on it.
> To give you feedback on `qt_finalize_target()`: I would have no problem with
> an extra call and requiring an up-to-date CMake installation but don't forget
> to update the documentation and keep the use case of linking against plugins
> manually in mind.
>> By the way, thanks for making this part of Qt's build system better!
I've
> mentioned that I had to patch Qt 5 a lot (so it can cope with all static
> dependencies correctly when using CMake) and with Qt 6 all of this is not
> necessary anymore. So despite the mentioned problems that's actually already a
> huge improvement.
Thanks for your feedback! Consider missing documentation as a bug that
will be eventually fixed. :)
Cheers,
Joerg
More information about the Interest
mailing list