diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2021-06-25 15:16:19 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-06-29 17:43:14 +0000 |
commit | f57bfa3ba0b3cc6a4f53eebebbe16c0e41ccee3a (patch) | |
tree | 669d5eadb47c234e48fdf1b5cd85074de581f3ec /dist/changes-3.3.2 | |
parent | 599d298c06b30661f3b90c9c6e4840ea3d271a60 (diff) |
CMake: Pierce through LINK_ONLY deps in finalizer dep traversalv6.2.0-beta1
Ensure that the finalizer approach of
__qt_internal_propagate_object_library considers $<LINK_ONLY:>
libraries when traversing the dependencies of a target.
The issue was discovered when using the Quick.Shapes QML module in a
static build. The module has both a backing library and a plugin.
The backing library has some resource objects associated with it.
When the targets are exported, the plugin INTERFACE_LINK_LIBRARIES
has a $<LINK_ONLY:QuickShapes> dependency.
This ensures that the library will be linked, but depending on which
linking approach in __qt_internal_propagate_object_library is used,
the resources might not be linked to the final executable.
The resources are linked correctly when using the
target_link_libraries approach, but not when using the finalizer or
target_sources approach.
This change fixes the finalizer approach, but the target_sources
approach is still broken.
Amends a1fd4f51ada82854f35654158a334454e760a9f7
Change-Id: Ifbb91a17d388c3dc4263e17ec0d3bd5627b57cb4
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 82063d9af1f9ad6cddab4d5526316816cbe1a77c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'dist/changes-3.3.2')
0 files changed, 0 insertions, 0 deletions