Make the android multi-ABI builds with Unix Makefiles pure sequential

Add the missing dependency between qt_internal_android_<abi>_configure
and the last target from previous ABI-specific step in the chain.

This slows the Unix Makefiles builds, but ensures that there is no race
condition when executing configuring step.

Also as a driven-by fix the _qt_android_abi_steps property list, by removing
the parazite -NOTFOUND entries.

Pick-to: 6.7 6.5
Fixes: QTBUG-127414
Change-Id: Ibb69dcdebd2052a7aa1d4bd0c3f657cdeb312f37
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 924dd10afc9f9137ce2da7643306d8df511c6ab9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Alexey Edelev 2024-07-23 17:54:21 +02:00 committed by Qt Cherry-pick Bot
parent 82d9b18535
commit 1647193afa

View File

@ -1323,7 +1323,11 @@ function(_qt_internal_add_android_abi_step project abi step)
endif()
endif()
list(PREPEND known_steps ${project}_${step})
if(known_steps)
list(PREPEND known_steps ${project}_${step})
else()
set(known_steps ${project}_${step})
endif()
set_target_properties(${project} PROPERTIES _qt_android_abi_steps "${known_steps}")
endfunction()
@ -1473,6 +1477,10 @@ function(_qt_internal_configure_android_multiabi_target target)
)
set_property(GLOBAL APPEND PROPERTY
_qt_internal_abi_external_projects "qt_internal_android_${abi}")
if(NOT CMAKE_GENERATOR MATCHES "^Ninja")
add_dependencies(qt_internal_android_${abi}_configure
${previous_copy_apk_dependencies_target})
endif()
endif()
get_target_property(android_abi_build_dir qt_internal_android_${abi}