aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-01-06 09:08:20 +0100
committerLiang Qi <liang.qi@qt.io>2018-01-06 09:08:20 +0100
commit2a39f8e5fe113cf96b3b11848ead1bf4011f1966 (patch)
tree49b1305970567c66026a0531300f195ee55eeacd /coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64
parentd3c2de907d299481c942f96ab84c627761dbb446 (diff)
parent89d4dec81886a5e2d1e7537195f8677146666c85 (diff)
Merge remote-tracking branch 'origin/5.9' into 5.10
Diffstat (limited to 'coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64')
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-systemsetup.sh)21
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.sh)104
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh)0
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/004-yocto.sh)4
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh40
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/30-fbx.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/030-fbx.sh)4
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-android_linux.sh38
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-cmake.sh5
8 files changed, 189 insertions, 27 deletions
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-systemsetup.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh
index 2498e441..f245c90c 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-systemsetup.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/01-systemsetup.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
#############################################################################
##
@@ -36,7 +36,11 @@
# This script modifies system settings for automated use
# shellcheck source=../common/try_catch.sh
+
+set -ex
+
source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+source "${BASH_SOURCE%/*}/../common/check_and_set_proxy.sh"
NTS_IP=10.212.2.216
@@ -44,9 +48,12 @@ ExceptionGsettings1=100
ExceptionGsettings2=101
ExceptionGsettings3=102
ExceptionNTS=103
+ExceptionProxy=104
try
(
+ echo "Set timezone to UTC" || throw $ExceptionTimezone
+ sudo timedatectl set-timezone Etc/UTC
echo "Timeout for blanking the screen (0 = never)"
gsettings set org.gnome.desktop.session idle-delay 0 || throw $ExceptionGsettings1
echo "Prevents screen lock when screesaver goes active."
@@ -56,9 +63,17 @@ try
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 || throw $ExceptionNTS
+
+ if [ "$proxy" != "" ]; then
+ echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf || throw $ExceptionProxy
+ fi
)
catch || {
case $ex_code in
+ $ExceptionTimezone)
+ echo "Failed to set timezone to UTC"
+ exit 1;
+ ;;
$ExceptionGsettings1)
echo "Failed to disable black screen."
exit 1;
@@ -75,6 +90,10 @@ catch || {
echo "Failed to set network teset server address into /etc/hosts."
exit 1;
;;
+ $ExceptionProxy)
+ echo "Failed to set proxy /etc/apt/apt.conf."
+ exit 1;
+ ;;
esac
}
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh
index 980da2ca..acf92779 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
#############################################################################
##
@@ -35,6 +35,8 @@
# Install required packages with APT
+set -ex
+
source "${BASH_SOURCE%/*}/../common/try_catch.sh"
ExceptionAPTUpdate=100
@@ -49,47 +51,103 @@ try
sudo systemctl stop $service
sudo systemctl disable $service
done
- echo "Running update for apt"
- sudo apt-get update
- echo "Installing packages"
# Git is not needed by builds themselves, but is nice to have
# immediately as one starts debugging
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install git || throw $ExceptionAPT
+ installPackages+=(git)
# 7zip is a needed decompressing tool
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install p7zip || throw $ExceptionAPT
+ installPackages+=(p7zip)
# libssl-dev provides headers for OpenSSL
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libssl-dev || throw $ExceptionAPT
+ installPackages+=(libssl-dev)
# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev || throw $ExceptionAPT
+ 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
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libdbus-1-dev || throw $ExceptionAPT
+ installPackages+=(libdbus-1-dev)
# Needed libraries for WebEngine
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libudev-dev libegl1-mesa-dev libfontconfig1-dev libxss-dev || throw $ExceptionAPT
+ installPackages+=(libudev-dev)
+ installPackages+=(libegl1-mesa-dev)
+ installPackages+=(libfontconfig1-dev)
+ installPackages+=(libxss-dev)
# Common event loop handling
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libglib2.0-dev || throw $ExceptionAPT
+ installPackages+=(libglib2.0-dev)
# MySQL support
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libmysqlclient-dev || throw $ExceptionAPT
+ installPackages+=(libmysqlclient-dev)
# PostgreSQL support
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libpq-dev || throw $ExceptionAPT
+ installPackages+=(libpq-dev)
# SQLite support
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libsqlite3-dev || throw $ExceptionAPT
+ installPackages+=(libsqlite3-dev)
# ODBC support
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install unixodbc-dev || throw $ExceptionAPT
+ installPackages+=(unixodbc-dev)
# Support for FreeType font engine
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libfreetype6-dev || throw $ExceptionAPT
+ installPackages+=(libfreetype6-dev)
# Enable the usage of system jpeg libraries
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libjpeg-dev || throw $ExceptionAPT
+ installPackages+=(libjpeg-dev)
# Enable support for printer driver
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libcups2-dev || throw $ExceptionAPT
+ installPackages+=(libcups2-dev)
# Install libraries needed for QtMultimedia to be able to support all plugins
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev || throw $ExceptionAPT
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev || throw $ExceptionAPT
+ installPackages+=(libasound2-dev)
+ installPackages+=(libgstreamer1.0-dev)
+ installPackages+=(libgstreamer-plugins-base1.0-dev)
+ installPackages+=(libgstreamer-plugins-good1.0-dev)
+ installPackages+=(libgstreamer-plugins-bad1.0-dev)
# Support for cross-building to x86 (needed by WebEngine boot2qt builds)
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install g++-multilib || throw $ExceptionAPT
+ installPackages+=(g++-multilib)
# python3 development package
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install python3-dev python3-pip python3-virtualenv || throw $ExceptionAPT
+ installPackages+=(python3-dev)
+ installPackages+=(python3-pip)
+ installPackages+=(python3-virtualenv)
# Automates interactive applications (Needed by RTA to automate configure testing)
- sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install expect || throw $ExceptionAPT
+ installPackages+=(expect)
+ installPackages+=(mesa-common-dev)
+ installPackages+=(libgl1-mesa-glx)
+ installPackages+=(libgl1-mesa-dev)
+ installPackages+=(libegl1-mesa-dev)
+ installPackages+=(curl)
+ installPackages+=(libicu-dev)
+ installPackages+=(zlib1g-dev)
+ installPackages+=(zlib1g)
+ installPackages+=(openjdk-8-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+=(libxss-dev)
+ installPackages+=(libsrtp0-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+=(libopenal-dev)
+ installPackages+=(libbluetooth-dev)
+ #VirtualBox for RTA
+ installPackages+=(virtualbox)
+ installPackages+=(dkms)
+
+ echo "Running update for apt"
+ sudo apt-get update
+ echo "Installing packages"
+ sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" || throw $ExceptionAPT
)
catch || {
case $ex_code in
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh
index 74ef2b4e..74ef2b4e 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/004-yocto.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh
index ad4e25a9..dd6acd39 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/004-yocto.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
#############################################################################
##
@@ -35,7 +35,7 @@
# This script installs the Yocto toolchain
-set -e
+set -ex
source "${BASH_SOURCE%/*}/../common/DownloadURL.sh"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh
new file mode 100755
index 00000000..af7d7c13
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh
@@ -0,0 +1,40 @@
+#!/bin/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$
+##
+#############################################################################
+
+source /opt/rh/devtoolset-4/enable
+
+set -ex
+
+source "${BASH_SOURCE%/*}/../common/openssl_for_android_linux.sh"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/030-fbx.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/30-fbx.sh
index 7c5fadcb..7e39935b 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/030-fbx.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/30-fbx.sh
@@ -1,4 +1,6 @@
-#!/bin/bash
+#!/usr/bin/env bash
+
+set -ex
BASEDIR=$(dirname "$0")
$BASEDIR/../common/fbx_linux.sh
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-android_linux.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-android_linux.sh
new file mode 100755
index 00000000..5808a45c
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-android_linux.sh
@@ -0,0 +1,38 @@
+#!/bin/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
+
+source "${BASH_SOURCE%/*}/../common/android_linux.sh"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-cmake.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-cmake.sh
new file mode 100755
index 00000000..ddfc88a6
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/40-cmake.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/cmake_linux.sh
+