From 06e8dd31e90ad76bacde9e6ea0492df202c736ea Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Wed, 30 Jan 2019 16:36:30 +0100 Subject: [PATCH] CMake: Add debugging support for extend_target(...) calls Enable a flag so that cmake documents which extend_target calls it acts upon and which ones are skipped. Change-Id: I1e2d4da47b93d6b5d7b7ec25b7bc6341f38b3dca Reviewed-by: Albert Astals Cid --- cmake/QtBuild.cmake | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake index 4f23dd1c2c..96d187559b 100644 --- a/cmake/QtBuild.cmake +++ b/cmake/QtBuild.cmake @@ -247,6 +247,8 @@ set(__default_private_args "SOURCES;LIBRARIES;INCLUDE_DIRECTORIES;DEFINES;DBUS_A set(__default_public_args "PUBLIC_LIBRARIES;PUBLIC_INCLUDE_DIRECTORIES;PUBLIC_DEFINES;PUBLIC_COMPILE_OPTIONS;PUBLIC_LINK_OPTIONS") +option(QT_CMAKE_DEBUG_EXTEND_TARGET "Debug extend_target calls in Qt's build system" OFF) + # This function can be used to add sources/libraries/etc. to the specified CMake target # if the provided CONDITION evaluates to true. function(extend_target target) @@ -261,6 +263,9 @@ function(extend_target target) qt_evaluate_config_expression(result ${arg_CONDITION}) if (${result}) + if(QT_CMAKE_DEBUG_EXTEND_TARGET) + message("extend_target(${target} CONDITION ${arg_CONDITION} ...): Evaluated") + 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}") @@ -291,6 +296,10 @@ function(extend_target target) target_compile_options("${target}" PUBLIC ${arg_PUBLIC_COMPILE_OPTIONS} PRIVATE ${arg_COMPILE_OPTIONS}) target_link_options("${target}" PUBLIC ${arg_PUBLIC_LINK_OPTIONS} PRIVATE ${arg_LINK_OPTIONS}) set_target_properties("${target}" PROPERTIES AUTOMOC_MOC_OPTIONS "${arg_MOC_OPTIONS}") + else() + if(QT_CMAKE_DEBUG_EXTEND_TARGET) + message("extend_target(${target} CONDITION ${arg_CONDITION} ...): Skipped") + endif() endif() endfunction()