CMake: Export package name and 3rdparty flag for 3rd party libraries

Needed to get rid of warnings like

 CMake Warning at cmake/QtFindPackageHelpers.cmake:406
 (message): Could not find target Qt6::BundledLibYaml to query
 its package name. Defaulting to package name Qt6BundledLibYaml.
 Consider re-arranging the project structure to ensure
 the target exists by this point.

which were introduced with the integration
of dffcc2370e43722afb25d7aec7cd9d6a36f61e03 in qtbase.

This happened because we never set and exported the package names
for 3rd party bundled libs.
So export the package name as well as "is 3rd party lib" value.

Amends 6235f7fa62aab5c0e002fa2f93f46508f38b5472

Task-number: QTBUG-104998
Change-Id: I25fc1ffef766198974025e0097bced1cca4dd28d
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
(cherry picked from commit ea668ff16366a860cbbae759471a4050217ae98b)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Alexandru Croitor 2022-07-28 12:16:26 +02:00 committed by Qt Cherry-pick Bot
parent 44830d2fd6
commit 26aa9294cd

View File

@ -165,11 +165,20 @@ function(qt_internal_add_3rdparty_library target)
set_target_properties(${target} PROPERTIES set_target_properties(${target} PROPERTIES
_qt_module_interface_name "${target}" _qt_module_interface_name "${target}"
_qt_package_version "${PROJECT_VERSION}" _qt_package_version "${PROJECT_VERSION}"
_qt_package_name "${INSTALL_CMAKE_NAMESPACE}${target}"
_qt_module_is_3rdparty_library TRUE
)
set(export_properties
"_qt_module_interface_name"
"_qt_package_version"
"_qt_package_name"
"_qt_module_is_3rdparty_library"
) )
set_property(TARGET ${target} set_property(TARGET ${target}
APPEND PROPERTY APPEND PROPERTY
EXPORT_PROPERTIES "_qt_module_interface_name;_qt_package_version") EXPORT_PROPERTIES "${export_properties}")
qt_internal_add_qt_repo_known_module(${target}) qt_internal_add_qt_repo_known_module(${target})
qt_internal_add_target_aliases(${target}) qt_internal_add_target_aliases(${target})
@ -183,7 +192,6 @@ function(qt_internal_add_3rdparty_library target)
ARCHIVE_OUTPUT_DIRECTORY "${QT_BUILD_DIR}/${INSTALL_LIBDIR}" ARCHIVE_OUTPUT_DIRECTORY "${QT_BUILD_DIR}/${INSTALL_LIBDIR}"
VERSION ${PROJECT_VERSION} VERSION ${PROJECT_VERSION}
SOVERSION ${PROJECT_VERSION_MAJOR} SOVERSION ${PROJECT_VERSION_MAJOR}
_qt_module_is_3rdparty_library TRUE
_qt_module_skip_depends_include TRUE _qt_module_skip_depends_include TRUE
) )
set_property(TARGET "${target}" set_property(TARGET "${target}"