CMake: Add the android finalizer to Core also during the qtbase build

This will allow running the finalizer properly for Android tests in a
qtbase built with in-tree tests.

This is similar to what we do with the
_qt_internal_add_qml_deploy_info_finalizer for the Qml module.

Task-number: QTBUG-93625
Task-number: QTBUG-112212
Change-Id: I233ce229054b5ce15783cf06b9a69aaa68eb8847
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
(cherry picked from commit a72dacce214e394da33529f2501e14c21b13c763)
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
This commit is contained in:
Alexandru Croitor 2024-10-23 17:19:00 +02:00
parent e4549375c9
commit c53a9d9ffb
3 changed files with 10 additions and 4 deletions

View File

@ -465,6 +465,7 @@ if(QT_FEATURE_reduce_relocations AND UNIX AND GCC)
endif()
if(ANDROID)
_qt_internal_add_android_executable_finalizer(Core)
set_property(TARGET Core APPEND PROPERTY QT_ANDROID_BUNDLED_JAR_DEPENDENCIES
jar/Qt${QtBase_VERSION_MAJOR}Android.jar
)

View File

@ -1575,6 +1575,14 @@ function(_qt_internal_android_executable_finalizer target)
_qt_internal_android_create_runner_wrapper("${target}")
endfunction()
# Helper to add the android executable finalizer.
function(_qt_internal_add_android_executable_finalizer target)
set_property(TARGET ${target} APPEND PROPERTY
INTERFACE_QT_EXECUTABLE_FINALIZERS
_qt_internal_android_executable_finalizer
)
endfunction()
# Generates an Android app runner script for target
function(_qt_internal_android_create_runner_wrapper target)
get_target_property(is_test ${target} _qt_is_test_executable)

View File

@ -34,10 +34,7 @@ if(ANDROID_PLATFORM)
_qt_internal_create_global_android_targets()
_qt_internal_collect_default_android_abis()
if(NOT QT_NO_CREATE_TARGETS)
set_property(TARGET ${__qt_core_target} APPEND PROPERTY
INTERFACE_QT_EXECUTABLE_FINALIZERS
_qt_internal_android_executable_finalizer
)
_qt_internal_add_android_executable_finalizer(${__qt_core_target})
endif()
endif()