diff --git a/cmake/Qt3rdPartyLibraryHelpers.cmake b/cmake/Qt3rdPartyLibraryHelpers.cmake index df6bb10e64c..7fa3c9f4911 100644 --- a/cmake/Qt3rdPartyLibraryHelpers.cmake +++ b/cmake/Qt3rdPartyLibraryHelpers.cmake @@ -427,14 +427,21 @@ function(qt_internal_add_3rdparty_header_module target) ) _qt_internal_validate_all_args_are_parsed(arg) + _qt_internal_forward_function_args( + FORWARD_PREFIX arg + FORWARD_OUT_VAR add_module_args + FORWARD_SINGLE + EXTERNAL_HEADERS + EXTERNAL_HEADERS_DIR + ) + qt_internal_add_module(${target} IS_QT_3RD_PARTY_HEADER_MODULE INTERNAL_MODULE HEADER_MODULE NO_CONFIG_HEADER_FILE NO_GENERATE_CPP_EXPORTS - EXTERNAL_HEADERS ${arg_EXTERNAL_HEADERS} - EXTERNAL_HEADERS_DIR ${arg_EXTERNAL_HEADERS_DIR} + ${add_module_args} ) set_target_properties(${target} PROPERTIES diff --git a/cmake/QtAppHelpers.cmake b/cmake/QtAppHelpers.cmake index de6cd072336..d0ecf4e8e6d 100644 --- a/cmake/QtAppHelpers.cmake +++ b/cmake/QtAppHelpers.cmake @@ -59,6 +59,17 @@ function(qt_internal_add_app target) set(arg_NO_UNITY_BUILD "") endif() + _qt_internal_forward_function_args( + FORWARD_PREFIX arg + FORWARD_OUT_VAR add_executable_args + FORWARD_SINGLE + TARGET_COMPANY + TARGET_COPYRIGHT + TARGET_DESCRIPTION + TARGET_PRODUCT + TARGET_VERSION + ) + qt_internal_add_executable("${target}" QT_APP DELAY_RC @@ -85,11 +96,7 @@ function(qt_internal_add_app target) MOC_OPTIONS ${arg_MOC_OPTIONS} ENABLE_AUTOGEN_TOOLS ${arg_ENABLE_AUTOGEN_TOOLS} DISABLE_AUTOGEN_TOOLS ${arg_DISABLE_AUTOGEN_TOOLS} - TARGET_VERSION ${arg_TARGET_VERSION} - TARGET_PRODUCT ${arg_TARGET_PRODUCT} - TARGET_DESCRIPTION ${arg_TARGET_DESCRIPTION} - TARGET_COMPANY ${arg_TARGET_COMPANY} - TARGET_COPYRIGHT ${arg_TARGET_COPYRIGHT} + ${add_executable_args} # If you are putting anything after these, make sure that # qt_set_target_info_properties knows how to process them ) diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake index d8a1d7b6098..02df976250e 100644 --- a/cmake/QtModuleHelpers.cmake +++ b/cmake/QtModuleHelpers.cmake @@ -607,6 +607,13 @@ function(qt_internal_add_module target) set(arg_EXTERNAL_HEADERS "") endif() + _qt_internal_forward_function_args( + FORWARD_PREFIX arg + FORWARD_OUT_VAR extend_target_args + FORWARD_SINGLE + PRECOMPILED_HEADER + ) + qt_internal_extend_target("${target}" ${arg_NO_UNITY_BUILD} SOURCES @@ -640,8 +647,8 @@ function(qt_internal_add_module target) MOC_OPTIONS ${arg_MOC_OPTIONS} ENABLE_AUTOGEN_TOOLS ${arg_ENABLE_AUTOGEN_TOOLS} DISABLE_AUTOGEN_TOOLS ${arg_DISABLE_AUTOGEN_TOOLS} - PRECOMPILED_HEADER ${arg_PRECOMPILED_HEADER} NO_PCH_SOURCES ${arg_NO_PCH_SOURCES} + ${extend_target_args} ) # The public module define is not meant to be used when building the module itself, diff --git a/cmake/QtTargetHelpers.cmake b/cmake/QtTargetHelpers.cmake index 19165681e0b..c02fadb6ef3 100644 --- a/cmake/QtTargetHelpers.cmake +++ b/cmake/QtTargetHelpers.cmake @@ -77,20 +77,26 @@ function(qt_internal_extend_target target) endif() set(dbus_sources "") foreach(adaptor ${arg_DBUS_ADAPTOR_SOURCES}) - qt_create_qdbusxml2cpp_command("${target}" "${adaptor}" - ADAPTOR - BASENAME "${arg_DBUS_ADAPTOR_BASENAME}" - FLAGS ${arg_DBUS_ADAPTOR_FLAGS} + _qt_internal_forward_function_args( + FORWARD_PREFIX arg_DBUS_ADAPTOR + FORWARD_OUT_VAR forwarded_args + FORWARD_SINGLE + BASENAME + FLAGS ) + qt_create_qdbusxml2cpp_command("${target}" "${adaptor}" ADAPTOR ${forwarded_args}) list(APPEND dbus_sources "${adaptor}") endforeach() foreach(interface ${arg_DBUS_INTERFACE_SOURCES}) - qt_create_qdbusxml2cpp_command("${target}" "${interface}" - INTERFACE - BASENAME "${arg_DBUS_INTERFACE_BASENAME}" - FLAGS ${arg_DBUS_INTERFACE_FLAGS} + _qt_internal_forward_function_args( + FORWARD_PREFIX arg_DBUS_INTERFACE + FORWARD_OUT_VAR forwarded_args + FORWARD_SINGLE + BASENAME + FLAGS ) + qt_create_qdbusxml2cpp_command("${target}" "${interface}" INTERFACE ${forwarded_args}) list(APPEND dbus_sources "${interface}") endforeach() diff --git a/cmake/QtToolHelpers.cmake b/cmake/QtToolHelpers.cmake index f9709a6079c..a90779d9706 100644 --- a/cmake/QtToolHelpers.cmake +++ b/cmake/QtToolHelpers.cmake @@ -117,6 +117,17 @@ function(qt_internal_add_tool target_name) set(arg_NO_UNITY_BUILD "") endif() + _qt_internal_forward_function_args( + FORWARD_PREFIX arg + FORWARD_OUT_VAR add_executable_args + FORWARD_SINGLE + TARGET_COMPANY + TARGET_COPYRIGHT + TARGET_DESCRIPTION + TARGET_PRODUCT + TARGET_VERSION + ) + qt_internal_add_executable("${target_name}" OUTPUT_DIRECTORY "${output_dir}" ${exceptions} @@ -139,11 +150,7 @@ function(qt_internal_add_tool target_name) LINK_OPTIONS ${arg_LINK_OPTIONS} MOC_OPTIONS ${arg_MOC_OPTIONS} DISABLE_AUTOGEN_TOOLS ${disable_autogen_tools} - TARGET_VERSION ${arg_TARGET_VERSION} - TARGET_PRODUCT ${arg_TARGET_PRODUCT} - TARGET_DESCRIPTION ${arg_TARGET_DESCRIPTION} - TARGET_COMPANY ${arg_TARGET_COMPANY} - TARGET_COPYRIGHT ${arg_TARGET_COPYRIGHT} + ${add_executable_args} # If you are putting anything after these, make sure that # qt_set_target_info_properties knows how to process them )