aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2023-06-11 03:29:28 +0300
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2023-06-20 12:32:48 +0300
commit4e59702b14cec22e8bead919aaecd7d76dbdcd17 (patch)
tree850f4ecdae3bbcbb08ac94fa3c7a69340f502091
parentd764e8fe39675b10e8b4dc71c53f3406d356aef6 (diff)
Coin:Android: unify and update OpenSSL provisioning scripts
Use the same prebuilt pacakges for all platforms since the prebuilt libs are going to be used for the target and they are not tied to the host. Pick-to: 6.6 6.5 Task-number: QTBUG-110025 Change-Id: I2c79722989902b16883b31cbc6e140855239fcc8 Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
-rwxr-xr-xcoin/provisioning/common/unix/openssl_3_for_android.sh38
-rwxr-xr-xcoin/provisioning/common/unix/openssl_for_android.sh38
-rw-r--r--coin/provisioning/common/windows/android-openssl.ps126
3 files changed, 41 insertions, 61 deletions
diff --git a/coin/provisioning/common/unix/openssl_3_for_android.sh b/coin/provisioning/common/unix/openssl_3_for_android.sh
index 0c0ff1af..9cf408f0 100755
--- a/coin/provisioning/common/unix/openssl_3_for_android.sh
+++ b/coin/provisioning/common/unix/openssl_3_for_android.sh
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
-# Copyright (C) 2022 The Qt Company Ltd.
+# Copyright (C) 2023 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 prebuilt OpenSSL which was built against Android NDK 25.
@@ -14,10 +14,8 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="3.0.7"
ndkVersionLatest="r25b"
ndkVersionDefault=$ndkVersionLatest
-prebuiltOpensslNdkShaDarwinLatest="5cf5ef6c19e62954ccffcd1e31ac1f331028de0d"
-prebuiltOpensslNdkShaLinuxLatest="f5e7e840dc1fac2868033ecfc0eeb79742b0daff"
-prebuiltOpensslNdkShaDarwinDefault=$prebuiltOpensslNdkShaDarwinLatest
-prebuiltOpensslNdkShaLinuxDefault=$prebuiltOpensslNdkShaLinuxLatest
+prebuiltOpensslNdkShaLatest="17085b1ef76ba116466213703e38a9d2274ec859"
+prebuiltOpensslNdkShaDefault=$prebuiltOpensslNdkShaLatest
: ' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK 25
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
@@ -57,30 +55,22 @@ PATH=$TOOLCHAIN:$PATH CC=clang make build_generated
function InstallPrebuiltOpenssl() {
ndkVersion=$1
- nkdSha=$2
- os=$3
+ sha=$2
- if [[ ! -d ${HOME}/openssl_android_ndk_${ndkVersion}/android/openssl-${version} ]]; then
- prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}-${os}.tar.gz"
- targetFile="/tmp/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}-${os}.tar.gz"
+ opensslHome="${HOME}/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}"
+ if [[ ! -d ${opensslHome} ]]; then
+ prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}.zip"
+ targetFile="/tmp/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}.zip"
- DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$nkdSha" "$targetFile"
- tar -xzf "$targetFile" -C "${HOME}"
- opensslHome="${HOME}/openssl_android_ndk_${ndkVersion}/android/openssl-${version}"
+ DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$sha" "$targetFile"
+ unzip -o "$targetFile" -d "${HOME}"
sudo rm -f $targetFile
fi
}
-if uname -a |grep -q "Darwin"; then
- InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaDarwinDefault "darwin"
- SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
- InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaDarwinLatest "darwin"
- SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
-else
- InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaLinuxDefault "linux"
- SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
- InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaLinuxLatest "linux"
- SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
-fi
+InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaDefault
+SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
+InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaLatest
+SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
echo "OpenSSL for Android = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/unix/openssl_for_android.sh b/coin/provisioning/common/unix/openssl_for_android.sh
index 0c0ff1af..9cf408f0 100755
--- a/coin/provisioning/common/unix/openssl_for_android.sh
+++ b/coin/provisioning/common/unix/openssl_for_android.sh
@@ -1,5 +1,5 @@
#!/usr/bin/env bash
-# Copyright (C) 2022 The Qt Company Ltd.
+# Copyright (C) 2023 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 prebuilt OpenSSL which was built against Android NDK 25.
@@ -14,10 +14,8 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="3.0.7"
ndkVersionLatest="r25b"
ndkVersionDefault=$ndkVersionLatest
-prebuiltOpensslNdkShaDarwinLatest="5cf5ef6c19e62954ccffcd1e31ac1f331028de0d"
-prebuiltOpensslNdkShaLinuxLatest="f5e7e840dc1fac2868033ecfc0eeb79742b0daff"
-prebuiltOpensslNdkShaDarwinDefault=$prebuiltOpensslNdkShaDarwinLatest
-prebuiltOpensslNdkShaLinuxDefault=$prebuiltOpensslNdkShaLinuxLatest
+prebuiltOpensslNdkShaLatest="17085b1ef76ba116466213703e38a9d2274ec859"
+prebuiltOpensslNdkShaDefault=$prebuiltOpensslNdkShaLatest
: ' SOURCE BUILD INSTRUCTIONS - Openssl prebuilt was made using Android NDK 25
# Source built requires GCC and Perl to be in PATH. Rhel "requires yum install perl-IPC-Cmd"
@@ -57,30 +55,22 @@ PATH=$TOOLCHAIN:$PATH CC=clang make build_generated
function InstallPrebuiltOpenssl() {
ndkVersion=$1
- nkdSha=$2
- os=$3
+ sha=$2
- if [[ ! -d ${HOME}/openssl_android_ndk_${ndkVersion}/android/openssl-${version} ]]; then
- prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}-${os}.tar.gz"
- targetFile="/tmp/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}-${os}.tar.gz"
+ opensslHome="${HOME}/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}"
+ if [[ ! -d ${opensslHome} ]]; then
+ prebuiltUrl="http://ci-files01-hki.ci.qt.io/input/openssl/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}.zip"
+ targetFile="/tmp/prebuilt-openssl-${version}-for-android-ndk-${ndkVersion}.zip"
- DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$nkdSha" "$targetFile"
- tar -xzf "$targetFile" -C "${HOME}"
- opensslHome="${HOME}/openssl_android_ndk_${ndkVersion}/android/openssl-${version}"
+ DownloadURL "$prebuiltUrl" "$prebuiltUrl" "$sha" "$targetFile"
+ unzip -o "$targetFile" -d "${HOME}"
sudo rm -f $targetFile
fi
}
-if uname -a |grep -q "Darwin"; then
- InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaDarwinDefault "darwin"
- SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
- InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaDarwinLatest "darwin"
- SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
-else
- InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaLinuxDefault "linux"
- SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
- InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaLinuxLatest "linux"
- SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
-fi
+InstallPrebuiltOpenssl $ndkVersionDefault $prebuiltOpensslNdkShaDefault
+SetEnvVar "OPENSSL_ANDROID_HOME_DEFAULT" "$opensslHome"
+InstallPrebuiltOpenssl $ndkVersionLatest $prebuiltOpensslNdkShaLatest
+SetEnvVar "OPENSSL_ANDROID_HOME_LATEST" "$opensslHome"
echo "OpenSSL for Android = $version" >> ~/versions.txt
diff --git a/coin/provisioning/common/windows/android-openssl.ps1 b/coin/provisioning/common/windows/android-openssl.ps1
index 7417b318..0051a5f0 100644
--- a/coin/provisioning/common/windows/android-openssl.ps1
+++ b/coin/provisioning/common/windows/android-openssl.ps1
@@ -1,4 +1,4 @@
-# Copyright (C) 2022 The Qt Company Ltd.
+# Copyright (C) 2023 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
# Requires: 7z, perl and msys
@@ -20,9 +20,9 @@ $ndk_version_latest = "r25b"
$ndk_version_default = "$ndk_version_latest"
$openssl_compressed = Get-DownloadLocation ("openssl-${openssl_version}.tar.gz")
$openssl_sha1 = "f20736d6aae36bcbfa9aba0d358c71601833bf27"
-$prebuilt_sha1_ndk_latest = "d4348812054a88b5b672a8ceae62bf30c564869b"
+$prebuilt_sha1_ndk_latest = "17085b1ef76ba116466213703e38a9d2274ec859"
$prebuilt_sha1_ndk_default = "$prebuilt_sha1_ndk_latest"
-$destination = "C:\Utils\openssl-android-master"
+$destination_prefix = "C:\Utils\prebuilt-openssl-${openssl_version}-for-android-ndk"
function Install($1, $2) {
$ndk_version = $1
@@ -33,15 +33,15 @@ function Install($1, $2) {
$ndk_path = "/c/Utils/Android/android-ndk-${ndk_version}"
$cc_path = "$ndk_path/toolchains/llvm/prebuilt/windows-x86_64/bin"
- $prebuilt_url_ndk = "\\ci-files01-hki.ci.qt.io\provisioning\openssl\prebuilt-openssl-${openssl_version}-for-android-used-ndk-${ndk_version}-windows.zip"
- $prebuilt_zip_ndk = Get-DownloadLocation ("prebuilt-openssl-${openssl_version}-for-android-used-ndk-${ndk_version}-windows.zip")
+ $prebuilt_url_openssl = "\\ci-files01-hki.ci.qt.io\provisioning\openssl\prebuilt-openssl-${openssl_version}-for-android-ndk-${ndk_version}.zip"
+ $prebuilt_zip_openssl = Get-DownloadLocation ("prebuilt-openssl-${openssl_version}-for-android-ndk-${ndk_version}.zip")
- if ((Test-Path $prebuilt_url_ndk)) {
+ if ((Test-Path $prebuilt_url_openssl)) {
Write-Host "Install prebuilt OpenSSL for Android"
- Download $prebuilt_url_ndk $prebuilt_url_ndk $prebuilt_zip_ndk
- Verify-Checksum $prebuilt_zip_ndk $prebuilt_sha1
- Extract-7Zip $prebuilt_zip_ndk C:\Utils
- Remove $prebuilt_zip_ndk
+ Download $prebuilt_url_openssl $prebuilt_url_openssl $prebuilt_zip_openssl
+ Verify-Checksum $prebuilt_zip_openssl $prebuilt_sha1
+ Extract-7Zip $prebuilt_zip_openssl C:\Utils
+ Remove $prebuilt_zip_openssl
} else {
Write-Host "Build OpenSSL for Android from sources"
# openssl-${openssl_version}_fixes-ndk_root.tar.gz package includes fixes from https://github.com/openssl/openssl/pull/17322 and string ANDROID_NDK_HOME is replaced with ANDROID_NDK_ROOT in Configurations/15-android.conf
@@ -90,13 +90,13 @@ function Install($1, $2) {
# Install NDK Default version
Install $ndk_version_default $prebuilt_sha1_ndk_default
-if (Test-Path -Path ${destination}-${ndk_version_latest}) {
+if (Test-Path -Path ${destination_prefix}-${ndk_version_latest}) {
Write-Host "OpenSSL for Android Latest version is the same than Default. Installation done."
} else {
# Install NDK Latest version
Install $ndk_version_latest $prebuilt_sha1_ndk_latest
}
-Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_DEFAULT" "${destination}-${ndk_version_default}"
-Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_LATEST" "${destination}-${ndk_version_latest}"
+Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_DEFAULT" "${destination_prefix}-${ndk_version_default}"
+Set-EnvironmentVariable "OPENSSL_ANDROID_HOME_LATEST" "${destination_prefix}-${ndk_version_latest}"
Write-Output "Android OpenSSL = $openssl_version" >> ~/versions.txt