diff options
author | Assam Boudjelthia <assam.boudjelthia@qt.io> | 2023-06-11 03:29:28 +0300 |
---|---|---|
committer | Assam Boudjelthia <assam.boudjelthia@qt.io> | 2023-06-20 12:32:48 +0300 |
commit | 4e59702b14cec22e8bead919aaecd7d76dbdcd17 (patch) | |
tree | 850f4ecdae3bbcbb08ac94fa3c7a69340f502091 | |
parent | d764e8fe39675b10e8b4dc71c53f3406d356aef6 (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-x | coin/provisioning/common/unix/openssl_3_for_android.sh | 38 | ||||
-rwxr-xr-x | coin/provisioning/common/unix/openssl_for_android.sh | 38 | ||||
-rw-r--r-- | coin/provisioning/common/windows/android-openssl.ps1 | 26 |
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 |