diff options
author | Joerg Bornemann <joerg.bornemann@qt.io> | 2021-01-21 15:31:09 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-01-25 09:55:05 +0000 |
commit | f193e7a793171bd8c3b46f5980c1cf847cb171a6 (patch) | |
tree | 50b587bc5223d2fe2f237a3b6bf1e0a8d3852d3c /cmake | |
parent | f9f0238557a46f1ba4795cacfa1d6702461ed788 (diff) |
Fix QMAKE_PRL_LIBS entries on Windows for modules from other repos
When building a repository != qtbase, like qtactiveqt, QMAKE_PRL_LIBS
contained entries like Qt6Core and Qt6Widgets, meaning the linker line
would contain exactly these arguments.
When building an activeqt example with qmake, the link then failed with
"LNK1181: cannot open input file 'Qt6Widgets.obj'".
The correct entry would have been $$[QT_INSTALL_LIBS]/Qt6Widgets.obj.
Fix this by determining the full path to the import library in the first
step of the prl generation. This enables QtFinishPrlFile.cmake to
recognize Qt6Widgets as Qt module and generate the right QMAKE_PRL_LIBS
entry.
Fixes: QTBUG-90520
Change-Id: Id0d9178da0e0dfc3ea4fadbbe8f5900d792ffc84
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
(cherry picked from commit 1ef5016bab3bce06ada14bc961a2a1db93d3060b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/QtPrlHelpers.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/cmake/QtPrlHelpers.cmake b/cmake/QtPrlHelpers.cmake index 566d311e74..0c0b7a2aec 100644 --- a/cmake/QtPrlHelpers.cmake +++ b/cmake/QtPrlHelpers.cmake @@ -188,7 +188,7 @@ function(qt_internal_walk_libs qt_merge_libs(rcc_objects ${lib_rcc_objects_${target}}) endif() else() - qt_merge_libs(libs "$<TARGET_FILE:${lib_target}>") + qt_merge_libs(libs "$<TARGET_LINKER_FILE:${lib_target}>") get_target_property(target_rcc_objects "${lib_target}" _qt_rcc_objects) if(target_rcc_objects) |