From 4151d5869a60c0e130b32e1ae35c8e81477ecc86 Mon Sep 17 00:00:00 2001 From: Dominik Holland Date: Mon, 14 Jun 2021 16:24:57 +0200 Subject: [PATCH] CMake: Add public FindPackageHelpers This makes qt_internal_disable_find_package_global_promotion available, which is needed when linking against QtMultimedia in a static build Change-Id: I9b8f6d7b74a8693ac471f8a280e893f4da80a44b Reviewed-by: Alexandru Croitor (cherry picked from commit f380c87731472eb59495b7823b7c6243b3aa11f4) Reviewed-by: Qt Cherry-pick Bot --- cmake/QtBaseGlobalTargets.cmake | 1 + cmake/QtBuild.cmake | 1 + cmake/QtConfig.cmake.in | 1 + cmake/QtFindPackageHelpers.cmake | 4 ---- cmake/QtPublicFindPackageHelpers.cmake | 3 +++ 5 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 cmake/QtPublicFindPackageHelpers.cmake diff --git a/cmake/QtBaseGlobalTargets.cmake b/cmake/QtBaseGlobalTargets.cmake index 3b770e79ffa..2d858d657fe 100644 --- a/cmake/QtBaseGlobalTargets.cmake +++ b/cmake/QtBaseGlobalTargets.cmake @@ -255,6 +255,7 @@ set(__public_cmake_helpers cmake/QtPublicPluginHelpers.cmake cmake/QtPublicTargetHelpers.cmake cmake/QtPublicWalkLibsHelpers.cmake + cmake/QtPublicFindPackageHelpers.cmake ) qt_copy_or_install(FILES ${__public_cmake_helpers} DESTINATION "${__GlobalConfig_install_dir}") diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index 792276e38ff..028de66af7f 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -551,6 +551,7 @@ endif() include(QtPublicPluginHelpers) include(QtPublicTargetHelpers) include(QtPublicWalkLibsHelpers) +include(QtPublicFindPackageHelpers) # TODO: This block provides support for old variables. It should be removed once diff --git a/cmake/QtConfig.cmake.in b/cmake/QtConfig.cmake.in index 063128e3d6e..19d619e7f12 100644 --- a/cmake/QtConfig.cmake.in +++ b/cmake/QtConfig.cmake.in @@ -59,6 +59,7 @@ include("${CMAKE_CURRENT_LIST_DIR}/QtPublicFinalizerHelpers.cmake") include("${CMAKE_CURRENT_LIST_DIR}/QtPublicPluginHelpers.cmake") include("${CMAKE_CURRENT_LIST_DIR}/QtPublicTargetHelpers.cmake") include("${CMAKE_CURRENT_LIST_DIR}/QtPublicWalkLibsHelpers.cmake") +include("${CMAKE_CURRENT_LIST_DIR}/QtPublicFindPackageHelpers.cmake") # Find required dependencies, if any. include(CMakeFindDependencyMacro) diff --git a/cmake/QtFindPackageHelpers.cmake b/cmake/QtFindPackageHelpers.cmake index 040fae0e270..a980652e601 100644 --- a/cmake/QtFindPackageHelpers.cmake +++ b/cmake/QtFindPackageHelpers.cmake @@ -299,7 +299,3 @@ function(qt_internal_should_not_promote_package_target_to_global target out_var) get_property(should_not_promote TARGET "${target}" PROPERTY _qt_no_promote_global) set("${out_var}" "${should_not_promote}" PARENT_SCOPE) endfunction() - -function(qt_internal_disable_find_package_global_promotion target) - set_target_properties("${target}" PROPERTIES _qt_no_promote_global TRUE) -endfunction() diff --git a/cmake/QtPublicFindPackageHelpers.cmake b/cmake/QtPublicFindPackageHelpers.cmake new file mode 100644 index 00000000000..df42241c564 --- /dev/null +++ b/cmake/QtPublicFindPackageHelpers.cmake @@ -0,0 +1,3 @@ +function(qt_internal_disable_find_package_global_promotion target) + set_target_properties("${target}" PROPERTIES _qt_no_promote_global TRUE) +endfunction()