From 6165dbbe3a95bc9794bebde56653f38e7191755d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simo=20F=C3=A4lt?= Date: Thu, 13 Apr 2023 10:00:43 +0300 Subject: CI: Enable packaging config on arm linux Task-number: COIN-1029 Change-Id: I369ce20e24b9adf6b64274dfe07bdfc25888e46f Reviewed-by: Heikki Halmet (cherry picked from commit 89edadf3bea24342b6538e1826a71f1a70ad1d49) Reviewed-by: Jani Heikkinen --- .../provisioning/common/linux/disable-ntp_linux.sh | 2 +- .../common/linux/remove-update_notifier.sh | 12 +- .../01-disable_auto_suspend.sh | 4 + .../01-systemsetup.sh | 80 ++++++ .../qtci-linux-Debian-11.6-aarch64/02-apt.sh | 298 +++++++++++++++++++++ .../02-disable-notifications.sh | 4 + .../02-disable-ntp.sh | 4 + .../02-remove-apport.sh | 4 + .../02-remove-update_notifier.sh | 4 + .../qtci-linux-Debian-11.6-aarch64/92-sbuild.sh | 90 +++++++ .../93-sbuild-cmake.sh | 59 ++++ 11 files changed, 559 insertions(+), 2 deletions(-) create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-disable_auto_suspend.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-systemsetup.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-apt.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-notifications.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-ntp.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-apport.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-update_notifier.sh create mode 100644 coin/provisioning/qtci-linux-Debian-11.6-aarch64/92-sbuild.sh create mode 100755 coin/provisioning/qtci-linux-Debian-11.6-aarch64/93-sbuild-cmake.sh (limited to 'coin/provisioning') diff --git a/coin/provisioning/common/linux/disable-ntp_linux.sh b/coin/provisioning/common/linux/disable-ntp_linux.sh index 85159331..1b89d2c2 100755 --- a/coin/provisioning/common/linux/disable-ntp_linux.sh +++ b/coin/provisioning/common/linux/disable-ntp_linux.sh @@ -43,7 +43,7 @@ set -ex echo "Disable Network Time Protocol (NTP)" -if uname -a |grep -q "Ubuntu"; then +if uname -a |grep -q "Ubuntu\|Debian" ; then sudo timedatectl set-ntp false elif cat /etc/os-release | grep "PRETTY_NAME" | grep -q "Leap 15"; then (sudo systemctl stop chronyd && sudo systemctl disable chronyd) diff --git a/coin/provisioning/common/linux/remove-update_notifier.sh b/coin/provisioning/common/linux/remove-update_notifier.sh index 4ee32d61..b4598c73 100755 --- a/coin/provisioning/common/linux/remove-update_notifier.sh +++ b/coin/provisioning/common/linux/remove-update_notifier.sh @@ -1,3 +1,13 @@ #!/usr/bin/env bash -sudo apt -q -y remove update-notifier update-manager python3-distupgrade python3-update-manager ubuntu-release-upgrader-core update-manager-core +installPackages+=(update-notifier) + +if uname -a |grep -q "Ubuntu" ; then +installPackages+=(update-manager-core) +installPackages+=(update-manager) +installPackages+=(python3-distupgrade) +installPackages+=(python3-update-manager) +installPackages+=(ubuntu-release-upgrader-core) +fi + +sudo apt -q -y remove "${installPackages[@]}" diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-disable_auto_suspend.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-disable_auto_suspend.sh new file mode 100755 index 00000000..430b1297 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-disable_auto_suspend.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target + diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-systemsetup.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-systemsetup.sh new file mode 100755 index 00000000..f642059a --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/01-systemsetup.sh @@ -0,0 +1,80 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2017 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 modifies system settings for automated use + +set -ex + +# shellcheck source=../common/unix/check_and_set_proxy.sh +source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" + +NTS_IP=10.212.2.216 + +echo "Set timezone to UTC." +sudo timedatectl set-timezone Etc/UTC +echo "Timeout for blanking the screen (0 = never)" +gsettings set org.gnome.desktop.session idle-delay 0 +echo "Prevents screen lock when screesaver goes active." +gsettings set org.gnome.desktop.screensaver lock-enabled false +echo "Set grub timeout to 0" +sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub +sudo update-grub + +# https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1624320 +# Checking if Ubuntu 20.04 works without this +#echo "Setting up workaround for Ubuntu systemd resolve bug" +#sudo rm -f /etc/resolv.conf +#sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf + +# remove hostname to get unique based on IP address +sudo rm /etc/hostname + +echo "Set Network Test Server address to $NTS_IP in /etc/hosts" +echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts + +echo 'LC_ALL=en_US.UTF8' | sudo tee /etc/default/locale + +if [ "$http_proxy" != "" ]; then + echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf +fi + +# This script diverts qtlogging.ini file so we don't get debugging related auto-test failures. +sudo dpkg-divert --divert /etc/xdg/QtProject/qtlogging.ini.foo --rename /etc/xdg/QtProject/qtlogging.ini diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-apt.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-apt.sh new file mode 100755 index 00000000..f4621138 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-apt.sh @@ -0,0 +1,298 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2021 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$ +## +############################################################################# + +# Install required packages with APT + +# shellcheck source=../common/linux/apt_wait_loop.sh +source "${BASH_SOURCE%/*}/../common/linux/apt_wait_loop.sh" + +echo "Disabling auto update" +sudo tee "/etc/apt/apt.conf.d/20auto-upgrades" > /dev/null <<-EOC + APT::Periodic::Update-Package-Lists "0"; + APT::Periodic::Unattended-Upgrade "1"; +EOC + +for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do + sudo systemctl stop $service + sudo systemctl disable $service +done + + +echo "Using public repositories for now. Repo-clones isn't set yet for Debian use" +# (ping -c 3 repo-clones.ci.qt.io && set_internal_repo) || echo "Internal package repository not found. Using public repositories." +echo "deb http://deb.debian.org/debian bullseye-backports main" | sudo tee -a /etc/apt/sources.list +echo "deb-src http://deb.debian.org/debian bullseye-backports main" | sudo tee -a /etc/apt/sources.list + +# Make sure needed ca-certificates are available +sudo apt-get install --reinstall ca-certificates + +# Git is not needed by builds themselves, but is nice to have +# immediately as one starts debugging +installPackages+=(git) +# 7zip is a needed decompressing tool +installPackages+=(p7zip-full) +# To be able to mount yocto-cache during builds +installPackages+=(nfs-common) +# libssl-dev provides headers for OpenSSL +installPackages+=(libssl-dev) +# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git +installPackages+=("^libxcb.*") +installPackages+=(libxkbcommon-dev) +installPackages+=(libxkbcommon-x11-dev) +installPackages+=(libx11-xcb-dev) +installPackages+=(libglu1-mesa-dev) +installPackages+=(libxrender-dev) +installPackages+=(libxi-dev) +# Enable linking to system dbus +installPackages+=(libdbus-1-dev) +# Needed libraries for WebEngine +installPackages+=(udev) +installPackages+=(libudev-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libgbm-dev) +installPackages+=(libxkbfile-dev) +installPackages+=(libxshmfence-dev) +installPackages+=(libxss-dev) +## installPackages+=(nodejs-mozilla) # use nodejs-mozilla because nodejs is outdated +#installPackages+=(nodejs) +#installPackages+=(python3-html5lib) +# +## Common event loop handling +installPackages+=(libglib2.0-dev) +# PostgreSQL support +installPackages+=(libpq-dev) +# SQLite support +installPackages+=(libsqlite3-dev) +# ODBC support +installPackages+=(unixodbc-dev) +# Support for FreeType font engine +installPackages+=(libfreetype6-dev) +# Enable the usage of system jpeg libraries +installPackages+=(libjpeg-dev) +# Enable support for printer driver +installPackages+=(libcups2-dev) +# Enable support for printer test +installPackages+=(cups-pdf) +# Install libraries needed for QtMultimedia to be able to support all plugins +installPackages+=(libasound2-dev) +installPackages+=(libgstreamer1.0-dev) +installPackages+=(libgstreamer-plugins-base1.0-dev) +installPackages+=(libgstreamer-plugins-bad1.0-dev) +installPackages+=(libgstreamer-gl1.0-0) +installPackages+=(gir1.2-gst-plugins-base-1.0) +installPackages+=(gir1.2-gst-plugins-bad-1.0) + +## Support for cross-building to x86 (needed by WebEngine boot2qt builds) +#installPackages+=(g++-multilib) +## python3 development package +#installPackages+=(python3-dev) +#installPackages+=(python3-pip) +#installPackages+=(virtualenv) +#installPackages+=(python3-wheel) +## python2 development package +#installPackages+=(python2-dev) +## Automates interactive applications (Needed by RTA to automate configure testing) +installPackages+=(expect) +installPackages+=(mesa-common-dev) +installPackages+=(libgl1-mesa-glx) +installPackages+=(libgl1-mesa-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(libegl1) +installPackages+=(libegl-mesa0) +installPackages+=(libegl-dev) +installPackages+=(libglvnd-dev) +installPackages+=(libgles2-mesa-dev) +installPackages+=(curl) +installPackages+=(libcurl4-openssl-dev) +installPackages+=(libicu-dev) +installPackages+=(zlib1g-dev) +installPackages+=(zlib1g) +installPackages+=(openjdk-11-jdk) +installPackages+=(libgtk-3-dev) +installPackages+=(ninja-build) +installPackages+=(libssl-dev) +installPackages+=(libxcursor-dev) +installPackages+=(libxcomposite-dev) +installPackages+=(libxdamage-dev) +installPackages+=(libxrandr-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libsrtp2-dev) +installPackages+=(libwebp-dev) +installPackages+=(libjsoncpp-dev) +installPackages+=(libopus-dev) +installPackages+=(libminizip-dev) +installPackages+=(libavutil-dev) +installPackages+=(libavformat-dev) +installPackages+=(libavcodec-dev) +installPackages+=(libevent-dev) +installPackages+=(bison) +installPackages+=(flex) +installPackages+=(gperf) +installPackages+=(libasound2-dev) +installPackages+=(libpulse-dev) +installPackages+=(libxtst-dev) +installPackages+=(libnspr4-dev) +installPackages+=(libnss3-dev) +installPackages+=(libnss3) +installPackages+=(libopenal-dev) +installPackages+=(libbluetooth-dev) +installPackages+=(dkms) +# Needed for qtspeech +installPackages+=(libspeechd-dev) +#Pypdf for PDF reading in RTA tests +installPackages+=(python3-pypdf2) +# Needed for b2qt +installPackages+=(git-lfs) +installPackages+=(chrpath) +installPackages+=(gawk) +installPackages+=(texinfo) +# Needed for Poppler test in QtWebEngine +installPackages+=(libpoppler-cpp-dev) +# Needed for QtCore +installPackages+=(libdouble-conversion-dev) +installPackages+=(libpcre2-dev) +# Needed for qtgampepad +installPackages+=(libsdl2-2.0) +installPackages+=(libsdl2-dev) +# Needed for qtwebkit +installPackages+=(ruby) +installPackages+=(libxslt1-dev) +installPackages+=(libxml2-dev) +installPackages+=(libhyphen-dev) +## For remote access +installPackages+=(ssh) +## For bitbake +installPackages+=(diffstat) +installPackages+=(binfmt-support) +installPackages+=(zstd) +# Vulkan is needed for examples +installPackages+=(libvulkan-dev) +# Needed for qtdltlogging +installPackages+=(libdlt-dev) +# For QNX +installPackages+=(nfs-kernel-server) +installPackages+=(net-tools) +installPackages+=(bridge-utils) +## For debian building debian packages +installPackages+=(sbuild) +installPackages+=(apt-cacher-ng) +installPackages+=(devscripts) +installPackages+=(piuparts) +installPackages+=(ubuntu-dev-tools) +installPackages+=(libcurl4-openssl-dev) +installPackages+=(libexpat1-dev) +installPackages+=(libjsoncpp-dev) +installPackages+=(zlib1g-dev) +installPackages+=(libarchive-dev) +installPackages+=(libncurses5-dev) +installPackages+=(librhash-dev) +installPackages+=(libuv1-dev) +installPackages+=(python3-sphinx:native) +installPackages+=(dh-elpa) +installPackages+=(dh-sequence-sphinxdoc) +installPackages+=(debhelper-compat) +installPackages+=(default-libmysqlclient-dev) +installPackages+=(dh-exec) +installPackages+=(libcups2-dev) +installPackages+=(libdbus-1-dev) +installPackages+=(libegl-dev) +installPackages+=(libfontconfig-dev) +installPackages+=(libfreetype-dev) +installPackages+=(libgl-dev) +installPackages+=(libglib2.0-dev) +installPackages+=(libglx-dev) +installPackages+=(libgss-dev) +installPackages+=(libgtk-3-dev) +installPackages+=(libicu-dev) +installPackages+=(libpq-dev) +installPackages+=(libsqlite3-dev) +installPackages+=(libssl-dev) +installPackages+=(libvulkan-dev) +installPackages+=(libx11-dev) +installPackages+=(libx11-xcb-dev) +installPackages+=(libxcb-glx0-dev) +installPackages+=(libxcb-icccm4-dev) +installPackages+=(libxcb-image0-dev) +installPackages+=(libxcb-keysyms1-dev) +installPackages+=(libxcb-randr0-dev) +installPackages+=(libxcb-render-util0-dev) +installPackages+=(libxcb-render0-dev) +installPackages+=(libxcb-shape0-dev) +installPackages+=(libxcb-shm0-dev) +installPackages+=(libxcb-sync-dev) +installPackages+=(libxcb-util-dev) +installPackages+=(libxcb-xfixes0-dev) +installPackages+=(libxcb-xinerama0-dev) +installPackages+=(libxcb-xinput-dev) +installPackages+=(libxcb-xkb-dev) +installPackages+=(libxcb1-dev) +installPackages+=(libxext-dev) +installPackages+=(libxfixes-dev) +installPackages+=(libxi-dev) +installPackages+=(libxkbcommon-dev) +installPackages+=(libxkbcommon-x11-dev) +installPackages+=(libxrender-dev) +installPackages+=(ninja-build) +installPackages+=(pkg-config) +installPackages+=(pkg-kde-tools) +installPackages+=(unixodbc-dev) +installPackages+=(zlib1g-dev) + + +echo "Running update for apt" +waitLoop +sudo apt-get update +echo "Installing packages" +waitLoop +sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" +sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install cmake apt-cacher-ng -t bullseye-backports + +# Install all needed packages in a special wheel cache directory +#pip3 wheel --wheel-dir "$HOME/python3-wheels" -r "${BASH_SOURCE%/*}/../common/shared/requirements.txt" + +#source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" +#SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels" +# SetEnvVar "PATH" "/usr/lib/nodejs-mozilla/bin:\$PATH" + +#OpenSSLVersion="$(openssl version |cut -b 9-14)" +#echo "OpenSSL = $OpenSSLVersion" >> ~/versions.txt + diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-notifications.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-notifications.sh new file mode 100755 index 00000000..f38c9bab --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-notifications.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +# shellcheck source=../common/linux/disable-notifications.sh +source "${BASH_SOURCE%/*}/../common/linux/disable-notifications.sh" diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-ntp.sh new file mode 100755 index 00000000..89806892 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-disable-ntp.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +# shellcheck source=../common/linux/disable-ntp_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh" diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-apport.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-apport.sh new file mode 100755 index 00000000..09477763 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-apport.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +# shellcheck source=../common/linux/remove-apport.sh +source "${BASH_SOURCE%/*}/../common/linux/remove-apport.sh" diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-update_notifier.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-update_notifier.sh new file mode 100755 index 00000000..55c6ce79 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/02-remove-update_notifier.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +# shellcheck source=../common/linux/remove-update_notifier.sh +source "${BASH_SOURCE%/*}/../common/linux/remove-update_notifier.sh" diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/92-sbuild.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/92-sbuild.sh new file mode 100644 index 00000000..8392525c --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/92-sbuild.sh @@ -0,0 +1,90 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2021 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$ +## +############################################################################# + +# Setups sbuild environment + +tee ~/.sbuildrc << EOF +############################################################################## +# PACKAGE BUILD RELATED (additionally produce _source.changes) +############################################################################## +# -d +\$distribution = 'stable'; +# -A +\$build_arch_all = 1; +# -s +\$build_source = 1; +# -v +\$verbose = 1; +# parallel build +\$ENV{'DEB_BUILD_OPTIONS'} = 'parallel=8'; +############################################################################## +# POST-BUILD RELATED (turn off functionality by setting variables to 0) +############################################################################## +\$run_lintian = 1; +\$lintian_opts = ['-i', '-I']; +\$run_piuparts = 0; +\$piuparts_opts = ['--schroot', 'stable-arm64-sbuild', '--no-eatmydata']; +\$run_autopkgtest = 0; +\$autopkgtest_root_args = ''; +\$autopkgtest_opts = [ '--', 'schroot', '%r-%a-sbuild' ]; + +############################################################################## +# PERL MAGIC +############################################################################## +1; +EOF + +# Add user group +sudo sbuild-adduser $LOGNAME +newgrp sbuild + +# Create chroot +#sudo sbuild-createchroot --include=eatmydata,ccache,gnupg,ca-certificates stable /srv/chroot/stable-arm64-sbuild http://127.0.0.1:3142/deb.debian.org/debian +sudo sbuild-createchroot --include=eatmydata,ccache,gnupg,ca-certificates stable /srv/chroot/stable-arm64-sbuild + +# Update chroot +sudo sbuild-update -udcar stable + + + + + + diff --git a/coin/provisioning/qtci-linux-Debian-11.6-aarch64/93-sbuild-cmake.sh b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/93-sbuild-cmake.sh new file mode 100755 index 00000000..6b8c0e84 --- /dev/null +++ b/coin/provisioning/qtci-linux-Debian-11.6-aarch64/93-sbuild-cmake.sh @@ -0,0 +1,59 @@ +#!/usr/bin/env bash + +############################################################################# +## +## Copyright (C) 2021 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$ +## +############################################################################# + +# build cmake for the debian packgaes +# Create chroot for Ubuntu focal +#mk-sbuild --arch=amd64 --name=focal --debootstrap-mirror="http://archive.ubuntu.com/ubuntu/" --distro=ubuntu focal + +mkdir -p /home/qt/debian_packages +cd /home/qt/debian_packages +wget https://ci-files01-hki.intra.qt.io/input/debian/cmake/amd64-focal/cmake-3.24-deb.tar.gz +tar xzf cmake-3.24-deb.tar.gz +#git clone git@gitlab.ics.com:qt6_packaging/tqtc/cmake.git +#wget https://github.com/Kitware/CMake/releases/download/v3.24.3/cmake-3.24.3.tar.gz -O cmake_3.24.3.orig.tar.gz +#dpkg-source -b cmake +#sbuild --build-dep-resolver=aptitude -sAd focal -c focal-amd64 cmake_3.24.3-1~bpo1.dsc + + + + + + -- cgit v1.2.3