mirror of
git://code.qt.io/qt/qt5.git
synced 2026-03-17 17:56:11 +08:00
Android 16: Introduce NDK r29-beta2 as preview NDK
This patch introduces preview NDK. Environment variables related to preview NDK's are marked with _PREVIEW. The patch introduces NDK 29.0.13599879-beta2 as first _PREVIEW NDK. This preview NDK will be first used in insignificant platforms Android 16. Task-number: QTQAINFRA-7290 Fixes: QTQAINFRA-7291 Change-Id: Id093b8f71970f77409bd805d6d1d153f47ade762 Reviewed-by: Rami Potinkara <rami.potinkara@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Elias Toivola <elias.toivola@qt.io>
This commit is contained in:
committed by
Elias Toivola
parent
29f432f318
commit
1ce81f80e4
@@ -79,9 +79,9 @@ Configurations:
|
||||
Platform dependency: 'rhel-8.10'
|
||||
Features: ['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_LATEST}} -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_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_PREVIEW}} -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_PREVIEW}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_PREVIEW}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_PREVIEW}}',
|
||||
'ANDROID_EMULATOR=emulator_x86_64_api_36'
|
||||
]
|
||||
|
||||
@@ -31,10 +31,14 @@ toolsSha1="9172381ff070ee2a416723c1989770cf4b0d1076"
|
||||
ndkVersionLatest="r27c"
|
||||
ndkSha1Latest="090e8083a715fdb1a3e402d0763c388abb03fb4e"
|
||||
|
||||
# Preview NDK that is in alpha/beta/RC state
|
||||
ndkVersionPreview="r29-beta2"
|
||||
ndkSha1Preview="06c29d6764526fb51407d08fcead41247ddd3b70"
|
||||
|
||||
# Non-latest (but still supported by the qt/qt5 branch) NDKs are installed for nightly targets in:
|
||||
# coin/platform_configs/nightly_android.yaml
|
||||
|
||||
ndkVersionNightly1=$ndkVersionLatest # Same version = skip NDK install for nightly
|
||||
ndkVersionNightly1=$ndkVersionLatest # Set as same version as latest = skip NDK install in provisioning
|
||||
ndkSha1Nightly1=$ndkSha1Latest
|
||||
|
||||
ndkVersionNightly2=$ndkVersionLatest
|
||||
@@ -79,6 +83,11 @@ function InstallNdk() {
|
||||
InstallNdk $ndkVersionLatest $ndkSha1Latest
|
||||
SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$androidNdkRoot"
|
||||
|
||||
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
|
||||
InstallNdk $ndkVersionPreview $ndkSha1Preview
|
||||
SetEnvVar "ANDROID_NDK_ROOT_PREVIEW" "$androidNdkRoot"
|
||||
fi
|
||||
|
||||
if [ "$ndkVersionNightly1" != "$ndkVersionLatest" ]; then
|
||||
InstallNdk $ndkVersionNightly1 $ndkSha1Nightly1
|
||||
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY1" "$androidNdkRoot"
|
||||
|
||||
@@ -24,6 +24,7 @@ toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
# coin/platform_configs/nightly_android.yaml
|
||||
|
||||
ndkVersionLatest="r27c"
|
||||
ndkVersionPreview="r29-beta2"
|
||||
ndkVersionNightly1="$ndkVersionLatest" # If same version as latest = skip NDK install for nightly
|
||||
ndkVersionNightly2="$ndkVersionLatest"
|
||||
|
||||
@@ -48,6 +49,11 @@ function InstallNdk() {
|
||||
InstallNdk $ndkVersionLatest
|
||||
SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$targetFolder/android-ndk-$ndkVersionLatest"
|
||||
|
||||
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
|
||||
InstallNdk $ndkVersionPreview
|
||||
SetEnvVar "ANDROID_NDK_ROOT_PREVIEW" "$targetFolder/android-ndk-$ndkVersionPreview"
|
||||
fi
|
||||
|
||||
if [ "$ndkVersionNightly1" != "$ndkVersionLatest" ]; then
|
||||
InstallNdk $ndkVersionNightly1
|
||||
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY1" "$targetFolder/android-ndk-$ndkVersionNightly1"
|
||||
|
||||
@@ -116,24 +116,28 @@ if [ "$os" == "android-x86" ]; then
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-x86_64" ]; then
|
||||
target_arch=x86_64
|
||||
target_dir="/usr/local/android/ffmpeg-x86_64"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_X86_64_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_X86_64_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-arm32" ]; then
|
||||
target_arch=arm32
|
||||
target_dir="/usr/local/android/ffmpeg-arm32"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM32_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_ARM32_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_ARM32_NDK_PREVIEW"
|
||||
elif [ "$os" == "android-arm64" ]; then
|
||||
target_arch=arm64
|
||||
target_dir="/usr/local/android/ffmpeg-arm64"
|
||||
envvar_latest="FFMPEG_DIR_ANDROID_ARM64_NDK_LATEST"
|
||||
envvar_nightly1="FFMPEG_DIR_ANDROID_ARM64_NDK_NIGHTLY1"
|
||||
envvar_nightly2="FFMPEG_DIR_ANDROID_ARM64_NDK_NIGHTLY2"
|
||||
envvar_preview="FFMPEG_DIR_ANDROID_ARM64_NDK_PREVIEW"
|
||||
else
|
||||
>&2 echo "Unhandled android os param: $os"
|
||||
exit 1
|
||||
@@ -149,6 +153,13 @@ assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_LATEST"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/latest" "$ANDROID_NDK_ROOT_LATEST" "$OPENSSL_ANDROID_HOME_LATEST"
|
||||
set_ffmpeg_dir_env_var "$envvar_latest" "$target_dir/latest"
|
||||
|
||||
if [ "${ANDROID_NDK_ROOT_PREVIEW}" ]; then
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_PREVIEW"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_PREVIEW"
|
||||
build_ffmpeg_android "$target_arch" "$target_dir/preview" "$ANDROID_NDK_ROOT_PREVIEW" "$OPENSSL_ANDROID_HOME_PREVIEW"
|
||||
set_ffmpeg_dir_env_var "$envvar_preview" "$target_dir/preview"
|
||||
fi
|
||||
|
||||
if [ "${ANDROID_NDK_ROOT_NIGHTLY1}" ]; then
|
||||
assert_envvar_is_populated_dir "ANDROID_NDK_ROOT_NIGHTLY1"
|
||||
assert_envvar_is_populated_dir "OPENSSL_ANDROID_HOME_NIGHTLY1"
|
||||
|
||||
@@ -15,6 +15,10 @@ sslVersionForLatest="3.0.7"
|
||||
ndkVersionLatest="r27c"
|
||||
prebuiltOpensslShaLatest="733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
||||
|
||||
sslVersionForPreview="3.0.7"
|
||||
ndkVersionPreview="r29-beta2"
|
||||
prebuiltOpensslShaPreview="c2cf8fabfb7e00b31abcc554e6e306dafd99ae1b"
|
||||
|
||||
ndkVersionNightly1=$ndkVersionLatest
|
||||
sslVersionForNightly1=$sslVersionForLatest
|
||||
prebuiltOpensslShaNightly1=$prebuiltOpensslShaLatest
|
||||
@@ -23,7 +27,7 @@ ndkVersionNightly2=$ndkVersionLatest
|
||||
sslVersionForNightly2=$sslVersionForLatest
|
||||
prebuiltOpensslShaNightly2=$prebuiltOpensslShaLatest
|
||||
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r27c
|
||||
: <<'EOB' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK r29-beta2
|
||||
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
|
||||
exports_file="/tmp/export.sh"
|
||||
# source previously made environmental variables.
|
||||
@@ -84,6 +88,12 @@ if [ "$ndkVersionNightly2" != "$ndkVersionLatest" ]; then
|
||||
echo "OpenSSL for Android $ndkVersionNightly2 = $sslVersionForNightly2" >> ~/versions.txt
|
||||
fi
|
||||
|
||||
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
|
||||
InstallPrebuiltOpenssl $ndkVersionPreview $prebuiltOpensslShaPreview $sslVersionForPreview
|
||||
SetEnvVar "OPENSSL_ANDROID_HOME_PREVIEW" "$opensslHome"
|
||||
echo "OpenSSL for Android $ndkVersionPreview = $sslVersionForPreview" >> ~/versions.txt
|
||||
fi
|
||||
|
||||
InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslShaLatest $sslVersionForLatest
|
||||
SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
|
||||
echo "OpenSSL for Android $ndkVersionLatest = $sslVersionForLatest" >> ~/versions.txt
|
||||
|
||||
@@ -20,6 +20,11 @@ $ndk_version_latest = "r27c"
|
||||
$prebuilt_ssl_sha1_latest = "733cff853b6ee7738e78b90f46b5f028c8490e1e"
|
||||
$openssl_sha1_latest = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
||||
|
||||
$openssl_version_preview = "3.0.7"
|
||||
$ndk_version_preview = "r29-beta2"
|
||||
$prebuilt_ssl_sha1_preview = "c2cf8fabfb7e00b31abcc554e6e306dafd99ae1b"
|
||||
$openssl_sha1_preview = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
|
||||
|
||||
$openssl_version_nightly1 = $openssl_version_latest
|
||||
$ndk_version_nightly1 = $ndk_version_latest
|
||||
$prebuilt_ssl_sha1_nightly1 = $prebuilt_ssl_sha1_latest
|
||||
@@ -103,6 +108,12 @@ $ndk_ssl_path = Install $openssl_version_latest $ndk_version_latest $prebuilt_ss
|
||||
Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_LATEST" "$ndk_ssl_path"
|
||||
Write-Output "Android OpenSSL $openssl_version_latest for NDK $ndk_version_latest" >> ~/versions.txt
|
||||
|
||||
if ($ndk_version_preview -ne $ndk_version_latest) {
|
||||
$ndk_ssl_path = Install $openssl_version_preview $ndk_version_preview $prebuilt_ssl_sha1_preview $openssl_sha1_preview
|
||||
Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_PREVIEW" "$ndk_ssl_path"
|
||||
Write-Output "Android OpenSSL $openssl_version_preview for NDK $ndk_version_preview" >> ~/versions.txt
|
||||
}
|
||||
|
||||
if ($ndk_version_nightly1 -ne $ndk_version_latest) {
|
||||
$ndk_ssl_path = Install $openssl_version_nightly1 $ndk_version_nightly1 $prebuilt_ssl_sha1_nightly1 $openssl_sha1_nightly1
|
||||
Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_NIGHTLY1" "$ndk_ssl_path"
|
||||
|
||||
@@ -17,6 +17,13 @@ $ndkChecksumLatest = "ac5f7762764b1f15341094e148ad4f847d050c38"
|
||||
$ndkCachedUrlLatest = "\\ci-files01-hki.ci.qt.io\provisioning\android\android-ndk-$ndkVersionLatest-windows.zip"
|
||||
$ndkOfficialUrlLatest = "https://dl.google.com/android/repository/android-ndk-$ndkVersionLatest-windows.zip"
|
||||
|
||||
# NDK in alpha/beta/RC state
|
||||
|
||||
$ndkVersionPreview = "r29-beta2"
|
||||
$ndkChecksumPreview = "59b665f7506f1079771393f2c90f3cb29817ecfb"
|
||||
$ndkCachedUrlPreview = "\\ci-files01-hki.ci.qt.io\provisioning\android\android-ndk-$ndkVersionPreview-windows.zip"
|
||||
$ndkOfficialUrlPreview = "https://dl.google.com/android/repository/android-ndk-$ndkVersionPreview-windows.zip"
|
||||
|
||||
# Non-latest (but still supported by the qt/qt5 branch) NDKs are installed for nightly targets in:
|
||||
# coin/platform_configs/nightly_android.yaml
|
||||
|
||||
@@ -68,6 +75,13 @@ Set-EnvironmentVariable "ANDROID_NDK_ROOT_LATEST" $ndkFolderLatest
|
||||
# To be used by vcpkg
|
||||
Set-EnvironmentVariable "ANDROID_NDK_HOME" $ndkFolderLatest
|
||||
|
||||
if ($ndkVersionPreview -ne $ndkVersionLatest) {
|
||||
Write-Host "Installing Android NDK $ndkVersionPreview"
|
||||
$ndkFolderPreview = Install $ndkCachedUrlPreview $ndkZip $ndkChecksumPreview $ndkOfficialUrlPreview
|
||||
Set-EnvironmentVariable "ANDROID_NDK_ROOT_PREVIEW" $ndkFolderPreview
|
||||
Write-Output "Android NDK = $ndkVersionPreview" >> ~/versions.txt
|
||||
}
|
||||
|
||||
if ($ndkVersionNightly1 -ne $ndkVersionLatest) {
|
||||
Write-Host "Installing Android NDK $ndkVersionNightly1"
|
||||
$ndkFolderNightly = Install $ndkCachedUrlNightly1 $ndkZip $ndkChecksumNightly1 $ndkOfficialUrlNightly1
|
||||
|
||||
@@ -1,64 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2022 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script install Android sdk and ndk.
|
||||
|
||||
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||
|
||||
targetFolder="/opt/android"
|
||||
sdkTargetFolder="$targetFolder/sdk"
|
||||
|
||||
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersion="r27c"
|
||||
ndkFile="android-ndk-$ndkVersion-darwin.zip"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
ndkSourceFile="$basePath/$ndkFile"
|
||||
|
||||
echo "Unzipping Android NDK to '$targetFolder'"
|
||||
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
|
||||
echo "Unzipping Android Tools to '$sdkTargetFolder'"
|
||||
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
|
||||
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
|
||||
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
|
||||
|
||||
sudo mkdir "$sdkTargetFolder/cmdline-tools"
|
||||
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
|
||||
|
||||
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
|
||||
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
|
||||
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
|
||||
echo "Checking the contents of Android SDK..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
|
||||
SetEnvVar "ANDROID_SDK_ROOT" "$sdkTargetFolder"
|
||||
SetEnvVar "ANDROID_NDK_ROOT" "$targetFolder/android-ndk-$ndkVersion"
|
||||
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
|
||||
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
|
||||
|
||||
cat << EOB >> ~/versions.txt
|
||||
Android SDK tools = $toolsVersion
|
||||
Android SDK Build Tools = $sdkBuildToolsVersion
|
||||
Android SDK API level = $sdkApiLevel
|
||||
Android NDK = $ndkVersion
|
||||
EOB
|
||||
# shellcheck source=../common/macos/android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/macos/android.sh"
|
||||
|
||||
@@ -1,64 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2022 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script install Android sdk and ndk.
|
||||
|
||||
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||
|
||||
targetFolder="/opt/android"
|
||||
sdkTargetFolder="$targetFolder/sdk"
|
||||
|
||||
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersion="r27c"
|
||||
ndkFile="android-ndk-$ndkVersion-darwin.zip"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
ndkSourceFile="$basePath/$ndkFile"
|
||||
|
||||
echo "Unzipping Android NDK to '$targetFolder'"
|
||||
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
|
||||
echo "Unzipping Android Tools to '$sdkTargetFolder'"
|
||||
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
|
||||
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
|
||||
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
|
||||
|
||||
sudo mkdir "$sdkTargetFolder/cmdline-tools"
|
||||
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
|
||||
|
||||
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
|
||||
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
|
||||
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
|
||||
echo "Checking the contents of Android SDK..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
|
||||
SetEnvVar "ANDROID_SDK_ROOT" "$sdkTargetFolder"
|
||||
SetEnvVar "ANDROID_NDK_ROOT" "$targetFolder/android-ndk-$ndkVersion"
|
||||
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
|
||||
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
|
||||
|
||||
cat << EOB >> ~/versions.txt
|
||||
Android SDK tools = $toolsVersion
|
||||
Android SDK Build Tools = $sdkBuildToolsVersion
|
||||
Android SDK API level = $sdkApiLevel
|
||||
Android NDK = $ndkVersion
|
||||
EOB
|
||||
# shellcheck source=../common/macos/android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/macos/android.sh"
|
||||
|
||||
@@ -1,65 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2022 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script install Android sdk and ndk.
|
||||
|
||||
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||
|
||||
targetFolder="/opt/android"
|
||||
sdkTargetFolder="$targetFolder/sdk"
|
||||
|
||||
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersion="r27c"
|
||||
ndkFile="android-ndk-$ndkVersion-darwin.zip"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
ndkSourceFile="$basePath/$ndkFile"
|
||||
|
||||
echo "Unzipping Android NDK to '$targetFolder'"
|
||||
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
|
||||
echo "Unzipping Android Tools to '$sdkTargetFolder'"
|
||||
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
sudo chmod -R 755 $targetFolder
|
||||
|
||||
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
|
||||
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
|
||||
|
||||
sudo mkdir "$sdkTargetFolder/cmdline-tools"
|
||||
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
|
||||
|
||||
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
|
||||
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
|
||||
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
|
||||
echo "Checking the contents of Android SDK..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
|
||||
SetEnvVar "ANDROID_SDK_ROOT" "$sdkTargetFolder"
|
||||
SetEnvVar "ANDROID_NDK_ROOT" "$targetFolder/android-ndk-$ndkVersion"
|
||||
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
|
||||
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
|
||||
|
||||
cat << EOB >> ~/versions.txt
|
||||
Android SDK tools = $toolsVersion
|
||||
Android SDK Build Tools = $sdkBuildToolsVersion
|
||||
Android SDK API level = $sdkApiLevel
|
||||
Android NDK = $ndkVersion
|
||||
EOB
|
||||
# shellcheck source=../common/macos/android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/macos/android.sh"
|
||||
|
||||
@@ -1,64 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2020 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script install Android sdk and ndk.
|
||||
|
||||
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||
|
||||
targetFolder="/opt/android"
|
||||
sdkTargetFolder="$targetFolder/sdk"
|
||||
|
||||
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersion="r27c"
|
||||
ndkFile="android-ndk-$ndkVersion-darwin.zip"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
ndkSourceFile="$basePath/$ndkFile"
|
||||
|
||||
echo "Unzipping Android NDK to '$targetFolder'"
|
||||
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
|
||||
echo "Unzipping Android Tools to '$sdkTargetFolder'"
|
||||
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
|
||||
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
|
||||
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
|
||||
|
||||
sudo mkdir "$sdkTargetFolder/cmdline-tools"
|
||||
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
|
||||
|
||||
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
|
||||
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
|
||||
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
|
||||
echo "Checking the contents of Android SDK..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
|
||||
SetEnvVar "ANDROID_SDK_ROOT" "$sdkTargetFolder"
|
||||
SetEnvVar "ANDROID_NDK_ROOT" "$targetFolder/android-ndk-$ndkVersion"
|
||||
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
|
||||
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
|
||||
|
||||
cat << EOB >> ~/versions.txt
|
||||
Android SDK tools = $toolsVersion
|
||||
Android SDK Build Tools = $sdkBuildToolsVersion
|
||||
Android SDK API level = $sdkApiLevel
|
||||
Android NDK = $ndkVersion
|
||||
EOB
|
||||
# shellcheck source=../common/macos/android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/macos/android.sh"
|
||||
|
||||
@@ -1,64 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copyright (C) 2020 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script install Android sdk and ndk.
|
||||
|
||||
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
|
||||
#Copyright (C) 2025 The Qt Company Ltd
|
||||
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/SetEnvVar.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
|
||||
|
||||
targetFolder="/opt/android"
|
||||
sdkTargetFolder="$targetFolder/sdk"
|
||||
|
||||
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
|
||||
|
||||
toolsVersion="2.1"
|
||||
# toolsFile dertermines tools version
|
||||
toolsFile="commandlinetools-mac-6609375_latest.zip"
|
||||
|
||||
ndkVersion="r27c"
|
||||
ndkFile="android-ndk-$ndkVersion-darwin.zip"
|
||||
sdkBuildToolsVersion="35.0.1"
|
||||
# this is compile sdk version
|
||||
sdkApiLevel="android-35"
|
||||
|
||||
toolsSourceFile="$basePath/$toolsFile"
|
||||
ndkSourceFile="$basePath/$ndkFile"
|
||||
|
||||
echo "Unzipping Android NDK to '$targetFolder'"
|
||||
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
|
||||
echo "Unzipping Android Tools to '$sdkTargetFolder'"
|
||||
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
|
||||
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
|
||||
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
|
||||
|
||||
sudo mkdir "$sdkTargetFolder/cmdline-tools"
|
||||
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
|
||||
|
||||
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
|
||||
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
|
||||
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
|
||||
| eval "$sdkmanager_no_progress_bar_cmd"
|
||||
|
||||
echo "Checking the contents of Android SDK..."
|
||||
ls -l "$sdkTargetFolder"
|
||||
|
||||
SetEnvVar "ANDROID_SDK_ROOT" "$sdkTargetFolder"
|
||||
SetEnvVar "ANDROID_NDK_ROOT" "$targetFolder/android-ndk-$ndkVersion"
|
||||
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
|
||||
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
|
||||
|
||||
cat << EOB >> ~/versions.txt
|
||||
Android SDK tools = $toolsVersion
|
||||
Android SDK Build Tools = $sdkBuildToolsVersion
|
||||
Android SDK API level = $sdkApiLevel
|
||||
Android NDK = $ndkVersion
|
||||
EOB
|
||||
# shellcheck source=../common/macos/android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/macos/android.sh"
|
||||
|
||||
Reference in New Issue
Block a user