diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index 2a241762454..55ea25f8f25 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -1808,7 +1808,9 @@ function(add_qt_plugin target) COMPONENT Devel ) - set(export_name "${target}Targets") + # Make the export name of plugins be consistent with modules, so that + # add_qt_resource adds its additional targets to the same export set in a static Qt build. + set(export_name "${INSTALL_CMAKE_NAMESPACE}${target}Targets") qt_install(TARGETS "${target}" EXPORT ${export_name} RUNTIME DESTINATION "${install_directory}" @@ -2004,7 +2006,6 @@ function(add_qt_resource target resourceName) ) if (out_target) - qt_internal_add_target_aliases("${out_target}") qt_install(TARGETS "${out_target}" EXPORT "${INSTALL_CMAKE_NAMESPACE}${target}Targets" DESTINATION ${INSTALL_LIBDIR} diff --git a/cmake/QtPluginConfig.cmake.in b/cmake/QtPluginConfig.cmake.in index 43b5b4d6175..ab812abcf21 100644 --- a/cmake/QtPluginConfig.cmake.in +++ b/cmake/QtPluginConfig.cmake.in @@ -11,5 +11,5 @@ if (NOT QT_NO_CREATE_TARGETS) include("${CMAKE_CURRENT_LIST_DIR}/@target@Dependencies.cmake") endif() - include("${CMAKE_CURRENT_LIST_DIR}/@target@Targets.cmake") + include("${CMAKE_CURRENT_LIST_DIR}/@INSTALL_CMAKE_NAMESPACE@@target@Targets.cmake") endif() diff --git a/cmake/QtResource.cmake.in b/cmake/QtResource.cmake.in index 9c8a1daaa59..88a642a3311 100644 --- a/cmake/QtResource.cmake.in +++ b/cmake/QtResource.cmake.in @@ -15,7 +15,12 @@ function(__qt_propagate_generated_resource target resource_name generated_source if(type STREQUAL STATIC_LIBRARY) set(resource_target "${target}_resources_${resourceName}") add_library("${resource_target}" OBJECT "${generated_source_code}") - target_link_libraries(${target} INTERFACE "$") + + # Use TARGET_NAME genex to map to the correct prefixed target name when it is exported + # via qt_install(EXPORT), so that the consumers of the target can find the object library + # as well. + target_link_libraries(${target} INTERFACE + "$>") set(${output_generated_target} "${resource_target}" PARENT_SCOPE) else() set(${output_generated_target} "" PARENT_SCOPE) @@ -265,7 +270,7 @@ function(QT@PROJECT_VERSION_MAJOR@_PROCESS_RESOURCE target resourceName) else() target_sources(${target} PRIVATE "${generatedSourceCode}") endif() - if (arg_OUTPUT_TARGET) - set(${arg_OUPUT_TARGET} "${output_target}" PARENT_SCOPE) + if (rcc_OUTPUT_TARGET) + set(${rcc_OUTPUT_TARGET} "${output_target}" PARENT_SCOPE) endif() endfunction()