summaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorCristian Adam <cristian.adam@qt.io>2020-11-19 15:35:28 +0100
committerJoerg Bornemann <joerg.bornemann@qt.io>2020-11-20 16:06:17 +0000
commit98e6234bd4a910ab1b3873bafc9da33aab499e2e (patch)
treeeee646be3acb327db3cecd6e52483bf57ad1933b /cmake
parent9e0fb9c4fbe7a11c09a70d7ea1be97405c6bf0f8 (diff)
CMake: Generate less pri files and mark header modules as no_link
Plugins will no longer get .pri files generated in non-static builds. Header modules are now marked in the .pri files as CONFIG += no_link. Pick-to: 6.0 6.0.0 Fixes: QTBUG-88221 Change-Id: I06e31fa970ad021261c43ca3acd88055cc4c9555 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/QtPluginHelpers.cmake11
-rw-r--r--cmake/QtPriHelpers.cmake3
2 files changed, 9 insertions, 5 deletions
diff --git a/cmake/QtPluginHelpers.cmake b/cmake/QtPluginHelpers.cmake
index ade09cb2a1..4b8a9c1beb 100644
--- a/cmake/QtPluginHelpers.cmake
+++ b/cmake/QtPluginHelpers.cmake
@@ -218,7 +218,9 @@ function(qt_internal_add_plugin target)
endforeach()
qt_register_target_dependencies("${target}" "${arg_PUBLIC_LIBRARIES}" "${qt_libs_private}")
- qt_generate_plugin_pri_file("${target}" pri_file)
+ if (NOT BUILD_SHARED_LIBS)
+ qt_generate_plugin_pri_file("${target}" pri_file)
+ endif()
if (NOT arg_SKIP_INSTALL)
# Handle creation of cmake files for consumers of find_package().
@@ -256,10 +258,9 @@ function(qt_internal_add_plugin target)
DESTINATION "${config_install_dir}"
COMPONENT Devel
)
- qt_install(FILES
- "${pri_file}"
- DESTINATION "${INSTALL_MKSPECSDIR}/modules"
- )
+ if(pri_file)
+ qt_install(FILES "${pri_file}" DESTINATION "${INSTALL_MKSPECSDIR}/modules")
+ endif()
# Make the export name of plugins be consistent with modules, so that
# qt_add_resource adds its additional targets to the same export set in a static Qt build.
diff --git a/cmake/QtPriHelpers.cmake b/cmake/QtPriHelpers.cmake
index 2dbacc59e6..7d4b6143ec 100644
--- a/cmake/QtPriHelpers.cmake
+++ b/cmake/QtPriHelpers.cmake
@@ -186,6 +186,9 @@ function(qt_generate_module_pri_file target)
get_target_property(config_module_name ${target} _qt_config_module_name)
get_target_property(qmake_module_config ${target} ${property_prefix}QT_QMAKE_MODULE_CONFIG)
+ if (arg_HEADER_MODULE)
+ list(APPEND qmake_module_config "no_link")
+ endif()
if(qmake_module_config)
string(REPLACE ";" " " module_build_config "${qmake_module_config}")
set(module_build_config "\nQT.${config_module_name}.CONFIG = ${module_build_config}")