From 8f51576951f06c92e4cd14fb76018dfe2d984bbb Mon Sep 17 00:00:00 2001 From: Rami Potinkara Date: Mon, 28 Apr 2025 18:01:53 +0300 Subject: [PATCH] Coin: Add Android 16 to CI as insignificant This patch introduces Android 16 as insignificant to CI. Task-number: QTBUG-132638 Pick-to: 6.9 6.8 Change-Id: I29577503c50440d6b4821b1b7d6a5135935bf365 Reviewed-by: Assam Boudjelthia --- .../cmake_platforms_target_android.yaml | 17 ++++++++++++++++- .../provisioning/common/linux/android_linux.sh | 18 ++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/coin/platform_configs/cmake_platforms_target_android.yaml b/coin/platform_configs/cmake_platforms_target_android.yaml index 6c594073..dd69c739 100644 --- a/coin/platform_configs/cmake_platforms_target_android.yaml +++ b/coin/platform_configs/cmake_platforms_target_android.yaml @@ -63,4 +63,19 @@ Configurations: 'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}', 'ANDROID_EMULATOR=emulator_x86_64_api_35' ] - +- + Id: 'android-16-x86_64-on-linux' + Template: 'qtci-linux-RHEL-8.10-x86_64-51' + Target os: 'Android_ANY' + Target arch: 'x86_64' + Compiler: 'GCC' + Target compiler: 'Clang' + Platform dependency: 'rhel-8.10' + Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests'] + 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}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON', + 'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include', + 'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}', + 'ANDROID_EMULATOR=emulator_x86_64_api_36' + ] diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh index 90156b1e..4cad2b65 100755 --- a/coin/provisioning/common/linux/android_linux.sh +++ b/coin/provisioning/common/linux/android_linux.sh @@ -172,6 +172,21 @@ echo "Unzipping the Android 15 to $maxVersionDestination" sudo unzip -o -q "$maxVersionFilePath" -d "$maxVersionDestination" rm "$maxVersionFilePath" +echo "Download and unzip Android 16 System Image for insignificant" +insignificantMaxVersionFileName="x86_64-36_r06.zip" +insignificantMaxVersionDestination="$sdkTargetFolder/system-images/android-36/google_apis/" +insignificantMaxVersionFilePath="$insignificantMaxVersionDestination/$insignificantMaxVersionFileName" +insignificantMaxVersionCiUrl="$basePath/system-images/google_apis/$insignificantMaxVersionFileName" +insignificantMaxVersionUrl="https://dl.google.com/android/repository/sys-img/google_apis/$insignificantMaxVersionFileName" +insignificantMaxVersionSha1="a9b0b4a0488e0c6c380f5485507950f011388511" + +mkdir -p "$insignificantMaxVersionDestination" +DownloadURL "$insignificantMaxVersionCiUrl" "$insignificantMaxVersionUrl" "$insignificantMaxVersionSha1" "$insignificantMaxVersionFilePath" + +echo "Unzipping the Android 16 insignicant to $insignificantMaxVersionDestination" +sudo unzip -o -q "$insignificantMaxVersionFilePath" -d "$insignificantMaxVersionDestination" +rm "$insignificantMaxVersionFilePath" + echo "Checking the contents of Android SDK again..." ls -l "$sdkTargetFolder" @@ -181,6 +196,9 @@ echo "no" | ./avdmanager create avd -n emulator_x86_api_28 -c 2048M -f \ echo "no" | ./avdmanager create avd -n emulator_x86_64_api_35 -c 2048M -f \ -k "system-images;android-35;google_apis;x86_64" +echo "no" | ./avdmanager create avd -n emulator_x86_64_api_36 -c 2048M -f \ + -k "system-images;android-36;google_apis;x86_64" + echo "Install maximum supported SDK level image for Android Automotive $sdkApiLevelAutomotiveMax" DownloadURL "$androidAutomotiveMaxUrl" "$androidAutomotiveMaxUrl" "$androidAutomotiveMaxSha" \ "/tmp/${sdkApiLevelAutomotiveMax}_automotive.tar.gz"