Use config from the main ABI when building ABI-specific external project

ABI-specific external projects should use the same config as the one is
used by the "main" ABI.

Task-number: QTBUG-88841
Change-Id: If7a1834d9a3f238f6dadd05323ccc0cf8552128c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
bb10
Alexey Edelev 2021-11-18 13:19:00 +01:00
parent 4ad57bb212
commit a88b53f713
1 changed files with 9 additions and 0 deletions

View File

@ -590,6 +590,13 @@ function(_qt_internal_create_executable target)
continue()
endif()
get_cmake_property(is_multi_config GENERATOR_IS_MULTI_CONFIG)
if(is_multi_config)
list(JOIN CMAKE_CONFIGURATION_TYPES "$<SEMICOLON>" escaped_configuration_types)
set(config_arg "-DCMAKE_CONFIGURATION_TYPES=${escaped_configuration_types}")
else()
set(config_arg "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}")
endif()
_qt_internal_get_android_abi_path(qt_abi_path ${abi})
set(qt_abi_toolchain_path
"${qt_abi_path}/lib/cmake/${QT_CMAKE_EXPORT_NAMESPACE}/qt.toolchain.cmake")
@ -600,10 +607,12 @@ function(_qt_internal_create_executable target)
CMAKE_ARGS "-DCMAKE_TOOLCHAIN_FILE=${qt_abi_toolchain_path}"
"-DQT_IS_ANDROID_MULTI_ABI_EXTERNAL_PROJECT=ON"
"-DQT_ANDROID_ABI_TARGET_PATH=${abi_copy_target_path}"
"${config_arg}"
STEP_TARGETS build
EXCLUDE_FROM_ALL TRUE
BUILD_COMMAND "${CMAKE_COMMAND}"
"--build" "${CMAKE_CURRENT_BINARY_DIR}/${target}_${abi}"
"--config" "$<CONFIG>"
"--target" "${target}_prepare_apk_dir"
)
add_dependencies(${target} "${target}_${abi}-build")