mirror of
git://code.qt.io/qt/qt5.git
synced 2026-02-01 11:26:04 +08:00
Add Red Hat 8.8 to CI
RHEL 8.8 will be added as parallel with RHEL 8.6 until packaging site gives green light to remove the older Red Hat version. Removing also some obsolete package installations. Task-number: QTQAINFRA-5600 Change-Id: Ie77500a805a89db9019b5347539e662bc016af59 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
This commit is contained in:
@@ -174,6 +174,16 @@ Configurations:
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
-
|
||||
Id: 'rhel-8.8'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies']
|
||||
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}}'
|
||||
]
|
||||
-
|
||||
Id: 'rhel-9.0'
|
||||
Template: 'qtci-linux-RHEL-9.0-x86_64-50'
|
||||
|
||||
@@ -47,6 +47,22 @@ Configurations:
|
||||
'ANDROID_EMULATOR=@emulator_x86_api_23',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
|
||||
]
|
||||
-
|
||||
Id: 'android-6-RHEL-8.8-x86-on-linux'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'x86'
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.8'
|
||||
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86}}',
|
||||
'ANDROID_EMULATOR=@emulator_x86_api_23',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}'
|
||||
]
|
||||
-
|
||||
Id: 'android-13-x86_64-on-linux'
|
||||
Template: 'qtci-linux-RHEL-8.6-x86_64-50'
|
||||
@@ -63,3 +79,19 @@ Configurations:
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
||||
'ANDROID_EMULATOR=@emulator_x86_64_api_33'
|
||||
]
|
||||
-
|
||||
Id: 'android-13-RHEL-8.8-x86_64-on-linux'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'x86_64'
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.8'
|
||||
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
|
||||
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64}}',
|
||||
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_DEFAULT}}',
|
||||
'ANDROID_EMULATOR=@emulator_x86_64_api_33'
|
||||
]
|
||||
|
||||
@@ -28,6 +28,11 @@ Configurations:
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging', 'UseLegacyInstructions']
|
||||
Configure arguments: '-qmake -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 -openssl -qt-harfbuzz QMAKE_LFLAGS_APP+=-s -static -no-icu'
|
||||
-
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging', 'UseLegacyInstructions']
|
||||
Configure arguments: '-qmake -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 -openssl -qt-harfbuzz QMAKE_LFLAGS_APP+=-s -static -no-icu'
|
||||
-
|
||||
Template: 'qtci-linux-Ubuntu-18.04-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
|
||||
@@ -14,3 +14,17 @@ Configurations:
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
|
||||
'ANDROID_EMULATOR=@emulator_x86_api_23']
|
||||
-
|
||||
Id: 'android-x86-developer-build-testrun-on-linux'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'x86'
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.8'
|
||||
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -debug -developer-build -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
|
||||
'ANDROID_EMULATOR=@emulator_x86_api_23']
|
||||
|
||||
@@ -24,3 +24,27 @@ Configurations:
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-13-x86_64-on-linux',
|
||||
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"'
|
||||
]
|
||||
-
|
||||
Id: 'rhel_8.8_android_multi'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'multi'
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: [
|
||||
'rhel-8.8',
|
||||
'android-6-RHEL-8.8-x86-on-linux',
|
||||
'android-13-RHEL-8.8-x86_64-on-linux'
|
||||
]
|
||||
Features: [
|
||||
'Sccache',
|
||||
'AndroidTestRun',
|
||||
'MinimalAndroidMultiABITests',
|
||||
'InstallDepsPerPlatformSubdir'
|
||||
]
|
||||
Environment variables: [
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-host=QT_CI_ARTIFACT_ID_PATH_rhel-8.8',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-6-RHEL-8.8-x86-on-linux',
|
||||
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-13-RHEL-8.8-x86_64-on-linux',
|
||||
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"'
|
||||
]
|
||||
|
||||
@@ -21,6 +21,12 @@ Configurations:
|
||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
-
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging', 'Sccache', 'DebugAndRelease']
|
||||
Configure arguments: ''
|
||||
Environment variables: []
|
||||
-
|
||||
Template: 'qtci-linux-RHEL-9.0-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
|
||||
@@ -44,6 +44,15 @@ Configurations:
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
]
|
||||
-
|
||||
Id: 'Linux-RHEL_8_8_Static'
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Compiler: 'GCC'
|
||||
Features: ['Packaging', 'Sccache', 'UseConfigure', 'MinimalStaticTests']
|
||||
Configure arguments: '-static -no-icu -nomake examples -release -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput -no-sql-mysql'
|
||||
Environment variables: [
|
||||
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY'
|
||||
]
|
||||
-
|
||||
Id: 'Windows-MSVC2019_Static'
|
||||
Template: 'qtci-windows-10_22H2-x86_64-50'
|
||||
|
||||
@@ -2,6 +2,7 @@ Version: 2
|
||||
Include: [
|
||||
cmake_platforms.yaml: [
|
||||
'rhel-8.6',
|
||||
'rhel-8.8',
|
||||
'windows-10_22h2-mingw11',
|
||||
'ubuntu-22.04-documentation'
|
||||
],
|
||||
@@ -31,3 +32,18 @@ Configurations:
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
|
||||
'ANDROID_EMULATOR=@automotive_emulator_x86_64_api_31'
|
||||
]
|
||||
-
|
||||
Id: "automotive-android-12-x86_64-on-linux"
|
||||
Template: 'qtci-linux-RHEL-8.8-x86_64-50'
|
||||
Target os: 'Android_ANY'
|
||||
Target arch: 'x86_64'
|
||||
Compiler: 'GCC'
|
||||
Target compiler: 'Clang'
|
||||
Platform dependency: 'rhel-8.8'
|
||||
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
|
||||
Environment variables: [
|
||||
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_DEFAULT}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
|
||||
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_DEFAULT}}',
|
||||
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
|
||||
'ANDROID_EMULATOR=@automotive_emulator_x86_64_api_31'
|
||||
]
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
### RED HAT ENTERPRISE LINUX 8.8 ###
|
||||
|
||||
Language: English (United States)
|
||||
Time & Date: Etc/Coordinated Universal Time
|
||||
Software Selection: Server with GUI
|
||||
Installation Destination: Automatic partitioning selected
|
||||
Root Passowrd: Set
|
||||
Network & Host..: Connect
|
||||
User Creation
|
||||
Beging Installation
|
||||
|
||||
Reboot
|
||||
|
||||
Licensing: Accept
|
||||
Finish Configuration
|
||||
|
||||
gnome-initial-setup:
|
||||
Language: English (US)
|
||||
Typing:English (US)
|
||||
Privacy: Location Services: OFF
|
||||
Connect Your Online Accounts: Skip
|
||||
Start Using Red Hat Enterprise Linux
|
||||
|
||||
# Add user to sudoers
|
||||
Add 'qt ALL=NOPASSWD: ALL' to /etc/sudoers.d/qt
|
||||
|
||||
# Configure Settings
|
||||
Notifications:
|
||||
* Notification Popups: OFF
|
||||
* Lock Screen Notifications: OFF
|
||||
Privacy:
|
||||
* Screen Lock: OFF
|
||||
Power:
|
||||
* Blank screen: Never
|
||||
Details:
|
||||
* Time & Date: Time Zone: UTC
|
||||
* run "sudo timedatectl set-timezone Etc/UTC"
|
||||
* Users: Automatic login on
|
||||
|
||||
Add 'GRUB_GFXMODE=1280x800' to /etc/default/grub
|
||||
sudo grub2-mkconfig -o /etc/grub2.cfg
|
||||
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
|
||||
|
||||
# Add support for virtio driver
|
||||
su
|
||||
echo "add_drivers+=\" virtio-blk \"" >> /etc/dracut.conf.d/virtio.conf
|
||||
dracut -f
|
||||
|
||||
# Do these from Opennebula UI!
|
||||
|
||||
# Enable network connection from right upper corner
|
||||
|
||||
Devices:
|
||||
* Displays: Resolution 1280 x 800
|
||||
|
||||
# Fetch and run coin-setup
|
||||
Download http://coin/coin/binary/linux_amd64/coin-setup
|
||||
# run as qt user
|
||||
chmod 755 coin-setup
|
||||
run './coin-setup'
|
||||
|
||||
Reboot
|
||||
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
sudo tee -a /etc/dconf/db/local.d/00-media-automount <<"EOF"
|
||||
[org/gnome/desktop/media-handling]
|
||||
automount=false
|
||||
automount-open=false
|
||||
EOF
|
||||
|
||||
sudo dconf update
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "ETHTOOL_OPTS='-K \${DEVICE} tso off'" | sudo tee -a /etc/sysconfig/network-scripts/ifcfg-Wired_connection_1
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
"$(dirname "$0")"/../common/unix/telegraf_install.sh
|
||||
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -e
|
||||
|
||||
curl --retry 5 --retry-delay 10 --retry-max-time 60 http://ci-files01-hki.intra.qt.io/input/semisecure/redhat_ak.sh -o "/tmp/redhat_ak.sh" &>/dev/null
|
||||
sudo chmod 755 /tmp/redhat_ak.sh
|
||||
/tmp/redhat_ak.sh
|
||||
|
||||
# refresh local certificates
|
||||
sudo subscription-manager refresh
|
||||
|
||||
# Attach available subscriptions to system. This is needed when subscriptions are renewed.
|
||||
sudo subscription-manager attach --auto
|
||||
|
||||
sudo rm -f /tmp/redhat_ak.sh
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Ipv6 link local becomes tentative and dadfailed if two systems has the same secret_key
|
||||
# New unique secret key will be created automatically during start up.
|
||||
# https://access.redhat.com/solutions/3553581
|
||||
echo "Removing secret_key"
|
||||
sudo rm -f "/var/lib/NetworkManager/secret_key"
|
||||
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
set -ex
|
||||
|
||||
echo "Change default stable-secret to based on MAC"
|
||||
sudo sed -i '/^IPV6_ADDR_GEN_MODE/d' "/etc/sysconfig/network-scripts/ifcfg-enp1s0"
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
"$BASEDIR/../common/linux/set_ulimit.sh"
|
||||
@@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
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
|
||||
|
||||
# Set timezone to UTC.
|
||||
sudo timedatectl set-timezone Etc/UTC
|
||||
# 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
|
||||
|
||||
# Set Wayland enable as false.
|
||||
echo "Setting Wayland enable as false"
|
||||
sudo sed -i 's/#WaylandEnable=false/WaylandEnable=false/g' /etc/gdm/custom.conf
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
echo "set WritePreparedUpdates=false" | sudo tee -a /etc/PackageKit/PackageKit.conf
|
||||
sudo systemctl stop packagekit
|
||||
sudo systemctl disable packagekit
|
||||
sudo yum -y remove PackageKit gnome-software
|
||||
|
||||
sudo subscription-manager config --rhsm.manage_repos=1
|
||||
sudo subscription-manager refresh
|
||||
|
||||
# sudo yum config-manager --enable 'rhceph-4-tools-for-rhel-8-x86_64-rpms'
|
||||
sudo yum config-manager --enable 'codeready-builder-for-rhel-8-x86_64-rpms'
|
||||
sudo yum config-manager --enable 'rhel-8-for-x86_64-baseos-rpms'
|
||||
sudo yum config-manager --enable 'rhel-8-for-x86_64-appstream-rpms'
|
||||
# Epel is required for 'double-conversion-devel', 'libsqlite3x' and 'p7zip'
|
||||
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
|
||||
|
||||
sudo yum clean all
|
||||
# As well as this fetching the repository data, we also get a printout of the used repos
|
||||
sudo yum repolist
|
||||
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
sudo yum -y install gcc-toolset-10
|
||||
|
||||
echo "source /opt/rh/gcc-toolset-10/enable" >> ~/.bashrc
|
||||
@@ -0,0 +1,160 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# Remove update notifications and packagekit running in the background
|
||||
sudo yum -y remove PackageKit gnome-software
|
||||
|
||||
sudo yum -y update
|
||||
|
||||
installPackages=()
|
||||
installPackages+=(git)
|
||||
installPackages+=(zlib-devel)
|
||||
installPackages+=(glib2-devel)
|
||||
installPackages+=(openssl3)
|
||||
installPackages+=(openssl3-devel)
|
||||
installPackages+=(freetype-devel)
|
||||
installPackages+=(fontconfig-devel)
|
||||
installPackages+=(curl-devel)
|
||||
installPackages+=(expat-devel)
|
||||
installPackages+=(gettext-devel)
|
||||
installPackages+=(perl-devel)
|
||||
installPackages+=(dh-autoreconf)
|
||||
# cmake build
|
||||
installPackages+=(ninja-build)
|
||||
installPackages+=(pcre2-devel)
|
||||
installPackages+=(double-conversion-devel)
|
||||
installPackages+=(zstd)
|
||||
# update kernel
|
||||
installPackages+=(kernel)
|
||||
installPackages+=(kernel-tools)
|
||||
installPackages+=(kernel-devel)
|
||||
installPackages+=(kernel-core)
|
||||
installPackages+=(kernel-modules)
|
||||
installPackages+=(kernel-headers)
|
||||
# EGL support
|
||||
# mesa-libraries need to use older version than 22.1.5-2 which cause Xorg to crash
|
||||
installPackages+=(mesa-libEGL-devel-21.3.4-1.el8)
|
||||
installPackages+=(mesa-libGL-devel-21.3.4-1.el8)
|
||||
installPackages+=(mesa-dri-drivers-21.3.4-1.el8.x86_64)
|
||||
installPackages+=(mesa-libgbm-21.3.4-1.el8.x86_64)
|
||||
installPackages+=(mesa-vulkan-drivers-21.3.4-1.el8.x86_64)
|
||||
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)
|
||||
# yasm for QtMultimedia
|
||||
installPackages+=(yasm)
|
||||
# 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 3.8 for pyside. Qt for Python support for Python 3.6 will be deprecated in within pyside6.3
|
||||
installPackages+=(python38)
|
||||
installPackages+=(python38-devel)
|
||||
# WebEngine
|
||||
installPackages+=(bison)
|
||||
installPackages+=(flex)
|
||||
installPackages+=(gperftools-libs)
|
||||
installPackages+=(gperf)
|
||||
installPackages+=(alsa-lib-devel)
|
||||
installPackages+=(pulseaudio-libs-devel)
|
||||
installPackages+=(libXtst-devel)
|
||||
installPackages+=(libxshmfence-devel)
|
||||
installPackages+=(nspr-devel)
|
||||
installPackages+=(nss-devel)
|
||||
installPackages+=(python3-html5lib)
|
||||
# For Android builds
|
||||
installPackages+=(java-11-openjdk-devel)
|
||||
# For receiving shasum
|
||||
installPackages+=(perl-Digest-SHA)
|
||||
# INTEGRITY requirements
|
||||
installPackages+=(glibc.i686)
|
||||
# Enable Qt Bluetooth
|
||||
installPackages+=(bluez-libs-devel)
|
||||
# QtNfc
|
||||
installPackages+=(pcsc-lite-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)
|
||||
installPackages+=(xcb-util-image-devel)
|
||||
installPackages+=(xcb-util-keysyms-devel)
|
||||
installPackages+=(xcb-util-wm-devel)
|
||||
installPackages+=(xcb-util-renderutil-devel)
|
||||
installPackages+=(xcb-util-cursor)
|
||||
installPackages+=(xcb-util-cursor-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 dnf -y module install nodejs:12
|
||||
|
||||
# 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
|
||||
# Just make sure we have virtualenv to run with python3.8 -m virtualenv
|
||||
sudo python3.8 -m pip 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"
|
||||
|
||||
# Install 3.8 compatible wheels
|
||||
python3.8 -m pip 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"
|
||||
|
||||
OpenSSLVersion="$(openssl3 version |cut -b 9-14)"
|
||||
echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt
|
||||
17
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-p7zip.sh
Normal file
17
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/04-p7zip.sh
Normal file
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
|
||||
|
||||
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
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
# shellcheck source=../common/unix/libclang-v100-dyn.sh
|
||||
"$BASEDIR/../common/unix/libclang-v100-dyn.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"
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/linux/disable_selinux.sh
|
||||
source "${BASH_SOURCE%/*}/../common/linux/disable_selinux.sh"
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
# Required by Rhel source build
|
||||
sudo yum -y install perl-IPC-Cmd
|
||||
|
||||
"$(dirname "$0")/../common/unix/install-openssl.sh" "linux"
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source "${BASH_SOURCE%/*}/../common/linux/sccache.sh"
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# shellcheck source=../common/unix/mqtt_broker.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"
|
||||
6
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/30-fbx.sh
Normal file
6
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/30-fbx.sh
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
"$BASEDIR/../common/linux/fbx_linux.sh"
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
"$BASEDIR/../common/unix/install-conan.sh"
|
||||
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
BASEDIR=$(dirname "$0")
|
||||
"$BASEDIR/../common/linux/install-git.sh"
|
||||
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# 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
|
||||
@@ -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"
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/linux/android_linux.sh
|
||||
source "${BASH_SOURCE%/*}/../common/linux/android_linux.sh"
|
||||
@@ -0,0 +1,13 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# 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"
|
||||
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/openssl_for_android.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/openssl_for_android.sh"
|
||||
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/install_protobuf.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/install_protobuf.sh"
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
# shellcheck source=../common/unix/install_grpc.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/install_grpc.sh"
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# This script installs QEMU Guest Agent
|
||||
|
||||
set -ex
|
||||
|
||||
sudo yum -y install qemu-guest-agent
|
||||
sudo systemctl start qemu-guest-agent
|
||||
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
sudo yum -y install elfutils-libelf-devel
|
||||
|
||||
# shellcheck source=../common/linux/install_dwz.sh
|
||||
source "${BASH_SOURCE%/*}/../common/linux/install_dwz.sh"
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source "${BASH_SOURCE%/*}/../common/linux/bootstrap-autostart.sh"
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source "${BASH_SOURCE%/*}/../common/unix/install-ffmpeg.sh" "linux"
|
||||
source "${BASH_SOURCE%/*}/../common/unix/install-ffmpeg.sh" "android"
|
||||
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
BASEDIR=$(dirname "$0")
|
||||
"$BASEDIR/../common/unix/squishInstall.sh"
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
set -ex
|
||||
|
||||
"$(dirname "$0")"/../common/linux/cleanup_cache.sh
|
||||
18
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/99-version.sh
Normal file
18
coin/provisioning/qtci-linux-RHEL-8.8-x86_64/99-version.sh
Normal file
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (C) 2023 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
|
||||
|
||||
# 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"
|
||||
Reference in New Issue
Block a user