Add missing PRIVATE_MODULE_INTERFACEs to INTERNAL_MODULEs
To detect the internal module ouside the qt_internal_add_module function need to mark it with the property. This adds _qt_is_internal_module property to the Qt internal modules. Since PRIVATE_MODULE_INTERFACE only was applicable to pure Private modules, INTERNAL_MODULEs is missing those dependencies if they were specified. Add extra condition to qt_internal_extend_target to link PRIVATE_MODULE_INTERFACE libraries to internal modules as well. Pick-to: 6.2 6.1 Change-Id: I9c32fa5bad3aff365f5d7663349e5365d5f1d72d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
41b56c31bc
commit
abb19da572
@ -129,6 +129,10 @@ function(qt_internal_add_module target)
|
||||
|
||||
qt_internal_module_info(module "${target}")
|
||||
qt_internal_add_qt_repo_known_module("${target}")
|
||||
if(arg_INTERNAL_MODULE)
|
||||
set_target_properties(${target} PROPERTIES _qt_is_internal_module TRUE)
|
||||
set_property(TARGET ${target} APPEND PROPERTY EXPORT_PROPERTIES _qt_is_internal_module)
|
||||
endif()
|
||||
|
||||
if(NOT arg_CONFIG_MODULE_NAME)
|
||||
set(arg_CONFIG_MODULE_NAME "${module_lower}")
|
||||
|
@ -101,6 +101,12 @@ function(qt_internal_extend_target target)
|
||||
endforeach()
|
||||
|
||||
set(target_private "${target}Private")
|
||||
get_target_property(is_internal_module ${target} _qt_is_internal_module)
|
||||
# Internal modules don't have Private targets but we still need to
|
||||
# propagate their private dependencies.
|
||||
if(is_internal_module)
|
||||
set(target_private "${target}")
|
||||
endif()
|
||||
if(TARGET "${target_private}")
|
||||
target_link_libraries("${target_private}"
|
||||
INTERFACE ${arg_PRIVATE_MODULE_INTERFACE})
|
||||
|
Loading…
x
Reference in New Issue
Block a user