From e0d709d8d3535a897de359eb9a0f33867b5ae040 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Tue, 17 Nov 2020 22:01:09 +0100 Subject: CMake: Fix missing dependencies in *Depends headers In qt_internal_create_module_depends_file we're checking the target property INTERFACE_MODULE_HAS_HEADERS. However, this property is not exported, and in per-repo builds we do not have access to this. As we cannot export INTERFACE_* properties, we export another one, called _qt_module_has_headers. This amends commit 598e873c84e6544aa67495b9b9fb1ff22f98a293. Fixes: QTBUG-88503 Change-Id: I04b3e24add6e95b577a049c80683b7361ff72f59 Reviewed-by: Alexandru Croitor --- cmake/QtModuleHelpers.cmake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'cmake/QtModuleHelpers.cmake') diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake index a628ac923d..1a482ff81b 100644 --- a/cmake/QtModuleHelpers.cmake +++ b/cmake/QtModuleHelpers.cmake @@ -158,8 +158,11 @@ function(qt_internal_add_module target) endif() # Module headers: + set_property(TARGET "${target}" APPEND PROPERTY EXPORT_PROPERTIES _qt_module_has_headers) if(${arg_NO_MODULE_HEADERS} OR ${arg_NO_SYNC_QT}) - set_target_properties("${target}" PROPERTIES INTERFACE_MODULE_HAS_HEADERS OFF) + set_target_properties("${target}" PROPERTIES + INTERFACE_MODULE_HAS_HEADERS OFF + _qt_module_has_headers OFF) else() set_target_properties("${target}" PROPERTIES INTERFACE_MODULE_INCLUDE_NAME "${module_include_name}") @@ -178,7 +181,9 @@ function(qt_internal_add_module target) message(STATUS "Running syncqt for module: '${module_include_name}' ") execute_process(COMMAND ${syncqt_full_command}) - set_target_properties("${target}" PROPERTIES INTERFACE_MODULE_HAS_HEADERS ON) + set_target_properties("${target}" PROPERTIES + INTERFACE_MODULE_HAS_HEADERS ON + _qt_module_has_headers ON) ### FIXME: Can we replace headers.pri? set(module_include_dir "${QT_BUILD_DIR}/include/${module_include_name}") -- cgit v1.2.3