Cleanup qt_internal_extend_target function
Extract function arguments to the corresponding variables and use variables when parsing arguments. Remove whitespace between if keyword and parentheses. Adjust size of code lines. Document function-specific arguments. Change-Id: I1c77fbf268618a844726683768575aff05894c70 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
This commit is contained in:
parent
720d5cc1a4
commit
ecc4250397
@ -3,6 +3,16 @@
|
|||||||
|
|
||||||
# This function can be used to add sources/libraries/etc. to the specified CMake target
|
# This function can be used to add sources/libraries/etc. to the specified CMake target
|
||||||
# if the provided CONDITION evaluates to true.
|
# if the provided CONDITION evaluates to true.
|
||||||
|
# One-value Arguments:
|
||||||
|
# PRECOMPILED_HEADER
|
||||||
|
# Name of the precompiled header that is used for the target.
|
||||||
|
# Multi-value Arguments:
|
||||||
|
# CONDITION
|
||||||
|
# The condition under which the target will be extended.
|
||||||
|
# COMPILE_FLAGS
|
||||||
|
# Custom compilation flags.
|
||||||
|
# NO_PCH_SOURCES
|
||||||
|
# Skip the specified source files by PRECOMPILE_HEADERS feature.
|
||||||
function(qt_internal_extend_target target)
|
function(qt_internal_extend_target target)
|
||||||
if(NOT TARGET "${target}")
|
if(NOT TARGET "${target}")
|
||||||
qt_internal_is_in_test_batch(in_batch ${target})
|
qt_internal_is_in_test_batch(in_batch ${target})
|
||||||
@ -18,32 +28,58 @@ function(qt_internal_extend_target target)
|
|||||||
return()
|
return()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
qt_parse_all_arguments(arg "qt_extend_target" "" "PRECOMPILED_HEADER"
|
set(option_args "")
|
||||||
"CONDITION;${__default_public_args};${__default_private_args};${__default_private_module_args};COMPILE_FLAGS;NO_PCH_SOURCES" ${ARGN})
|
set(single_args
|
||||||
if ("x${arg_CONDITION}" STREQUAL x)
|
PRECOMPILED_HEADER
|
||||||
|
)
|
||||||
|
set(multi_args
|
||||||
|
${__default_public_args}
|
||||||
|
${__default_private_args}
|
||||||
|
${__default_private_module_args}
|
||||||
|
CONDITION
|
||||||
|
COMPILE_FLAGS
|
||||||
|
NO_PCH_SOURCES
|
||||||
|
)
|
||||||
|
|
||||||
|
qt_parse_all_arguments(arg "qt_extend_target"
|
||||||
|
"${option_args}"
|
||||||
|
"${single_args}"
|
||||||
|
"${multi_args}"
|
||||||
|
${ARGN}
|
||||||
|
)
|
||||||
|
|
||||||
|
if("x${arg_CONDITION}" STREQUAL "x")
|
||||||
set(arg_CONDITION ON)
|
set(arg_CONDITION ON)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
qt_evaluate_config_expression(result ${arg_CONDITION})
|
qt_evaluate_config_expression(result ${arg_CONDITION})
|
||||||
if (${result})
|
if(${result})
|
||||||
if(QT_CMAKE_DEBUG_EXTEND_TARGET)
|
if(QT_CMAKE_DEBUG_EXTEND_TARGET)
|
||||||
message("qt_extend_target(${target} CONDITION ${arg_CONDITION} ...): Evaluated")
|
message("qt_extend_target(${target} CONDITION ${arg_CONDITION} ...): Evaluated")
|
||||||
endif()
|
endif()
|
||||||
set(dbus_sources "")
|
set(dbus_sources "")
|
||||||
foreach(adaptor ${arg_DBUS_ADAPTOR_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_create_qdbusxml2cpp_command("${target}" "${adaptor}"
|
||||||
|
ADAPTOR
|
||||||
|
BASENAME "${arg_DBUS_ADAPTOR_BASENAME}"
|
||||||
|
FLAGS "${arg_DBUS_ADAPTOR_FLAGS}"
|
||||||
|
)
|
||||||
list(APPEND dbus_sources "${adaptor}")
|
list(APPEND dbus_sources "${adaptor}")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
foreach(interface ${arg_DBUS_INTERFACE_SOURCES})
|
foreach(interface ${arg_DBUS_INTERFACE_SOURCES})
|
||||||
qt_create_qdbusxml2cpp_command("${target}" "${interface}" INTERFACE BASENAME "${arg_DBUS_INTERFACE_BASENAME}" FLAGS "${arg_DBUS_INTERFACE_FLAGS}")
|
qt_create_qdbusxml2cpp_command("${target}" "${interface}"
|
||||||
|
INTERFACE
|
||||||
|
BASENAME "${arg_DBUS_INTERFACE_BASENAME}"
|
||||||
|
FLAGS "${arg_DBUS_INTERFACE_FLAGS}"
|
||||||
|
)
|
||||||
list(APPEND dbus_sources "${interface}")
|
list(APPEND dbus_sources "${interface}")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
get_target_property(target_type ${target} TYPE)
|
get_target_property(target_type ${target} TYPE)
|
||||||
set(is_library FALSE)
|
set(is_library FALSE)
|
||||||
set(is_interface_lib FALSE)
|
set(is_interface_lib FALSE)
|
||||||
if (${target_type} STREQUAL "STATIC_LIBRARY" OR ${target_type} STREQUAL "SHARED_LIBRARY")
|
if(${target_type} STREQUAL "STATIC_LIBRARY" OR ${target_type} STREQUAL "SHARED_LIBRARY")
|
||||||
set(is_library TRUE)
|
set(is_library TRUE)
|
||||||
elseif(target_type STREQUAL "INTERFACE_LIBRARY")
|
elseif(target_type STREQUAL "INTERFACE_LIBRARY")
|
||||||
set(is_interface_lib TRUE)
|
set(is_interface_lib TRUE)
|
||||||
@ -73,7 +109,7 @@ function(qt_internal_extend_target target)
|
|||||||
# build tree.
|
# build tree.
|
||||||
if(NOT is_interface_lib OR CMAKE_VERSION VERSION_GREATER_EQUAL "3.19")
|
if(NOT is_interface_lib OR CMAKE_VERSION VERSION_GREATER_EQUAL "3.19")
|
||||||
target_sources("${target}" PRIVATE ${arg_SOURCES} ${dbus_sources})
|
target_sources("${target}" PRIVATE ${arg_SOURCES} ${dbus_sources})
|
||||||
if (arg_COMPILE_FLAGS)
|
if(arg_COMPILE_FLAGS)
|
||||||
set_source_files_properties(${arg_SOURCES} PROPERTIES
|
set_source_files_properties(${arg_SOURCES} PROPERTIES
|
||||||
COMPILE_FLAGS "${arg_COMPILE_FLAGS}")
|
COMPILE_FLAGS "${arg_COMPILE_FLAGS}")
|
||||||
endif()
|
endif()
|
||||||
@ -105,7 +141,7 @@ function(qt_internal_extend_target target)
|
|||||||
${private_visibility_option} ${arg_LINK_OPTIONS})
|
${private_visibility_option} ${arg_LINK_OPTIONS})
|
||||||
|
|
||||||
if(NOT is_interface_lib)
|
if(NOT is_interface_lib)
|
||||||
set_property (TARGET "${target}" APPEND PROPERTY
|
set_property(TARGET "${target}" APPEND PROPERTY
|
||||||
AUTOMOC_MOC_OPTIONS "${arg_MOC_OPTIONS}"
|
AUTOMOC_MOC_OPTIONS "${arg_MOC_OPTIONS}"
|
||||||
)
|
)
|
||||||
# Plugin types associated to a module
|
# Plugin types associated to a module
|
||||||
|
Loading…
x
Reference in New Issue
Block a user