summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmake/Qt3rdPartyLibraryHelpers.cmake18
-rw-r--r--cmake/QtModuleHelpers.cmake4
-rw-r--r--cmake/QtPostProcessHelpers.cmake39
3 files changed, 39 insertions, 22 deletions
diff --git a/cmake/Qt3rdPartyLibraryHelpers.cmake b/cmake/Qt3rdPartyLibraryHelpers.cmake
index 904f81fb76..d562024ca3 100644
--- a/cmake/Qt3rdPartyLibraryHelpers.cmake
+++ b/cmake/Qt3rdPartyLibraryHelpers.cmake
@@ -181,9 +181,14 @@ function(qt_internal_add_3rdparty_library target)
ARCHIVE_OUTPUT_DIRECTORY "${QT_BUILD_DIR}/${INSTALL_LIBDIR}"
VERSION ${PROJECT_VERSION}
SOVERSION ${PROJECT_VERSION_MAJOR}
- QT_MODULE_IS_3RDPARTY_LIBRARY TRUE
- QT_MODULE_SKIP_DEPENDS_INCLUDE TRUE
+ _qt_module_is_3rdparty_library TRUE
+ _qt_module_skip_depends_include TRUE
)
+ set_property(TARGET "${target}"
+ APPEND PROPERTY EXPORT_PROPERTIES _qt_module_is_3rdparty_library)
+ set_property(TARGET "${target}"
+ APPEND PROPERTY EXPORT_PROPERTIES _qt_module_skip_depends_include)
+
qt_handle_multi_config_output_dirs("${target}")
set_target_properties(${target} PROPERTIES
@@ -335,4 +340,13 @@ function(qt_internal_add_3rdparty_header_module target)
EXTERNAL_HEADERS ${arg_EXTERNAL_HEADERS}
EXTERNAL_HEADERS_DIR ${arg_EXTERNAL_HEADERS_DIR}
)
+
+ set_target_properties(${target} PROPERTIES
+ _qt_module_is_3rdparty_header_library TRUE
+ _qt_module_skip_depends_include TRUE
+ )
+ set_property(TARGET "${target}"
+ APPEND PROPERTY EXPORT_PROPERTIES _qt_module_is_3rdparty_header_library)
+ set_property(TARGET "${target}"
+ APPEND PROPERTY EXPORT_PROPERTIES _qt_module_skip_depends_include)
endfunction()
diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake
index 98d8b80d36..11f8eca3bd 100644
--- a/cmake/QtModuleHelpers.cmake
+++ b/cmake/QtModuleHelpers.cmake
@@ -278,7 +278,9 @@ function(qt_internal_add_module target)
endif()
if (arg_SKIP_DEPENDS_INCLUDE)
- set_target_properties(${target} PROPERTIES QT_MODULE_SKIP_DEPENDS_INCLUDE TRUE)
+ set_target_properties(${target} PROPERTIES _qt_module_skip_depends_include TRUE)
+ set_property(TARGET "${target}" APPEND PROPERTY
+ EXPORT_PROPERTIES _qt_module_skip_depends_include)
endif()
if(is_framework)
set_target_properties(${target} PROPERTIES
diff --git a/cmake/QtPostProcessHelpers.cmake b/cmake/QtPostProcessHelpers.cmake
index 12e44113b2..83155cd97d 100644
--- a/cmake/QtPostProcessHelpers.cmake
+++ b/cmake/QtPostProcessHelpers.cmake
@@ -178,24 +178,25 @@ function(qt_internal_create_module_depends_file target)
# Normalize module by stripping leading "Qt::" and trailing "Private"
if (dep MATCHES "(Qt|${QT_CMAKE_EXPORT_NAMESPACE})::([-_A-Za-z0-9]+)")
set(dep "${CMAKE_MATCH_2}")
- if (TARGET Qt::${dep})
- get_target_property(dep_type Qt::${dep} TYPE)
- if (NOT dep_type STREQUAL "INTERFACE_LIBRARY")
- get_target_property(skip_module_depends_include Qt::${dep} QT_MODULE_SKIP_DEPENDS_INCLUDE)
- if (skip_module_depends_include)
- continue()
- endif()
- else()
- get_target_property(is_versionless_target Qt::${dep} _qt_is_versionless_target)
- if(is_versionless_target)
- get_target_property(module_has_headers ${QT_CMAKE_EXPORT_NAMESPACE}::${dep}
- _qt_module_has_headers)
- else()
- get_target_property(module_has_headers Qt::${dep} _qt_module_has_headers)
- endif()
- if (NOT module_has_headers)
- continue()
- endif()
+ set(real_dep_target "Qt::${dep}")
+
+ if(TARGET "${real_dep_target}")
+ get_target_property(is_versionless_target "${real_dep_target}"
+ _qt_is_versionless_target)
+ if(is_versionless_target)
+ set(real_dep_target "${QT_CMAKE_EXPORT_NAMESPACE}::${dep}")
+ endif()
+
+ get_target_property(skip_module_depends_include "${real_dep_target}"
+ _qt_module_skip_depends_include)
+ if(skip_module_depends_include)
+ continue()
+ endif()
+
+ get_target_property(module_has_headers "${real_dep_target}"
+ _qt_module_has_headers)
+ if(NOT module_has_headers)
+ continue()
endif()
endif()
endif()
@@ -742,7 +743,7 @@ function(qt_internal_create_config_file_for_standalone_tests)
continue()
endif()
- get_target_property(is_3rd_party "${m}" QT_MODULE_IS_3RDPARTY_LIBRARY)
+ get_target_property(is_3rd_party "${m}" _qt_module_is_3rdparty_library)
if(NOT is_3rd_party)
list(APPEND modules "${m}")
endif()