diff options
Diffstat (limited to 'coin/provisioning')
18 files changed, 151 insertions, 5 deletions
diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh index 5707e76b..178ff68c 100755 --- a/coin/provisioning/common/linux/android_linux.sh +++ b/coin/provisioning/common/linux/android_linux.sh @@ -80,6 +80,10 @@ SetEnvVar "ANDROID_NDK_ROOT_DEFAULT" "$targetFolder/android-ndk-$ndkVersionDefau InstallNdk $ndkVersionLatest $ndkSha1Latest SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$targetFolder/android-ndk-$ndkVersionLatest" +# To be used by vcpkg +SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersionDefault" +export ANDROID_NDK_HOME="$targetFolder/android-ndk-$ndkVersionDefault" + echo "Changing ownership of Android files." if uname -a |grep -q "el7"; then sudo chown -R qt:wheel "$targetFolder" diff --git a/coin/provisioning/common/linux/install-vcpkg-ports-android.sh b/coin/provisioning/common/linux/install-vcpkg-ports-android.sh new file mode 100755 index 00000000..5aafc012 --- /dev/null +++ b/coin/provisioning/common/linux/install-vcpkg-ports-android.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash +# 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 + +echo "Installing vcpkg android ports" + +pushd "${BASH_SOURCE%/*}/vcpkg" || exit +cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" . + +$VCPKG_ROOT/vcpkg install --triplet x86-android-qt --x-install-root x86-android-qt-tmp --debug +$VCPKG_ROOT/vcpkg install --triplet x86_64-android-qt --x-install-root x86_64-android-qt-tmp --debug + +mkdir -p $VCPKG_ROOT/installed +cp -R x86-android-qt-tmp/* $VCPKG_ROOT/installed/ +cp -R x86_64-android-qt-tmp/* $VCPKG_ROOT/installed/ + +versions=$(jq -r '.overrides[] | "vcpkg \(.name) for android = \(.version)"' vcpkg.json) +versions="${versions//vcpkg/\\nvcpkg}" +echo $versions >> ~/versions.txt + +rm -rf x86-android-qt-tmp +rm -rf x86_64-android-qt-tmp + +popd || exit diff --git a/coin/provisioning/common/linux/install-vcpkg-ports.sh b/coin/provisioning/common/linux/install-vcpkg-ports.sh new file mode 100755 index 00000000..853f4131 --- /dev/null +++ b/coin/provisioning/common/linux/install-vcpkg-ports.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash +# 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 + +echo "Installing vcpkg ports" + +pushd "${BASH_SOURCE%/*}/vcpkg" || exit +cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" . + +$VCPKG_ROOT/vcpkg install --triplet x64-linux-qt --x-install-root x64-linux-qt-tmp --debug + +mkdir -p "$VCPKG_ROOT/installed" +cp -R x64-linux-qt-tmp/* $VCPKG_ROOT/installed/ + +versions=$(jq -r '.overrides[] | "vcpkg \(.name) = \(.version)"' vcpkg.json) +versions="${versions//vcpkg/\\nvcpkg}" +echo $versions >> ~/versions.txt + +rm -rf x64-linux-qt-tmp + +popd || exit diff --git a/coin/provisioning/common/linux/install-vcpkg.sh b/coin/provisioning/common/linux/install-vcpkg.sh index 70b069ae..70b069ae 100644..100755 --- a/coin/provisioning/common/linux/install-vcpkg.sh +++ b/coin/provisioning/common/linux/install-vcpkg.sh diff --git a/coin/provisioning/common/linux/vcpkg/vcpkg.json b/coin/provisioning/common/linux/vcpkg/vcpkg.json index 0db3279e..70cb16fb 100644 --- a/coin/provisioning/common/linux/vcpkg/vcpkg.json +++ b/coin/provisioning/common/linux/vcpkg/vcpkg.json @@ -1,3 +1,12 @@ { - + "overrides": [ + { + "name": "openssl", + "version": "3.0.7", + "port-version": 2 + } + ], + "dependencies": [ + "openssl" + ] } diff --git a/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake b/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake new file mode 100644 index 00000000..95cc1934 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x64-linux-qt.cmake @@ -0,0 +1,13 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_LIBRARY_LINKAGE dynamic) + set(VCPKG_FIXUP_ELF_RPATH ON) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) diff --git a/coin/provisioning/common/shared/triplets/x86-android-qt.cmake b/coin/provisioning/common/shared/triplets/x86-android-qt.cmake new file mode 100644 index 00000000..a4b74012 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x86-android-qt.cmake @@ -0,0 +1,15 @@ +set(VCPKG_TARGET_ARCHITECTURE x86) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_CRT_LINKAGE dynamic) + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Android) +set(VCPKG_MAKE_BUILD_TRIPLET "--host=i686-linux-android") +set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=x86) diff --git a/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake b/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake new file mode 100644 index 00000000..47afae58 --- /dev/null +++ b/coin/provisioning/common/shared/triplets/x86_64-android-qt.cmake @@ -0,0 +1,15 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) + +# Default settings of the triplet from the official vcpkg registry +set(VCPKG_CRT_LINKAGE static) +set(VCPKG_LIBRARY_LINKAGE static) + +# Qt custom per-port customizations +if(PORT MATCHES "openssl") + set(VCPKG_CRT_LINKAGE dynamic) + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +set(VCPKG_CMAKE_SYSTEM_NAME Android) +set(VCPKG_MAKE_BUILD_TRIPLET "--host=x86_64-linux-android") +set(VCPKG_CMAKE_CONFIGURE_OPTIONS -DANDROID_ABI=x86_64) diff --git a/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-install-packages.sh b/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-install-packages.sh index 9eb8ef7f..99976038 100755 --- a/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-install-packages.sh +++ b/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-install-packages.sh @@ -143,6 +143,8 @@ installPackages+=(cifs-utils) installPackages+=(jq) # zip, needed for vcpkg caching installPackages+=(zip) +# OpenSSL requirement, built by vcpkg +installPackages+=(perl-IPC-Cmd) sudo yum -y install "${installPackages[@]}" @@ -163,4 +165,4 @@ sudo /usr/bin/pip3 install wheel sudo /usr/bin/pip3 install dataclasses OpenSSLVersion="$(openssl3 version |cut -b 9-14)" -echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt +echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/42-install-vcpkg-ports.sh b/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/42-install-vcpkg-ports.sh new file mode 100755 index 00000000..4bc799eb --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-8.8-x86_64/42-install-vcpkg-ports.sh @@ -0,0 +1,14 @@ +#!/usr/bin/env bash +# 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 + +echo "Installing vcpkg ports" +echo "VCPKG_ROOT: ${VCPKG_ROOT}" +echo "ANDOID_NDK_HOME: ${ANDROID_NDK_HOME}" + +# Installing common ports +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/install-vcpkg-ports.sh" + +# Installing platform specific ports +"$BASEDIR/../common/linux/install-vcpkg-ports-android.sh" diff --git a/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/04-install-packages.sh b/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/04-install-packages.sh index 1be3de5c..7486045f 100755 --- a/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/04-install-packages.sh +++ b/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/04-install-packages.sh @@ -150,6 +150,8 @@ installPackages+=(cifs-utils) installPackages+=(jq) # zip, needed for vcpkg caching installPackages+=(zip) +# OpenSSL requirement, built by vcpkg +installPackages+=(perl-IPC-Cmd) sudo yum -y install "${installPackages[@]}" @@ -174,4 +176,4 @@ sudo /usr/bin/pip3 install wheel sudo ln -s /usr/bin/python3 /usr/local/bin/python3 OpenSSLVersion="$(openssl version |cut -b 9-14)" -echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt +echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/42-install-vcpkg-ports.sh b/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/42-install-vcpkg-ports.sh new file mode 100755 index 00000000..71a46f9a --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-9.2-x86_64/42-install-vcpkg-ports.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/install-vcpkg-ports.sh" diff --git a/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/02-zypperpackages.sh b/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/02-zypperpackages.sh index 42383e1b..bfee68c6 100644 --- a/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/02-zypperpackages.sh +++ b/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/02-zypperpackages.sh @@ -107,3 +107,6 @@ sudo zypper -nq install cifs-utils gccVersion="$(gcc --version |grep gcc |cut -b 17-23)" echo "GCC = $gccVersion" >> versions.txt + +OpenSSLVersion="$(openssl-3 version |cut -b 9-14)" +echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/42-install-vcpkg-ports.sh b/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/42-install-vcpkg-ports.sh new file mode 100755 index 00000000..71a46f9a --- /dev/null +++ b/coin/provisioning/qtci-linux-SLES-15_SP5-x86_64/42-install-vcpkg-ports.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/install-vcpkg-ports.sh" diff --git a/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/02-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/02-apt.sh index ebb347a2..bd689a41 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/02-apt.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/02-apt.sh @@ -241,4 +241,4 @@ source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" # SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH" OpenSSLVersion="$(openssl version |cut -b 9-14)" -echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt +echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/42-install-vcpkg-ports.sh b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/42-install-vcpkg-ports.sh new file mode 100755 index 00000000..71a46f9a --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/42-install-vcpkg-ports.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/install-vcpkg-ports.sh" diff --git a/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/04-zypperpackages.sh b/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/04-zypperpackages.sh index bcada865..afea0ff8 100755 --- a/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/04-zypperpackages.sh +++ b/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/04-zypperpackages.sh @@ -82,4 +82,4 @@ gccVersion="$(gcc --version |grep gcc |cut -b 17-23)" echo "GCC = $gccVersion" >> versions.txt OpenSSLVersion="$(openssl-3 version |cut -b 9-14)" -echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt +echo "System's OpenSSL = $OpenSSLVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/42-install-vcpkg-ports.sh b/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/42-install-vcpkg-ports.sh new file mode 100755 index 00000000..71a46f9a --- /dev/null +++ b/coin/provisioning/qtci-linux-openSUSE-15.5-x86_64/42-install-vcpkg-ports.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/install-vcpkg-ports.sh" |