summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@qt.io>2022-06-22 11:47:32 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2022-06-22 17:07:08 +0000
commitb4c51ba393b19996726b122a4cd5fe6b1fe128d3 (patch)
tree9dd4cb8e9aac8b45df99019ab520bb7e88c510fe
parent8f40432a773d8d96a731543359f4685dcfd182bf (diff)
Fix qhelpgenerator for static top-level builds
This tool needs the QSQLiteDriverPlugin in addition to the QMinimalIntegrationPlugin. Update the code that imports the plugins. This amends commit 0412da38b3d00ca4a192b0d262ad5b0e35b51503. Fixes: QTBUG-104490 Change-Id: I6b26b7081113e8036336cd2e19dab896f4956a3f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit e5cbbca16aae34a27934ed5c665d1ffc55dff10e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/assistant/qhelpgenerator/CMakeLists.txt16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/assistant/qhelpgenerator/CMakeLists.txt b/src/assistant/qhelpgenerator/CMakeLists.txt
index cdafe99df..7e1448739 100644
--- a/src/assistant/qhelpgenerator/CMakeLists.txt
+++ b/src/assistant/qhelpgenerator/CMakeLists.txt
@@ -24,17 +24,27 @@ qt_internal_add_tool(${target_name}
qt_internal_return_unless_building_tools()
if(NOT QT_BUILD_SHARED_LIBS)
+ set(needed_plugins
+ QMinimalIntegrationPlugin
+ QSQLiteDriverPlugin
+ )
+ list(TRANSFORM needed_plugins PREPEND Qt:: OUTPUT_VARIABLE needed_plugin_targets)
if(QT_SUPERBUILD)
# In a top-level build, qt_import_plugins() is a no-op because
# __qt_internal_add_static_plugins_once() is not called.
# So we need to initialize and link the plugin manually.
set(out_file_path "${CMAKE_CURRENT_BINARY_DIR}/${target_name}_plugin_imports_custom.cpp")
+ # Create a string with the necessary Q_IMPORT_PLUGIN(...) statements.
+ list(TRANSFORM needed_plugins PREPEND "Q_IMPORT_PLUGIN(" OUTPUT_VARIABLE import_plugin_code)
+ list(TRANSFORM import_plugin_code APPEND ")")
+ list(JOIN import_plugin_code "\n" import_plugin_code)
+
file(GENERATE OUTPUT "${out_file_path}" CONTENT
"// This file is auto-generated. Do not edit.
#include <QtPlugin>
-Q_IMPORT_PLUGIN(QMinimalIntegrationPlugin)
+${import_plugin_code}
")
# CMake versions earlier than 3.18.0 can't find the generated file for some reason,
@@ -43,10 +53,10 @@ Q_IMPORT_PLUGIN(QMinimalIntegrationPlugin)
set_source_files_properties("${out_file_path}" PROPERTIES GENERATED TRUE)
target_sources(${target_name} PRIVATE "${out_file_path}")
- target_link_libraries(${target_name} PRIVATE Qt::QMinimalIntegrationPlugin)
+ target_link_libraries(${target_name} PRIVATE ${needed_plugin_targets})
else()
qt_import_plugins(${target_name}
- INCLUDE Qt::QMinimalIntegrationPlugin
+ INCLUDE ${needed_plugin_targets}
)
endif()
endif()