diff options
author | Konrad Kujawa <konrad.kujawa@qt.io> | 2022-11-02 09:22:00 +0100 |
---|---|---|
committer | Konrad Kujawa <konrad.kujawa@qt.io> | 2022-12-07 07:57:21 +0100 |
commit | 63d72293b71021a79784b5373cd33ff3682c8836 (patch) | |
tree | 99c2dd78b43b9128341c9ec370057732b093c0fc /coin/provisioning | |
parent | 21be8b0c057bee1da0da40ff026c8cb97ab0740e (diff) |
Add provisioning for gRPC
Add provisioning scripts to install gRPC.
gRPC is requirement to build QtGrpc
Task-number: QTBUG-105492
Change-Id: I1a6d008a1d2c1616000909aacdb721401f706168
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'coin/provisioning')
13 files changed, 787 insertions, 0 deletions
diff --git a/coin/provisioning/common/unix/install_grpc.sh b/coin/provisioning/common/unix/install_grpc.sh new file mode 100644 index 00000000..0ca8302c --- /dev/null +++ b/coin/provisioning/common/unix/install_grpc.sh @@ -0,0 +1,102 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script installs gRPC from sources. +set -ex + +# shellcheck source=./DownloadURL.sh +source "${BASH_SOURCE%/*}/DownloadURL.sh" +# shellcheck source=./SetEnvVar.sh +source "${BASH_SOURCE%/*}/SetEnvVar.sh" + +# Extract cmake path from the environment +if uname -a |grep -q "Ubuntu"; then + if lsb_release -a |grep "Ubuntu 22.04"; then + source ~/.bash_profile + else + source ~/.profile + fi +else + source ~/.bashrc +fi + +version="1.50.1" +sha1="be1b0c3dbfbc9714824921f50dffb7cf044da5ab" +internalUrl="http://ci-files01-hki.intra.qt.io/input/automotive_suite/grpc-all-$version.zip" +externalUrl="" +installPrefix="$HOME/install-grpc-$version" + +targetDir="$HOME/grpc-$version" +targetFile="$targetDir.zip" +DownloadURL "$internalUrl" "$externalUrl" "$sha1" "$targetFile" +unzip "$targetFile" -d "$HOME" +sudo rm "$targetFile" + +# devtoolset is needed when running configuration +if uname -a |grep -qv "Darwin"; then + export PATH="/opt/rh/devtoolset-7/root/usr/bin:$PATH" +fi + +if uname -a |grep -q Darwin; then + extraCMakeArgs="-DCMAKE_OSX_ARCHITECTURES=x86_64;arm64 -DCMAKE_OSX_DEPLOYMENT_TARGET=11" + extraOpenSslArg=-DOPENSSL_ROOT_DIR=$OPENSSL_DIR + SetEnvVar PATH "\$PATH:$installPrefix/bin" +fi + +echo "Configuring and building gRPC" + +buildDir="$HOME/build-grpc-$version" +mkdir -p "$buildDir" +cd "$buildDir" +cmake $targetDir -G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="Release;Debug;RelWithDebugInfo" -DCMAKE_INSTALL_PREFIX=$installPrefix $extraCMakeArgs $extraOpenSslArg -DgRPC_BUILD_TESTS=OFF -DgRPC_PROTOBUF_PROVIDER="package" -DgRPC_SSL_PROVIDER="package" -DgRPC_ZLIB_PROVIDER="package" +ninja all + +sudo env "PATH=$PATH" ninja install +# Refresh shared library cache if OS isn't macOS +if uname -a |grep -qv "Darwin"; then + sudo ldconfig +fi + +SetEnvVar "gRPC_ROOT" "$installPrefix" +SetEnvVar "absl_ROOT" "$installPrefix" + +sudo rm -rf "$targetDir" +sudo rm -rf "$buildDir" diff --git a/coin/provisioning/common/windows/grpc.ps1 b/coin/provisioning/common/windows/grpc.ps1 new file mode 100644 index 00000000..5e0e1bf9 --- /dev/null +++ b/coin/provisioning/common/windows/grpc.ps1 @@ -0,0 +1,179 @@ +# 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 + +. "$PSScriptRoot\helpers.ps1" + +# Here we build gRPC libraries for MinGW and MSVC. +# Since it's a c++ library we need both msvc and mingw because they mangle symbols differently. +# For MSVC it builds with both debug and release configurations because of the visual c++ runtime. +# For MinGW we only need one, so we only build with release. +# The function below takes care of the common part of building - invoking cmake, +# calling ninja and installing it to a directory which we set an environment variable to. +# Because we have two compilers we also have two env. vars. and then each +# config in CI has the gRPC_ROOT set to the appropriate one. +function build-install-grpc { + param( + [string]$CC, + [string]$CXX, + [string]$BuildType, + [string]$Postfix # Used for install-path and the environment variable name + ) + $installPrefix = "C:\Utils\grpc" + $installPath = "${installPrefix}-$Postfix" + Write-Output "Configuring and building gRPC for $CXX" + $oldCC = $env:CC + $oldCXX = $env:CXX + $env:CC = $CC + $env:CXX = $CXX + $Protobuf_ROOT="C:\Utils\protobuf-$Postfix" + if (!(Test-Path $Protobuf_ROOT -ErrorAction SilentlyContinue)) { + throw "Protobuf is missing, expected at `"$Protobuf_ROOT`"." + } + $OPENSSL_ROOT_DIR="C:\openssl" + if (!(Test-Path $OPENSSL_ROOT_DIR -ErrorAction SilentlyContinue)) { + throw "OpenSSL is missing, expected at `"$OPENSSL_ROOT_DIR`"." + } + Remove build-grpc + mkdir build-grpc + Push-Location build-grpc + $configureOptions = @( + # plugins + "-DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF" + "-DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF" + "-DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF" + "-DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF" + "-DgRPC_BUILD_GRPC_PYTHON_PLUGIN=OFF" + "-DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF" + # extensions + "-DgRPC_BUILD_CSHARP_EXT=OFF" + # general + "-DgRPC_BUILD_TESTS=OFF" + "-DgRPC_PROTOBUF_PROVIDER=`"package`"" + "-DgRPC_SSL_PROVIDER=`"package`"" + "-DOPENSSL_ROOT_DIR=`"$OPENSSL_ROOT_DIR`"" + # protobuf + "-DProtobuf_USE_STATIC_LIBS=ON" + "-DProtobuf_ROOT=`"$Protobuf_ROOT`"" + ) + cmake .. -G"Ninja Multi-Config" -DCMAKE_CONFIGURATION_TYPES="$BuildType" -DCMAKE_INSTALL_PREFIX="$installPath" $extraCMakeArgs $configureOptions + $result = $LASTEXITCODE + if ($result -eq 0) { + # ninja install:all # This is broken and does not work + foreach ($config in $BuildType.split(";")) { + ninja -f "build-$config.ninja" install + } + $result = $LASTEXITCODE + } + $env:CC = $oldCC + $env:CXX = $oldCXX + Set-EnvironmentVariable "gRPC_ROOT_$Postfix" "$InstallPath" + Pop-Location + Remove build-grpc + if ($result -ne 0) { + throw "Build exited with $result" + } +} + + +# Ensures a tool is in path or adds it to path if the $Path supplied to it +# contains it. Will throw if it's not found at all +function Find-Tool { + param( + [string]$Name, + [string]$Path + ) + # Is tool missing from path? + if (!(Get-Command $Name -ErrorAction SilentlyContinue)) { + # Is tool in the $Path directory? + if (Test-Path "$Path\$Name" -ErrorAction SilentlyContinue) { + $env:Path += ";$Path" + } + else { + throw "Cannot find $Name in path or $Name in $Path, something is configured wrong" + } + } +} +# This script is fairly late in provisioning so both of these should be present! +Find-Tool -Name "cmake.exe" -Path "C:\CMake\bin" +Find-Tool -Name "ninja.exe" -Path "C:\Utils\Ninja" + +$version="1.50.1" +$sha1="be1b0c3dbfbc9714824921f50dffb7cf044da5ab" +$internalUrl="http://ci-files01-hki.intra.qt.io/input/automotive_suite/grpc-all-$version.zip" +$externalUrl="" + +$basedir = "$env:HOMEDRIVE\$env:HOMEPATH\grpc" +mkdir $basedir +$targetDir = "$basedir\grpc-$version" +$targetFile = "$targetDir.zip" +Download $externalUrl $internalUrl $targetFile +Verify-Checksum $targetFile $sha1 +Extract-7Zip $targetFile $basedir +Remove $targetFile + +Push-Location $basedir + +# Create a new top-level CMakeLists.txt file so we can set a modern policy +# for find_package calls +Write-Output "cmake_minimum_required(VERSION 3.5.1)`nproject(grpc LANGUAGES C CXX)`ncmake_policy(SET CMP0074 NEW)`nadd_subdirectory(grpc-$version)" | Out-File CMakeLists.txt -Encoding utf8 + +### MinGW + +# Check if mingw is where we expect it to be and add it to path: +$mingwPath = "C:\MINGW1120\mingw64\bin" +if (!(Test-Path $mingwPath)) { + throw "Cannot find mingw in $mingwPath, something is configured wrong" +} + +$oldPath = $env:Path +$env:Path = "$mingwPath;$env:Path" +build-install-grpc -CC "gcc" -CXX "g++" -BuildType "Release" -Postfix "mingw" +$env:Path = $oldPath + +### LLVM MinGW + +# $llvmMingwPath = "C:\llvm-mingw" +# if (!(Test-Path $llvmMingwPath)) { +# throw "Cannot find llvm-mingw in $llvmMingwPath, something is configured wrong" +# } + +$oldPath = $env:Path +$env:Path = "$llvmMingwPath\bin;$env:Path" +# build-install-grpc -CC "clang" -CXX "clang++" -BuildType "Release" -Postfix "llvm_mingw" +$env:Path = $oldPath + +### MSVC + +# Add cl to path if it is not already there +if (!(Get-Command cl.exe -ErrorAction SilentlyContinue)) { + $vswhere = "C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe" + $vc_component = "Microsoft.VisualStudio.Component.VC.CoreIde" + # We pick the oldest build tools we can find and use that to be compatible with it and any newer version: + # If MSVC has an ABI break this will stop working, and yet another build must be added. + $vs_location = (& $vswhere -nologo -products * -requires $vc_component -sort -format value -property installationPath | Select-Object -Last 1) + $vcvars_location = Join-Path $vs_location "VC\Auxiliary\Build\" + + Push-Location $vcvars_location + + # This snippet was stolen from https://stackoverflow.com/a/2124759 + # Grabs all the environment variables that the script has set and assigns it + # to environment variables in PowerShell (calling batch files creates a + # cmd.exe instance which does not propagate environment variables) + cmd /c "vcvarsall.bat $env:PROCESSOR_ARCHITECTURE & set" | + ForEach-Object { + if ($_ -match "=") { + $v = $_.Split("="); + Set-Item -Force -Path "ENV:\$($v[0])" -Value "$($v[1])" + } + } + + Pop-Location +} + +build-install-grpc -CC "cl" -CXX "cl" -BuildType "Release" -Postfix "msvc" + +$env:Path = $oldPath +Pop-Location +Remove $basedir + +Write-Output "gRPC = $version" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-RHEL-8.4-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-RHEL-8.4-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-8.4-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-linux-RHEL-9.0-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-RHEL-9.0-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-RHEL-9.0-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-SLES-15_SP4-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-linux-Ubuntu-20.04-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-Ubuntu-20.04-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-20.04-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-22.04-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-linux-openSUSE-15.4-x86_64/61-install_grpc.sh b/coin/provisioning/qtci-linux-openSUSE-15.4-x86_64/61-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-linux-openSUSE-15.4-x86_64/61-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-macos-11-arm/36-install_grpc.sh b/coin/provisioning/qtci-macos-11-arm/36-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-macos-11-arm/36-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-macos-11-x86_64/36-install_grpc.sh b/coin/provisioning/qtci-macos-11-x86_64/36-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-macos-11-x86_64/36-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-macos-12-arm/36-install_grpc.sh b/coin/provisioning/qtci-macos-12-arm/36-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-macos-12-arm/36-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-macos-12-x86_64/36-install_grpc.sh b/coin/provisioning/qtci-macos-12-x86_64/36-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-macos-12-x86_64/36-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + diff --git a/coin/provisioning/qtci-macos-13-arm/36-install_grpc.sh b/coin/provisioning/qtci-macos-13-arm/36-install_grpc.sh new file mode 100644 index 00000000..cd557707 --- /dev/null +++ b/coin/provisioning/qtci-macos-13-arm/36-install_grpc.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2022 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL$ +## Commercial License Usage +## Licensees holding valid commercial Qt licenses may use this file in +## accordance with the commercial license agreement provided with the +## Software or, alternatively, in accordance with the terms contained in +## a written agreement between you and The Qt Company. For licensing terms +## and conditions see https://www.qt.io/terms-conditions. For further +## information use the contact form at https://www.qt.io/contact-us. +## +## GNU Lesser General Public License Usage +## Alternatively, this file may be used under the terms of the GNU Lesser +## General Public License version 3 as published by the Free Software +## Foundation and appearing in the file LICENSE.LGPL3 included in the +## packaging of this file. Please review the following information to +## ensure the GNU Lesser General Public License version 3 requirements +## will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +## +## GNU General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 2.0 or (at your option) the GNU General +## Public license version 3 or any later version approved by the KDE Free +## Qt Foundation. The licenses are as published by the Free Software +## Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +## included in the packaging of this file. Please review the following +## information to ensure the GNU General Public License requirements will +## be met: https://www.gnu.org/licenses/gpl-2.0.html and +## https://www.gnu.org/licenses/gpl-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_grpc.sh +source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh" + |