diff options
author | Heikki Halmet <heikki.halmet@qt.io> | 2020-04-16 15:24:44 +0300 |
---|---|---|
committer | Heikki Halmet <heikki.halmet@qt.io> | 2020-10-16 15:57:06 +0300 |
commit | e98b85be222e861e27ed94875884ad783e1942cd (patch) | |
tree | 9e3611c72e6da5a885313e20929935c0f170e948 /coin | |
parent | 1dd03fc1653108ae898c0a308ec2b25dbc99f2c6 (diff) |
Add CentOS 8.1 to CI
Insignificant flag is added for two targets. RedHat 7.6
will be kept as parallel until insignificant flag can be
removed from CentOS
Task-number: QTQAINFRA-2760
Task-number: QTQAINFRA-3065
Change-Id: If124600309644e6a066805cd728bf12862006a21
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Diffstat (limited to 'coin')
34 files changed, 938 insertions, 17 deletions
diff --git a/coin/platform_configs/cmake_platforms.yaml b/coin/platform_configs/cmake_platforms.yaml index 0f6d7e3b..64c24f8d 100644 --- a/coin/platform_configs/cmake_platforms.yaml +++ b/coin/platform_configs/cmake_platforms.yaml @@ -73,6 +73,14 @@ Configurations: Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', 'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'] - + Id: 'CentOS-8.1-host' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' + Compiler: 'GCC' + Features: ['Packaging', 'Sccache', 'Insignificant'] + Configure arguments: '-DBUILD_EXAMPLES=OFF -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}} -DCMAKE_BUILD_TYPE=RelWithDebInfo -DFEATURE_separate_debug_info=ON -DFEATURE_system_jpeg=OFF -DFEATURE_system_png=OFF -DFEATURE_system_pcre2=OFF -DFEATURE_system_harfbuzz=OFF -DFEATURE_system_doubleconversion=OFF -DFEATURE_libudev=OFF -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache' + Environment variables: ['NON_QTBASE_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', + 'TEST_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'] +- Template: 'qtci-macos-10.14-x86_64' Target os: 'IOS_ANY' Target arch: 'arm64' diff --git a/coin/platform_configs/cmake_platforms_target_android_host_linux.yaml b/coin/platform_configs/cmake_platforms_target_android_host_linux.yaml index dbb5a426..7003ccdb 100644 --- a/coin/platform_configs/cmake_platforms_target_android_host_linux.yaml +++ b/coin/platform_configs/cmake_platforms_target_android_host_linux.yaml @@ -1,45 +1,45 @@ Version: 2 Configurations: - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Target os: 'Android_ANY' Target arch: 'arm64' Compiler: 'GCC' Target compiler: 'Clang' - Platform dependency: 'RHEL-7.6-host' + Platform dependency: 'CentOS-8.1-host' Features: ['Packaging', 'Sccache', 'DisableTests'] Environment variables: [ 'TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=arm64-v8a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', 'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'] - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Target os: 'Android_ANY' Target arch: 'armv7' Compiler: 'GCC' Target compiler: 'Clang' - Platform dependency: 'RHEL-7.6-host' + Platform dependency: 'CentOS-8.1-host' Features: ['Packaging', 'Sccache', 'DisableTests'] Environment variables: [ 'TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=armeabi-v7a -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', 'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'] - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Target os: 'Android_ANY' Target arch: 'x86' Compiler: 'GCC' Target compiler: 'Clang' - Platform dependency: 'RHEL-7.6-host' + Platform dependency: 'CentOS-8.1-host' Features: ['Packaging', 'Sccache', 'DisableTests'] Environment variables: [ 'TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', 'NON_QTBASE_TARGET_CONFIGURE_ARGS=-DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache'] - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Target os: 'Android_ANY' Target arch: 'x86_64' Compiler: 'GCC' Target compiler: 'Clang' - Platform dependency: 'RHEL-7.6-host' + Platform dependency: 'CentOS-8.1-host' Features: ['Packaging', 'Sccache', 'DisableTests'] Environment variables: [ 'TARGET_CONFIGURE_ARGS=-DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_TOOLCHAIN_FILE={{.Env.ANDROID_NDK_ROOT}}/build/cmake/android.toolchain.cmake -DANDROID_SDK_ROOT={{.Env.ANDROID_SDK_HOME}} -DANDROID_ABI=x86_64 -DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME}} -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache', diff --git a/coin/platform_configs/default.yaml b/coin/platform_configs/default.yaml index 5026e2c8..a13c5692 100644 --- a/coin/platform_configs/default.yaml +++ b/coin/platform_configs/default.yaml @@ -32,6 +32,11 @@ Configurations: Features: ['UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -headersclean -force-debug-info -separate-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -xcb -bundled-xcb-xinput -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -R . -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s' - + Template: 'qtci-linux-CentOS-8.1-x86_64-50' + Compiler: 'GCC' + Features: ['UseLegacyInstructions', 'Insignificant'] + Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -headersclean -force-debug-info -separate-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -xcb -bundled-xcb-xinput -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -R . -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s' +- Template: 'qtci-macos-10.14-x86_64' Compiler: 'Clang' Features: ['UseLegacyInstructions'] diff --git a/coin/platform_configs/flashing-wizard.yaml b/coin/platform_configs/flashing-wizard.yaml index df59d158..96912b2e 100644 --- a/coin/platform_configs/flashing-wizard.yaml +++ b/coin/platform_configs/flashing-wizard.yaml @@ -13,7 +13,7 @@ Configurations: Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -nomake tests -nomake examples -opengl dynamic -openssl -I %OPENSSL_INCLUDE_x86% -L %OPENSSL_LIB_x86% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x86% -L %MYSQL_LIB_x86% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x86% -L %POSTGRESQL_LIB_x86% -static -no-icu' - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -force-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -qt-xcb -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s -static -no-icu' diff --git a/coin/platform_configs/qdb.yaml b/coin/platform_configs/qdb.yaml index 82a4f2a3..76875812 100644 --- a/coin/platform_configs/qdb.yaml +++ b/coin/platform_configs/qdb.yaml @@ -13,7 +13,7 @@ Configurations: Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -nomake tests -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -opengl dynamic -static -no-icu -nomake examples -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -plugin-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64%' - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -force-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -qt-xcb -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s -static -no-icu' diff --git a/coin/platform_configs/qtsaferenderer.yaml b/coin/platform_configs/qtsaferenderer.yaml index d4746f30..d15a362f 100644 --- a/coin/platform_configs/qtsaferenderer.yaml +++ b/coin/platform_configs/qtsaferenderer.yaml @@ -13,7 +13,7 @@ Configurations: Features: ['Packaging', 'DisableTests', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -release -static -nomake tests -nomake examples -no-icu -opengl dynamic -openssl -I %OPENSSL_INCLUDE_x64% -L %OPENSSL_LIB_x64% -plugin-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x64% -L %MYSQL_LIB_x64% -platform win32-g++' - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Features: ['Packaging', 'DisableTests', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -static -nomake tests -nomake examples -no-use-gold-linker -no-icu -no-fontconfig -qt-freetype -no-opengl -qpa offscreen -no-xcb -qt-libpng -no-vulkan' diff --git a/coin/platform_configs/qtsdk.yaml b/coin/platform_configs/qtsdk.yaml index 13686f2b..1b108e0e 100644 --- a/coin/platform_configs/qtsdk.yaml +++ b/coin/platform_configs/qtsdk.yaml @@ -4,7 +4,7 @@ Configure arguments: '-opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -release -force-debug-info -opengl dynamic -nomake examples -nomake tests' Features: ['UseLegacyInstructions'] - - Template: 'qtci-linux-RHEL-6.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -force-debug-info -nomake examples -nomake tests' Features: ['UseLegacyInstructions'] diff --git a/coin/platform_configs/qtwebengine.yaml b/coin/platform_configs/qtwebengine.yaml index fd50e103..7a3b8752 100644 --- a/coin/platform_configs/qtwebengine.yaml +++ b/coin/platform_configs/qtwebengine.yaml @@ -22,7 +22,7 @@ Configurations: Features: ['DisableTests', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -developer-build -no-sql-mysql -no-pch -R . -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib' - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Features: ['UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -headersclean -force-debug-info -separate-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -xcb -bundled-xcb-xinput -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -R . -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s' diff --git a/coin/platform_configs/tqtc-qt-config-gui.yaml b/coin/platform_configs/tqtc-qt-config-gui.yaml index 34e41a0d..e1631767 100644 --- a/coin/platform_configs/tqtc-qt-config-gui.yaml +++ b/coin/platform_configs/tqtc-qt-config-gui.yaml @@ -13,7 +13,7 @@ Configurations: Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix c:\Users\qt\work\install -debug-and-release -release -force-debug-info -nomake tests -opengl dynamic -nomake examples -openssl -I %OPENSSL_INCLUDE_x86% -L %OPENSSL_LIB_x86% -no-sql-mysql -plugin-sql-sqlite -plugin-sql-odbc -I %MYSQL_INCLUDE_x86% -L %MYSQL_LIB_x86% -plugin-sql-psql -I %POSTGRESQL_INCLUDE_x86% -L %POSTGRESQL_LIB_x86% -static -no-icu' - - Template: 'qtci-linux-RHEL-7.6-x86_64' + Template: 'qtci-linux-CentOS-8.1-x86_64-50' Compiler: 'GCC' Features: ['Packaging', 'UseLegacyInstructions'] Configure arguments: '-opensource -confirm-license -verbose -prefix /home/qt/work/install -release -nomake tests -nomake examples -no-libudev -no-use-gold-linker -force-debug-info -no-sql-mysql -plugin-sql-psql -plugin-sql-sqlite -qt-libjpeg -qt-libpng -qt-xcb -sysconfdir /etc/xdg -qt-pcre -qt-harfbuzz -openssl -I {{.Env.OPENSSL_HOME}}/include -L {{.Env.OPENSSL_HOME}}/lib QMAKE_LFLAGS_APP+=-s -static -no-icu' diff --git a/coin/pre-provisioning/qtci-linux-CENTOS-8.1-x86_64/README_MANUAL_INSTALLATIONS b/coin/pre-provisioning/qtci-linux-CENTOS-8.1-x86_64/README_MANUAL_INSTALLATIONS new file mode 100644 index 00000000..1ec2f649 --- /dev/null +++ b/coin/pre-provisioning/qtci-linux-CENTOS-8.1-x86_64/README_MANUAL_INSTALLATIONS @@ -0,0 +1,45 @@ +### CENTOS 8.1 ### +Hard Disk: 500G +Network: CI +Video Card: Total Video Memory: 64MB +Boot options/Firmware: BIOS + +Language: English (United States) +Time & Date: Europe/Helsinki +Software Selection: Server with GUI +Network & Host..: Connect + +Language: English (US) +Typing:English (US) +Privacy: Location Services: OFF +Connect Your Online Accounts: Skip + + +# Configure Settings + Notifications: + * Notification Popups: OFF + * Lock Screen Notifications: OFF + Privacy: + * Screen Lock: OFF + Power: + * Blank screen: Never + Devices: + * Displays: Resolution 1280 x 800 + Details: + * Time Zone: GMT + * Users: Automatic login on + +# Add user to sudoers +Add 'qt ALL=NOPASSWD: ALL' to /etc/sudoers.d/qt + +# Fetch and run coin-setup +Download http://coin/coin/binary/linux_386/coin-setup + +run 'sudo ./coin-setup' + +Add 'GRUB_GFXMODE=1280x800' to /etc/default/grub +grub2-mkconfig -o /etc/grub2.cfg +grub2-mkconfig -o /boot/grub2/grub.cfg + +Reboot + diff --git a/coin/provisioning/common/linux/install_dwz.sh b/coin/provisioning/common/linux/install_dwz.sh index 1df959e2..610f67bc 100755 --- a/coin/provisioning/common/linux/install_dwz.sh +++ b/coin/provisioning/common/linux/install_dwz.sh @@ -43,7 +43,7 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" version="0.13" sha1="21e6d5878bb84ac6c9ad07b00ed248d8c547bc7d" -internalUrl="http://ci-files01-hki.intra.qt.io/input/rhel7/dwz-$version.tar.xz" +internalUrl="http://ci-files01-hki.intra.qt.io/input/centos/dwz-$version.tar.xz" externalUrl="https://www.sourceware.org/ftp/dwz/releases/dwz-$version.tar.xz" targetDir="$HOME/dwz" @@ -52,8 +52,10 @@ DownloadURL "$internalUrl" "$externalUrl" "$sha1" "$targetFile" tar -xJf "$targetFile" -C "$HOME" sudo rm "$targetFile" -# devtoolset is needed when running configuration -export PATH="/opt/rh/devtoolset-4/root/usr/bin:$PATH" +# devtoolset is needed when running configuration in RedHat +if uname -a |grep -q "el7"; then + export PATH="/opt/rh/devtoolset-4/root/usr/bin:$PATH" +fi installPrefix="/opt/dwz-$version" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-install_telegraf.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-install_telegraf.sh new file mode 100755 index 00000000..729f9003 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-install_telegraf.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +"$(dirname "$0")"/../common/unix/telegraf_install.sh diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-systemsetup.sh new file mode 100755 index 00000000..c0f94a49 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/01-systemsetup.sh @@ -0,0 +1,52 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +BASEDIR=$(dirname "$0") +# shellcheck source=../common/shared/network_test_server_ip.txt +source "$BASEDIR/../common/shared/network_test_server_ip.txt" + +echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts" +echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts +echo "Set DISPLAY" +echo 'export DISPLAY=":0"' >> ~/.bashrc +# for current session +export DISPLAY=:0 + +# disable Automatic screen lock +gsettings set org.gnome.desktop.screensaver lock-enabled false +# disable blank screen power saving +gsettings set org.gnome.desktop.session idle-delay 0 diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/02-install-rhel-epel.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/02-install-rhel-epel.sh new file mode 100755 index 00000000..69e3e3c3 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/02-install-rhel-epel.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2020 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/DownloadURL.sh +source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh" + +package="epel-release-latest-8.noarch.rpm" +primaryUrl="https://dl.fedoraproject.org/pub/epel/$package" +cacheUrl="http://ci-files01-hki.intra.qt.io/input/centos/$package" +sha256="8949517e8a84556d06dba8b030fb5bc4553474b352d7ce25799469aa9af4cc62" +targetFile="/tmp/$package" + +DownloadURL "$cacheUrl" "$primaryUrl" "$sha256" "$targetFile" + +sudo yum -y install "$targetFile" +rm "$targetFile" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/03-enable-repos.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/03-enable-repos.sh new file mode 100755 index 00000000..f5e9e6a5 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/03-enable-repos.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2020 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +sudo yum -y install yum-utils + +sudo yum-config-manager --enable AppStream +sudo yum-config-manager --enable PowerTools +sudo yum-config-manager --enable BaseOS +sudo yum-config-manager --enable epel-playground + diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-install-packages.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-install-packages.sh new file mode 100755 index 00000000..eaf80429 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-install-packages.sh @@ -0,0 +1,155 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2020 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# Remove update notifications and packagekit running in the background +sudo yum -y remove PackageKit gnome-software + +installPackages=() +installPackages+=(git) +installPackages+=(zlib-devel) +installPackages+=(glib2-devel) +installPackages+=(openssl-devel) +installPackages+=(freetype-devel) +installPackages+=(fontconfig-devel) +# cmake build +installPackages+=(ninja-build) +installPackages+=(pcre2-devel) +installPackages+=(double-conversion-devel) +installPackages+=(zstd) +# EGL support +installPackages+=(mesa-libEGL-devel) +installPackages+=(mesa-libGL-devel) +installPackages+=(libxkbfile-devel) +# Xinput2 +installPackages+=(libXi-devel) +installPackages+=(mysql-server) +installPackages+=(mysql) +installPackages+=(mysql-devel) +installPackages+=(postgresql-devel) +installPackages+=(cups-devel) +installPackages+=(dbus-devel) +# gstreamer 1 for QtMultimedia +# Note! gstreamer1-plugins-bad-free needs to be upgraded or it will conflicts with gstreamer1-plugins-base-devel +installPackages+=(gstreamer1-plugins-bad-free) +installPackages+=(gstreamer1-devel) +installPackages+=(gstreamer1-plugins-base-devel) +# gtk3 style for QtGui/QStyle +installPackages+=(gtk3-devel) +# libusb1 for tqtc-boot2qt/qdb +installPackages+=(libusbx-devel) +# speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux +installPackages+=(speech-dispatcher-devel) +# Python 2 devel and pip. python-pip requires the EPEL repository to be added +installPackages+=(python2-devel python2-pip) +# Python 3 with python-devel, pip and virtualenv +installPackages+=(python36) +installPackages+=(python36-devel) +# WebEngine +installPackages+=(bison) +installPackages+=(flex) +installPackages+=(gperf) +installPackages+=(alsa-lib-devel) +installPackages+=(pulseaudio-libs-devel) +installPackages+=(libXtst-devel) +installPackages+=(nspr-devel) +installPackages+=(nss-devel) +# For Android builds +installPackages+=(java-1.8.0-openjdk-devel) +# For receiving shasum +installPackages+=(perl-Digest-SHA) +# INTEGRITY requirements +installPackages+=(glibc.i686) +# Enable Qt Bluetooth +installPackages+=(bluez-libs-devel) +# QtWebKit +installPackages+=(libxml2-devel) +installPackages+=(libxslt-devel) +# For building Wayland from source +installPackages+=(libffi-devel) +# QtWayland +installPackages+=(mesa-libwayland-egl) +installPackages+=(mesa-libwayland-egl-devel) +installPackages+=(libwayland-client) +installPackages+=(libwayland-cursor) +installPackages+=(libwayland-server) +# Jenkins +installPackages+=(chrpath) +# libxkbcommon +installPackages+=(libxkbcommon-devel) +installPackages+=(libxkbcommon-x11-devel) +# xcb-util-* libraries +installPackages+=(xcb-util-devel) +installPackages+=(xcb-util-image-devel) +installPackages+=(xcb-util-keysyms-devel) +installPackages+=(xcb-util-wm-devel) +installPackages+=(xcb-util-renderutil-devel) +# ODBC support +installPackages+=(unixODBC-devel) +installPackages+=(unixODBC) +# Vulkan support +installPackages+=(vulkan-devel) +installPackages+=(vulkan-tools) +# Conan: For Python build +installPackages+=(xz-devel) +installPackages+=(zlib-devel) +installPackages+=(libffi-devel) +installPackages+=(libsqlite3x-devel) +# Build.pl +installPackages+=(perl-Data-Dumper) +# In RedHat these come with Devtoolset +installPackages+=(gcc) +installPackages+=(gcc-c++) +installPackages+=(make) +# Open source VMware Tools +installPackages+=(open-vm-tools) + +sudo yum -y install "${installPackages[@]}" + +sudo ln -s /usr/bin/python2 /usr/bin/python + +# We shouldn't use yum to install virtualenv. The one found from package repo is not +# working, but we can use installed pip +sudo pip3 install --upgrade pip +sudo pip3 install virtualenv wheel + +sudo /usr/bin/pip3 install wheel +# Install all needed packages in a special wheel cache directory +/usr/bin/pip3 wheel --wheel-dir "$HOME/python3-wheels" -r "${BASH_SOURCE%/*}/../common/shared/requirements.txt" + +# shellcheck source=../common/unix/SetEnvVar.sh +source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" +SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-p7zip.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-p7zip.sh new file mode 100755 index 00000000..45565766 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/04-p7zip.sh @@ -0,0 +1,46 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +name="p7zip" +version="7-11" +sudo yum -y install "$name" + +# Link 7za to 7z so we can use existing installation scripts +sudo ln -s /usr/bin/7za /usr/bin/7z + +echo "$name = $version" >> ~/versions.txt + diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/05-libclang.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/05-libclang.sh new file mode 100755 index 00000000..7074cbc1 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/05-libclang.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash +set -ex + +BASEDIR=$(dirname "$0") +# shellcheck source=../common/unix/libclang.sh +"$BASEDIR/../common/unix/libclang.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/07-qnx_700.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/07-qnx_700.sh new file mode 100755 index 00000000..92c741fb --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/07-qnx_700.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/linux/qnx_700.sh +source "${BASH_SOURCE%/*}/../common/linux/qnx_700.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/08-integrity.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/08-integrity.sh new file mode 100755 index 00000000..154370da --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/08-integrity.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/linux/integrity.sh +source "${BASH_SOURCE%/*}/../common/linux/integrity.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-disable_selinux.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-disable_selinux.sh new file mode 100755 index 00000000..b7a53cd4 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-disable_selinux.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/linux/disable_selinux.sh +source "${BASH_SOURCE%/*}/../common/linux/disable_selinux.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-install-openssl.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-install-openssl.sh new file mode 100755 index 00000000..4f1d3768 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/09-install-openssl.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +set -ex + +# shellcheck source=../common/unix/install-openssl.sh +source "${BASH_SOURCE%/*}/../common/unix/install-openssl.sh" "linux" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/20-sccache.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/20-sccache.sh new file mode 100755 index 00000000..b371d947 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/20-sccache.sh @@ -0,0 +1,3 @@ +#!/usr/bin/env bash + +source "${BASH_SOURCE%/*}/../common/linux/sccache.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/22-mqtt_broker.sh new file mode 100755 index 00000000..e677427f --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/22-mqtt_broker.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# shellcheck source=../common/unix/mqtt_broker.sh +source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-fbx.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-fbx.sh new file mode 100755 index 00000000..d8df4375 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-fbx.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/fbx_linux.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-install_icu.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-install_icu.sh new file mode 100755 index 00000000..7c4d46dd --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/30-install_icu.sh @@ -0,0 +1,76 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# shellcheck source=../common/unix/DownloadURL.sh +source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh" + +set -ex + +# This script will install ICU + +icuVersion="56.1" +icuLocation="/usr/lib64" +sha1="6dd9ca6b185681a7ddc4bb94fd7fced27647a21c" +baseBinaryPackageURL="http://ci-files01-hki.intra.qt.io/input/icu/$icuVersion/icu-linux-g++-Rhel7.2-x64.7z" +baseBinaryPackageExternalURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel7.2-x64.7z" + +sha1Dev="bffde26cdea752bee0edd281820c57f1adac3864" +develPackageURL="http://ci-files01-hki.intra.qt.io/input/icu/$icuVersion/icu-linux-g++-Rhel7.2-x64-devel.7z" +develPackageExternalURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel7.2-x64-devel.7z" + +echo "Installing custom ICU $icuVersion $sha1 packages on RHEL to $icuLocation" + +targetFile=$(mktemp) +DownloadURL "$baseBinaryPackageURL" "$baseBinaryPackageExternalURL" "$sha1" "$targetFile" +sudo 7z x -y -o/usr/lib64 "$targetFile" +sudo rm "$targetFile" + +echo "Installing custom ICU devel packages on RHEL" + +tempDir=$(mktemp -d) + +targetFile=$(mktemp) +DownloadURL "$develPackageURL" "$develPackageExternalURL" "$sha1Dev" "$targetFile" +7z x -y -o"$tempDir" "$targetFile" + +sudo cp -a "$tempDir"/lib/* /usr/lib64 +sudo cp -a "$tempDir"/* /usr/ + +sudo rm "$targetFile" +sudo rm -fr "$tempDir" + +sudo /sbin/ldconfig + +echo "ICU = $icuVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/35-install-breakpad.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/35-install-breakpad.sh new file mode 100755 index 00000000..74dd1579 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/35-install-breakpad.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -ex + +# shellcheck source=../common/unix/install-breakpad.sh +source "${BASH_SOURCE%/*}/../common/unix/install-breakpad.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-android_linux.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-android_linux.sh new file mode 100755 index 00000000..a6c4dfff --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-android_linux.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/linux/android_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/android_linux.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-install-cmake.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-install-cmake.sh new file mode 100755 index 00000000..062b2790 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/40-install-cmake.sh @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script installs CMake 3.6.2 + +set -ex + +# CMake is needed for autotests that verify that Qt can be built with CMake + +# shellcheck source=../common/linux/cmake_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/cmake_linux.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/50-openssl_for_android_linux.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/50-openssl_for_android_linux.sh new file mode 100755 index 00000000..6666ea15 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/50-openssl_for_android_linux.sh @@ -0,0 +1,38 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2020 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# +set -ex + +# shellcheck source=../common/linux/openssl_for_android_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/openssl_for_android_linux.sh" diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/60-install_protobuff.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/60-install_protobuff.sh new file mode 100755 index 00000000..a77938b3 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/60-install_protobuff.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +# shellcheck source=../common/unix/install_protobuff.sh +source "${BASH_SOURCE%/*}/../common/unix/install_protobuff.sh" + diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/70-install_dwz.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/70-install_dwz.sh new file mode 100755 index 00000000..935d9227 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/70-install_dwz.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2020 Konstantin Tokarev <annulen@yandex.ru> +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +set -ex + +sudo yum -y install elfutils-libelf-devel + +# shellcheck source=../common/linux/install_dwz.sh +source "${BASH_SOURCE%/*}/../common/linux/install_dwz.sh" + diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/90-squish.sh new file mode 100755 index 00000000..e4281588 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/90-squish.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/unix/squishInstall.sh" + diff --git a/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/99-version.sh b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/99-version.sh new file mode 100755 index 00000000..03565da2 --- /dev/null +++ b/coin/provisioning/qtci-linux-CentOS-8.1-x86_64/99-version.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2018 The Qt Company Ltd. +## Contact: http://www.qt.io/licensing/ +## +## This file is part of the provisioning scripts of the Qt Toolkit. +## +## $QT_BEGIN_LICENSE:LGPL21$ +## 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 http://www.qt.io/terms-conditions. For further +## information use the contact form at http://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 2.1 or version 3 as published by the Free +## Software Foundation and appearing in the file LICENSE.LGPLv21 and +## LICENSE.LGPLv3 included in the packaging of this file. Please review the +## following information to ensure the GNU Lesser General Public License +## requirements will be met: https://www.gnu.org/licenses/lgpl.html and +## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +## +## As a special exception, The Qt Company gives you certain additional +## rights. These rights are described in The Qt Company LGPL Exception +## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +## +## $QT_END_LICENSE$ +## +############################################################################# + +# This script needs to be called last during provisioning so that the software information will show up last in provision log. + +# Storage installed RPM packages information + +set -ex + +# shellcheck disable=SC2129 +echo "*********************************************" >> ~/versions.txt +echo "***** All installed RPM packages *****" >> ~/versions.txt +rpm -q -a | sort >> ~/versions.txt +echo "*********************************************" >> ~/versions.txt + +"$(dirname "$0")/../common/linux/version.sh" |