diff --git a/cmake/QtExecutableHelpers.cmake b/cmake/QtExecutableHelpers.cmake index f2831e5e8a8..4c91df8425e 100644 --- a/cmake/QtExecutableHelpers.cmake +++ b/cmake/QtExecutableHelpers.cmake @@ -159,7 +159,10 @@ function(qt_internal_add_executable name) string(FIND "${CMAKE_CURRENT_SOURCE_DIR}" "${absolute_dir}" dir_starting_pos) if(dir_starting_pos EQUAL 0) set(exclude_from_all TRUE) - set_target_properties("${name}" PROPERTIES EXCLUDE_FROM_ALL TRUE) + set_target_properties("${name}" PROPERTIES + EXCLUDE_FROM_ALL TRUE + _qt_internal_excluded_from_default_target TRUE + ) break() endif() endforeach() diff --git a/cmake/QtPublicSbomHelpers.cmake b/cmake/QtPublicSbomHelpers.cmake index de33e52df3f..d5e85f7112d 100644 --- a/cmake/QtPublicSbomHelpers.cmake +++ b/cmake/QtPublicSbomHelpers.cmake @@ -1069,6 +1069,13 @@ function(_qt_internal_sbom_handle_target_binary_files target) return() endif() + get_target_property(excluded ${target} _qt_internal_excluded_from_default_target) + if(excluded) + message(DEBUG "Target ${target} has no binary files to reference in the SBOM " + "because it was excluded from the default 'all' target.") + return() + endif() + if(NOT arg_SPDX_ID) message(FATAL_ERROR "SPDX_ID must be set") endif()