Build android target binaries only once

- android armv7 is build only in windows
- android arm64 is build only in mac
- android x86 and android x86_64 are build only in linux

Task-number: QTBUG-101357
Pick-to: 6.4
Change-Id: Ibfbd2e3c6d5d3a7a52dde3b35ca6c23eddf4b2f1
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
This commit is contained in:
Jani Heikkinen
2022-09-22 13:40:39 +03:00
parent b51d7ca210
commit 8899244b8c
4 changed files with 17 additions and 146 deletions

View File

@@ -2,9 +2,7 @@ Version: 2
Include: [
cmake_platforms_qemu.yaml,
cmake_platforms_qemu_qnx710.yaml,
cmake_platforms_target_android_host_linux.yaml,
cmake_platforms_target_android_host_macos.yaml,
cmake_platforms_target_android_host_windows.yaml,
cmake_platforms_target_android.yaml,
cmake_platforms_wasm.yaml,
macos.yaml
]

View File

@@ -1,33 +1,35 @@
Version: 2
Configurations:
-
Template: 'qtci-linux-RHEL-8.4-x86_64-50'
Id: 'android-arm64-on-macos'
Template: 'qtci-macos-12-x86_64-102'
Target os: 'Android_ANY'
Target arch: 'arm64'
Compiler: 'GCC'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'RHEL-8.4-host'
Platform dependency: 'macos-latest-xcode-universal-packaging-build'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-linux-x86_64-gcc',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-macos-universal-clang',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-arm64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-linux-RHEL-8.4-x86_64-50'
Template: 'qtci-windows-10_21H2-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'armv7'
Compiler: 'GCC'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'RHEL-8.4-host'
Platform dependency: 'Windows10_21H2-Mingw11-x64-host'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/linux-x86_64-gcc',
'CONAN_PROFILE=coin/conan/profiles/unix-android-armv7-clang',
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a -no-feature-pkg-config',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-windows-x86_64-mingw',
'CONAN_PROFILE=coin/conan/profiles/ci-windows-android-armv7-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
@@ -40,7 +42,7 @@ Configurations:
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-linux-x86_64-gcc',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-x86-clang',
'ANDROID_EMULATOR=@emulator_x86_api_23',
@@ -56,7 +58,7 @@ Configurations:
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-linux-x86_64-gcc',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-x86_64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'

View File

@@ -1,63 +0,0 @@
Version: 2
Configurations:
-
Id: 'android-arm64-on-macos'
Template: 'qtci-macos-12-x86_64-102'
Target os: 'Android_ANY'
Target arch: 'arm64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-latest-xcode-universal-packaging-build'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-macos-universal-clang',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-arm64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-macos-12-x86_64-102'
Target os: 'Android_ANY'
Target arch: 'armv7'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-latest-xcode-universal-packaging-build'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-macos-universal-clang',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-armv7-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-macos-12-x86_64-102'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-latest-xcode-universal-packaging-build'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-macos-universal-clang',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-x86-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-macos-12-x86_64-102'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'Clang'
Target compiler: 'Clang'
Platform dependency: 'macos-latest-xcode-universal-packaging-build'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-macos-universal-clang',
'CONAN_PROFILE=coin/conan/profiles/ci-unix-android-x86_64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]

View File

@@ -1,66 +0,0 @@
Version: 2
Configurations:
-
Template: 'qtci-windows-10_21H2-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'arm64'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'Windows10_21H2-Mingw11-x64-host'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis arm64-v8a -no-feature-pkg-config',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-windows-x86_64-mingw',
'CONAN_PROFILE=coin/conan/profiles/ci-windows-android-arm64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-windows-10_21H2-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'armv7'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'Windows10_21H2-Mingw11-x64-host'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis armeabi-v7a -no-feature-pkg-config',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-windows-x86_64-mingw',
'CONAN_PROFILE=coin/conan/profiles/ci-windows-android-armv7-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-windows-10_21H2-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'Windows10_21H2-Mingw11-x64-host'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86 -no-feature-pkg-config',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-windows-x86_64-mingw',
'CONAN_PROFILE=coin/conan/profiles/ci-windows-android-x86-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]
-
Template: 'qtci-windows-10_21H2-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'Mingw'
Target compiler: 'Clang'
Platform dependency: 'Windows10_21H2-Mingw11-x64-host'
Features: ['Packaging', 'Sccache', 'DisableTests', 'UseConfigure']
Environment variables: [
'Path={{.Env.MINGW1120}}\bin;{{.Env.Path}}',
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64 -no-feature-pkg-config',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
'CONAN_HOST_PROFILE=coin/conan/profiles/ci-windows-x86_64-mingw',
'CONAN_PROFILE=coin/conan/profiles/ci-windows-android-x86_64-clang',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
]