aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-03-06 19:21:59 +0100
committerLiang Qi <liang.qi@qt.io>2017-03-07 19:40:36 +0100
commitf65308d3713a49278d28281a4065c0b84b49df7c (patch)
tree80d840e43940ba2641b6eb7c22253a25253b57c6
parent82cea365312698b0aae777b8affaa99544b4bc05 (diff)
parentad3c5195259321ab8420df0dee1a9b14cfc4811b (diff)
Merge remote-tracking branch 'origin/5.9' into dev
This change also integrated latest dev branch of qtremoteobjects and qtwebengine. Conflicts: .gitmodules qtremoteobjects qtwebengine Change-Id: Ic6f97f43c55bdca5d8ac0481f3bb8a73429657b9
-rw-r--r--.gitmodules16
-rw-r--r--coin/platform_configs/default.txt10
-rw-r--r--coin/platform_configs/qt5.txt2
-rw-r--r--coin/provisioning/common/03-conan.ps12
-rw-r--r--coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh127
-rw-r--r--coin/provisioning/common/InstallPKGFromURL.sh103
-rw-r--r--coin/provisioning/common/helpers.ps123
-rw-r--r--coin/provisioning/common/jom.ps16
-rw-r--r--coin/provisioning/common/libusb.ps147
-rwxr-xr-xcoin/provisioning/common/linux-removethemall.sh49
-rw-r--r--coin/provisioning/common/msvc2015_update.ps158
-rwxr-xr-xcoin/provisioning/common/version.sh43
-rw-r--r--coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_sdk_linux.sh)49
-rw-r--r--coin/provisioning/qtci-linux-RHEL-6.6-x86_64/version.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh)18
-rw-r--r--coin/provisioning/qtci-linux-RHEL-7.2-x86_64/01-linux-removethemall.sh1
-rw-r--r--coin/provisioning/qtci-linux-RHEL-7.2-x86_64/02-android_linux.sh117
-rw-r--r--coin/provisioning/qtci-linux-RHEL-7.2-x86_64/rhel_packages.sh4
-rw-r--r--coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-suppress-shutdown-indicator.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-systemsetup.sh87
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.sh100
-rw-r--r--coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-apt-update.sh2
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh60
-rw-r--r--coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh5
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh117
-rwxr-xr-x[-rw-r--r--]coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh (renamed from coin/provisioning/qtci-osx-10.11-x86_64/crashreporter.sh)0
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh50
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh102
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/021-commandlinetools.sh111
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh50
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh54
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh53
-rw-r--r--coin/provisioning/qtci-osx-10.11-x86_64/002-disable-screensaver.sh26
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/005-systemsetup.sh118
-rw-r--r--coin/provisioning/qtci-osx-10.11-x86_64/01-macos-removethemall.sh4
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh50
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/020-xcode.sh106
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/021-commandlinetools.sh111
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/025-cmake.sh51
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh55
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/025-postgresql.sh52
-rw-r--r--coin/provisioning/qtci-osx-10.11-x86_64/android.sh102
-rw-r--r--coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps133
-rw-r--r--coin/provisioning/qtci-windows-10-x86/libusb.ps11
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps133
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/mysql.ps1112
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/opengl32_x86.ps163
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/openssl.ps186
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/postgresql.ps184
-rw-r--r--coin/provisioning/qtci-windows-7-x86/libusb.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86/cmake.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86/libusb.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86_64/cmake.ps11
-rwxr-xr-xconfigure2
-rw-r--r--qt.pro4
m---------qtremoteobjects0
m---------qtwebengine0
56 files changed, 2382 insertions, 185 deletions
diff --git a/.gitmodules b/.gitmodules
index 625289c3..9fbe0308 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -11,7 +11,7 @@
status = addon
[submodule "qtdeclarative"]
depends = qtbase
- recommends = qtxmlpatterns
+ recommends = qtsvg qtxmlpatterns
path = qtdeclarative
url = ../qtdeclarative.git
branch = dev
@@ -100,7 +100,7 @@
status = addon
[submodule "qtsensors"]
depends = qtbase
- recommends = qtdeclarative qtsvg
+ recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
branch = dev
@@ -160,7 +160,7 @@
status = addon
[submodule "qtquick1"]
depends = qtscript
- recommends = qtxmlpatterns
+ recommends = qtsvg qtxmlpatterns
path = qtquick1
url = ../qtquick1.git
branch = dev
@@ -237,7 +237,7 @@
status = addon
[submodule "qtwebengine"]
depends = qtquickcontrols qtwebchannel
- recommends = qtlocation
+ recommends = qtlocation qttools
path = qtwebengine
url = ../qtwebengine.git
branch = dev
@@ -296,7 +296,7 @@
path = qtgamepad
url = ../qtgamepad
branch = dev
- status = preview
+ status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
@@ -317,3 +317,9 @@
url = ../qtnetworkauth
branch = dev
status = preview
+[submodule "qtremoteobjects"]
+ depends = qtbase
+ path = qtremoteobjects
+ url = ../qtremoteobjects
+ branch = dev
+ status = preview
diff --git a/coin/platform_configs/default.txt b/coin/platform_configs/default.txt
index be44f77f..70495e76 100644
--- a/coin/platform_configs/default.txt
+++ b/coin/platform_configs/default.txt
@@ -9,16 +9,20 @@ qtci-windows-10-x86 MSVC2015
qtci-windows-10-x86_64 MSVC2015 Packaging DebugAndRelease Release OpenGLDynamic
qtci-windows-10-x86_64 WinRT_10 x86 MSVC2015 Packaging DebugAndRelease Release DisableTests
qtci-windows-10-x86_64 WinRT_10 armv7 MSVC2015 Packaging DebugAndRelease Release DisableTests
+qtci-linux-Ubuntu-16.04-x86_64 GCC NoWidgets ForceDebugInfo DisableTests
+qtci-linux-Ubuntu-16.04-x86_64 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace DisableTests
qtci-linux-Ubuntu-14.04-x86_64 GCC NoWidgets ForceDebugInfo
qtci-linux-Ubuntu-14.04-x86_64 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace
qtci-linux-openSUSE-42.1-x86_64 GCC DeveloperBuild NoPch
-qtci-linux-RHEL-6.6-x86_64 GCC Release
+qtci-linux-RHEL-6.6-x86_64 GCC Release ForceDebugInfo
qtci-linux-RHEL-7.2-x86_64 GCC Packaging Release NoUseGoldLinker
+qtci-macos-10.12-x86_64-8 Clang DebugAndRelease Release DisableTests
+qtci-osx-10.11-x86_64-3 Clang DeveloperBuild Release QtNamespace NoPch DisableTests
qtci-osx-10.10-x86_64 Clang Packaging DebugAndRelease Release
qtci-osx-10.10-x86_64 Clang DeveloperBuild Release QtNamespace NoPch
qtci-osx-10.10-x86_64 Clang Release NoFramework
qtci-osx-10.10-x86_64 IOS_ANY x86_64 Clang Release DisableTests Static
-qtci-linux-RHEL-6.6-x86_64 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
-qtci-linux-Ubuntu-14.04-x86_64 Boot2Qt_Jethro armv7 GCC DisableTests
+qtci-linux-RHEL-7.2-x86_64 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
+qtci-linux-Ubuntu-16.04-x86_64 Boot2Qt_Jethro x86_64 GCC DisableTests
qtci-linux-RHEL-6.6-x86_64 QNX_660 armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-Ubuntu-14.04-x86_64 GCC TestOnly LicenseCheck
diff --git a/coin/platform_configs/qt5.txt b/coin/platform_configs/qt5.txt
index 9429c5bd..76f57f9f 100644
--- a/coin/platform_configs/qt5.txt
+++ b/coin/platform_configs/qt5.txt
@@ -1,7 +1,7 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-10-x86_64 WinRT_10 MSVC2015 Packaging DebugAndRelease Release DisableTests
-qtci-linux-RHEL-6.6-x86_64 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
+qtci-linux-RHEL-7.2-x86_64 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-windows-7-x86 Android_ANY armv7 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-7-x86 Android_ANY x86 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-osx-10.10-x86_64 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2
diff --git a/coin/provisioning/common/03-conan.ps1 b/coin/provisioning/common/03-conan.ps1
index 04be729d..6a4b4ebb 100644
--- a/coin/provisioning/common/03-conan.ps1
+++ b/coin/provisioning/common/03-conan.ps1
@@ -2,7 +2,7 @@
$scriptsPath = "C:\Python27\Scripts"
-& "$scriptsPath\pip.exe" install --upgrade conan==0.16.0
+& "$scriptsPath\pip.exe" install --upgrade conan==0.20.2
[Environment]::SetEnvironmentVariable("CI_CONAN_BUILDINFO_DIR", "C:\Utils\conanbuildinfos", "Machine")
diff --git a/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh b/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh
new file mode 100644
index 00000000..b6072062
--- /dev/null
+++ b/coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh
@@ -0,0 +1,127 @@
+#!/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$
+##
+#############################################################################
+
+# This script receives URLs to a compressed file. It then downloads it,
+# uncompresses it and installs it by default
+# to /Applications/. This can be overridden by a target parameter.
+
+# shellcheck source=try_catch.sh
+source "${BASH_SOURCE%/*}/try_catch.sh"
+# shellcheck source=DownloadURL.sh
+source "${BASH_SOURCE%/*}/DownloadURL.sh"
+
+ExceptionCreateTmpFile=100
+ExceptionCreateTmpDirectory=101
+ExceptionUncompress=102
+ExceptionMoveApp=103
+ExceptionDeleteTmpFile=104
+ExceptionRemoveTmpDirectory=105
+ExceptionUnknownFormat=106
+
+
+function InstallAppFromCompressedFileFromURL {
+ url=$1
+ url_alt=$2
+ expectedSha1=$3
+ appPrefix=$4
+ target=$5
+
+ if [ "" == "$target" ]; then
+ target="/Applications/"
+ fi
+
+ try
+ (
+ basefilename=${url##*/}
+ extension=${basefilename##*.}
+ filename=${basefilename%.*}
+ if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
+ extension="tar.gz"
+ fi
+
+ echo "Extension for file: $extension"
+ echo "Creating temporary file and directory"
+ targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile
+ targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
+ DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
+ echo "Uncompress $targetFile"
+ case $extension in
+ "tar.gz")
+ tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
+ ;;
+ "zip")
+ unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
+ ;;
+ *)
+ throw $ExceptionUnknownFormat
+ ;;
+ esac
+ echo "Moving app to '$target'"
+ sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp
+ echo "Removing file '$targetFile'"
+ rm "$targetFile" || throw $ExceptionDeleteTmpFile
+ echo "Removing directory '$targetDirectory'"
+ rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
+ )
+
+ catch || {
+ case $ex_code in
+ $ExceptionCreateTmpFile)
+ echo "Failed to create temporary file"
+ exit 1;
+ ;;
+ $ExceptionUncompress)
+ echo "Failed extracting compressed file."
+ exit 1;
+ ;;
+ $ExceptionMoveApp)
+ echo "Failed moving app to '$target'."
+ exit 1;
+ ;;
+ $ExceptionDeleteTmpFile)
+ echo "Failed deleting temporary file."
+ exit 1;
+ ;;
+ $ExceptionRemoveTmpDirectory)
+ echo "Failed deleting temporary file."
+ exit 1;
+ ;;
+ $ExceptionUnknownFormat)
+ echo "Unknown file format."
+ exit 1;
+ ;;
+ esac
+ }
+}
diff --git a/coin/provisioning/common/InstallPKGFromURL.sh b/coin/provisioning/common/InstallPKGFromURL.sh
new file mode 100644
index 00000000..07f23d62
--- /dev/null
+++ b/coin/provisioning/common/InstallPKGFromURL.sh
@@ -0,0 +1,103 @@
+#!/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$
+##
+#############################################################################
+
+# shellcheck source=try_catch.sh
+source "${BASH_SOURCE%/*}/try_catch.sh"
+
+ExceptionCreateTmpFile=100
+ExceptionDownloadPrimaryUrl=101
+ExceptionDownloadAltUrl=102
+ExceptionSHA1=103
+ExceptionInstallerPKG=104
+ExceptionDeleteTmpFile=105
+
+
+function InstallPKGFromURL {
+ url=$1
+ url_alt=$2
+ expectedSha1=$3
+ targetDirectory=$4
+
+ try
+ (
+ echo "Creating temporary file"
+ targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") || trow $ExceptionCreateTmpFile
+ try
+ (
+ echo "Downloading PKG from primary URL '$url'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
+ )
+ catch || {
+ case $ex_code in
+ $ExceptionDownloadPrimaryUrl)
+ echo "Failed to download '$url' multiple times"
+ echo "Downloading PKG from alternative URL '$url_alt'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
+ ;;
+ esac
+ }
+ echo "Checking SHA1 on PKG '$targetFile'"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+ echo "Run installer on PKG"
+ sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG
+ echo "Removing file '$targetFile'"
+ rm "$targetFile" || throw $ExceptionDeleteTmpFile
+ )
+
+ catch || {
+ case $ex_code in
+ $ExceptionCreateTmpFile)
+ echo "Failed to create temporary file"
+ exit 1;
+ ;;
+ $ExceptionDownloadAltUrl)
+ echo "Failed downloading PKG from primary and alternative URLs"
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check sha1sum."
+ exit 1;
+ ;;
+ $ExceptionInstallerPKG)
+ echo "Failed running installer on PKG."
+ exit 1;
+ ;;
+ $ExceptionDeleteTmpFile)
+ echo "Failed deleting temporary file."
+ exit 1;
+ ;;
+ esac
+ }
+}
diff --git a/coin/provisioning/common/helpers.ps1 b/coin/provisioning/common/helpers.ps1
index 0e684452..191be290 100644
--- a/coin/provisioning/common/helpers.ps1
+++ b/coin/provisioning/common/helpers.ps1
@@ -15,6 +15,29 @@ function Verify-Checksum
}
}
+function Extract-7Zip
+{
+ Param (
+ [string]$Source,
+ [string]$Destination
+ )
+ echo "Extracting '$Source' to '$Destination'..."
+
+ if ((Get-Command "7z.exe" -ErrorAction SilentlyContinue) -eq $null) {
+ $zipExe = join-path ${env:ProgramFiles(x86)} '7-zip\7z.exe'
+ if (-not (test-path $zipExe)) {
+ $zipExe = join-path ${env:ProgramW6432} '7-zip\7z.exe'
+ if (-not (test-path $zipExe)) {
+ throw "Could not find 7-zip."
+ }
+ }
+ } else {
+ $zipExe = "7z.exe"
+ }
+
+ & $zipExe x $Source "-o$Destination" -y
+}
+
function Extract-Zip
{
Param (
diff --git a/coin/provisioning/common/jom.ps1 b/coin/provisioning/common/jom.ps1
index ef012b64..c1e2cbf7 100644
--- a/coin/provisioning/common/jom.ps1
+++ b/coin/provisioning/common/jom.ps1
@@ -1,9 +1,9 @@
. "$PSScriptRoot\helpers.ps1"
-$zip = "c:\users\qt\downloads\jom_1_1_0.zip"
+$zip = "c:\users\qt\downloads\jom_1_1_2.zip"
-Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/jom_1_1_0.zip -OutFile $zip
-Verify-Checksum $zip "C4149FE706B25738B4C4E54C73E180B9CAB55832"
+Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/jom_1_1_2.zip -OutFile $zip
+Verify-Checksum $zip "80EE5678E714DE99DDAF5F7593AB04DB1C7928E4"
Extract-Zip $zip C:\Utils\Jom
[Environment]::SetEnvironmentVariable("CI_JOM_PATH", "C:\Utils\Jom", "Machine")
diff --git a/coin/provisioning/common/libusb.ps1 b/coin/provisioning/common/libusb.ps1
new file mode 100644
index 00000000..ed575886
--- /dev/null
+++ b/coin/provisioning/common/libusb.ps1
@@ -0,0 +1,47 @@
+#############################################################################
+#
+# 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$
+#
+############################################################################
+
+# lisbusb-1.0 is needed by tqtc-boot2qt/qdb
+
+. "$PSScriptRoot\helpers.ps1"
+
+$archive = "C:\users\qt\downloads\libusb-1.0.21.7z"
+$libusb_location = "C:\Utils\libusb-1.0"
+
+Download https://vorboss.dl.sourceforge.net/project/libusb/libusb-1.0/libusb-1.0.21/libusb-1.0.21.7z http://ci-files01-hki.ci.local/input/libusb-1.0/libusb-1.0.21.7z $archive
+Verify-Checksum $archive "37c8884a0ddca97d492b8ef3e08970ae3ba20653"
+
+Extract-7Zip $archive $libusb_location
+
+# Tell tqtc-boot2qt/qdb build system where to find libusb
+[Environment]::SetEnvironmentVariable("LIBUSB_PATH", $libusb_location, "Machine")
diff --git a/coin/provisioning/common/linux-removethemall.sh b/coin/provisioning/common/linux-removethemall.sh
new file mode 100755
index 00000000..4386ec74
--- /dev/null
+++ b/coin/provisioning/common/linux-removethemall.sh
@@ -0,0 +1,49 @@
+#!/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 removes preinstalled sw.
+# NOTE! Make sure that ALL software which are removed here have provision script under platrom folders which calls this script
+
+function RemoveDir {
+ targetFolder=$1
+
+ if [ -d "$targetFolder" ]; then
+ echo "Removing existing $targetFolder..."
+ sudo rm -fr "$targetFolder"
+ fi
+}
+
+# Android
+RemoveDir /opt/android
diff --git a/coin/provisioning/common/msvc2015_update.ps1 b/coin/provisioning/common/msvc2015_update.ps1
new file mode 100644
index 00000000..618c87c4
--- /dev/null
+++ b/coin/provisioning/common/msvc2015_update.ps1
@@ -0,0 +1,58 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+. "$PSScriptRoot\helpers.ps1"
+
+# Install Visual Studio $version with $update_version
+# Original download page: https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs
+$version = "2015"
+$update_version = "3"
+
+# Only way to install specific Visual studio release is to use feed.xml.
+# Visual Studio $version setup will use the feed.xml that was available when $update_version released -> 'https://msdn.microsoft.com/en-us/library/mt653628.aspx'
+# These parameters will install Visual Studio Enterprise Update $update_version (the original Update $update_version without any further Update $update_version-era updates)
+$parameters = "/OverrideFeedURI http://download.microsoft.com/download/6/B/B/6BBD3561-D764-4F39-AB8E-05356A122545/20160628.2/enu/feed.xml"
+
+$msvc_web_installer = "vs" + $version + "_" + $update_version
+$package = "C:\Windows\temp\$msvc_web_installer.exe"
+$url_cache = "http://ci-files01-hki.ci.local/input/windows/$msvc_web_installer.exe"
+$url_official = "https://go.microsoft.com/fwlink/?LinkId=691129"
+$sha1 = "68abf90424aff604a04d6c61fb52adcd2cab2266"
+
+echo "Fetching Visual Studio $version update $update_version..."
+Download $url_official $url_cache $package
+Verify-Checksum $package $sha1
+echo "Installing Visual studio $version update $update_version..."
+cmd /c "$package $parameters /norestart /Quiet"
+remove-item $package
+
+echo "Visual Studio = $version update $update_version" >> ~\versions.txt
diff --git a/coin/provisioning/common/version.sh b/coin/provisioning/common/version.sh
new file mode 100755
index 00000000..e7662e1e
--- /dev/null
+++ b/coin/provisioning/common/version.sh
@@ -0,0 +1,43 @@
+#!/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2016 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the test suite 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 will print all installed software to provision log.
+# Script needs to be named so that it will be ran at last during provisioning
+
+# Print all build machines versions to provision log
+echo "*********************************************"
+echo "***** SW VERSIONS *****"
+cat ~/versions.txt
+echo "*********************************************"
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_sdk_linux.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh
index a03a1660..6bb7a37e 100644
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_sdk_linux.sh
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh
@@ -48,23 +48,24 @@ targetFolder="/opt/android"
baseUrl="http://ci-files01-hki.ci.local/input/android"
# SDK
-sdkVersion="android-sdk_r24.4.1-linux.tgz"
+sdkPackage="android-sdk_r24.4.1-linux.tgz"
sdkBuildToolsVersion="23.0.3"
sdkApiLevel="android-21"
-sdkUrl="$baseUrl/$sdkVersion"
+sdkUrl="$baseUrl/$sdkPackage"
sdkSha1="725bb360f0f7d04eaccff5a2d57abdd49061326d"
-sdkTargetFile="$targetFolder/$sdkVersion"
+sdkTargetFile="$targetFolder/$sdkPackage"
sdkExtract="tar -C $targetFolder -zxf $sdkTargetFile"
sdkFolderName="android-sdk-linux"
sdkName="sdk"
# NDK
-ndkVersion="android-ndk-r10e-linux-x86_64.zip"
-ndkUrl="$baseUrl/$ndkVersion"
+ndkVersion="r10e"
+ndkPackage="android-ndk-$ndkVersion-linux-x86_64.zip"
+ndkUrl="$baseUrl/$ndkPackage"
ndkSha1="f692681b007071103277f6edc6f91cb5c5494a32"
-ndkTargetFile="$targetFolder/$ndkVersion"
+ndkTargetFile="$targetFolder/$ndkPackage"
ndkExtract="unzip $ndkTargetFile -d $targetFolder"
-ndkFolderName="android-ndk-r10e"
+ndkFolderName="android-ndk-$ndkVersion"
ndkName="ndk"
function InstallAndroidPackage {
@@ -77,25 +78,37 @@ function InstallAndroidPackage {
folderName=$7
name=$8
- sudo wget --tries=5 --waitretry=5 --output-document=$targetFile $url || echo "Failed to download '$url' multiple times"
+ sudo wget --tries=5 --waitretry=5 --output-document="$targetFile" "$url" || echo "Failed to download '$url' multiple times"
echo "$sha1 $targetFile" | sha1sum --check || echo "Failed to check sha1sum"
- sudo chmod 755 $targetFile
+ sudo chmod 755 "$targetFile"
sudo $extract || echo "Failed to extract $url"
- sudo chown -R qt:users $targetFolder/$folderName
- sudo mv $targetFolder/$folderName $targetFolder/$name || echo "Failed to rename $name"
- sudo rm -fr $targetFolder/$version
+ sudo chown -R qt:users "$targetFolder"/"$folderName"
+ sudo mv "$targetFolder"/"$folderName" "$targetFolder"/"$name" || echo "Failed to rename $name"
+ sudo rm -fr "$targetFolder"/"$version"
}
-sudo mkdir $targetFolder
+sudo mkdir "$targetFolder"
# Install Android SDK
-echo "Installing Android SDK version $sdkVersion..."
-InstallAndroidPackage $targetFolder $sdkVersion $sdkUrl $sdkSha1 $sdkTargetFile "$sdkExtract" $sdkFolderName $sdkName
+echo "Installing Android SDK version $sdkPackage..."
+InstallAndroidPackage "$targetFolder" $sdkPackage $sdkUrl $sdkSha1 $sdkTargetFile "$sdkExtract" $sdkFolderName $sdkName
# Install Android NDK
-echo "Installing Android NDK version $ndkVersion..."
-InstallAndroidPackage $targetFolder $ndkVersion $ndkUrl $ndkSha1 $ndkTargetFile "$ndkExtract" $ndkFolderName $ndkName
+echo "Installing Android NDK version $ndkPackage..."
+InstallAndroidPackage "$targetFolder" $ndkPackage $ndkUrl $ndkSha1 $ndkTargetFile "$ndkExtract" $ndkFolderName $ndkName
# run update for Android SDK and install SDK API version 21, latest SDK tools, platform-tools and build-tools
echo "Running Android SDK update for API version 21, SDK-tools, platform-tools and build-tools-$sdkBuildToolsVersion..."
-echo "y" |$targetFolder/sdk/tools/android update sdk --no-ui --all --filter $sdkApiLevel,tools,platform-tools,build-tools-$sdkBuildToolsVersion || echo "Failed to run update"
+echo "y" |"$targetFolder"/sdk/tools/android update sdk --no-ui --all --filter $sdkApiLevel,tools,platform-tools,build-tools-$sdkBuildToolsVersion || echo "Failed to run update"
+echo 'export ANDROID_API_VERSION=android-21' >> ~/.bashrc
+
+# Storage version information to ~/versions.txt, which is used to print version information to provision log.
+echo "***** Android SDK *****" >> ~/versions.txt
+echo "Android SDK Api Level = $sdkApiLevel" >> ~/versions.txt
+echo "Android SDK Build Tools Version = $sdkBuildToolsVersion" >> ~/versions.txt
+platformTools="$(grep Pkg.Revision "$targetFolder"/sdk/platform-tools/source.properties | cut -c14-)"
+echo "Android Platform Tools = $platformTools" >> ~/versions.txt
+sdkTools="$(grep Pkg.Revision "$targetFolder"/sdk/tools/source.properties | cut -c14-)"
+echo "Android SDK Tools = $sdkTools" >> ~/versions.txt
+echo "***** Android NDK *****" >> ~/versions.txt
+echo "Android NDK Version = $ndkVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/version.sh
index 30a6caad..5ef5f0e9 100644
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/version.sh
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/env bash
#############################################################################
##
@@ -33,14 +33,12 @@
##
#############################################################################
-sudo apt-get -y build-dep qt5-default
+# This script needs to be called last during provisioning so that the software information will show up last in provision log.
-# qtbase
-sudo apt-get -y install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev
-sudo apt-get -y install libxcb-xinerama0-dev libdbus-1-dev libatspi2.0-dev
+# Storage installed RPM packages information
+echo "*********************************************" >> ~/versions.txt
+echo "***** All installed RPM packages *****" >> ~/versions.txt
+rpm -q -a | sort >> ~/versions.txt
+echo "*********************************************" >> ~/versions.txt
-# qtmultimedia
-sudo apt-get -y install libasound2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
-
-# qtwebengine
-sudo apt-get -y install libssl-dev libxcursor-dev libxcomposite-dev libxdamage-dev libxrandr-dev libfontconfig1-dev libcap-dev libxtst-dev libpulse-dev libudev-dev libpci-dev libnss3-dev libasound2-dev libxss-dev libegl1-mesa-dev gperf bison
+$(dirname $0)/../common/version.sh
diff --git a/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/01-linux-removethemall.sh b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/01-linux-removethemall.sh
new file mode 100644
index 00000000..38194671
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/01-linux-removethemall.sh
@@ -0,0 +1 @@
+"${BASH_SOURCE%/*}/../common/linux-removethemall.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/02-android_linux.sh b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/02-android_linux.sh
new file mode 100644
index 00000000..87569d72
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/02-android_linux.sh
@@ -0,0 +1,117 @@
+#!/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 install Android sdk and ndk.
+
+# It also runs update for SDK API level 21, latest SDK tools, latest platform-tools and build-tools version 23.0.3
+
+# Build-tools version 23.0.3 is the latest usable version for Red Hat 6. Newer version of build-tools, version 24.x.x, requires GLIBC_2.14, which is not available in Red Hat 6.
+
+# Android 16 is the minimum requirement for Qt 5.7 applications, but we need something more recent than that for building Qt itself.
+# E.g The Bluetooth features that require Android 21 will disable themselves dynamically when running on an Android 16 device.
+# That's why we need to use Andoid-21 API version in Qt 5.9.
+
+set -e
+targetFolder="/opt/android"
+baseUrl="http://ci-files01-hki.ci.local/input/android"
+
+# SDK
+sdkPackage="android-sdk_r24.4.1-linux.tgz"
+sdkBuildToolsVersion="23.0.3"
+sdkApiLevel="android-21"
+sdkUrl="$baseUrl/$sdkPackage"
+sdkSha1="725bb360f0f7d04eaccff5a2d57abdd49061326d"
+sdkTargetFile="$targetFolder/$sdkPackage"
+sdkExtract="tar -C $targetFolder -zxf $sdkTargetFile"
+sdkFolderName="android-sdk-linux"
+sdkName="sdk"
+
+# NDK
+ndkVersion="r10e"
+ndkPackage="android-ndk-$ndkVersion-linux-x86_64.zip"
+ndkUrl="$baseUrl/$ndkPackage"
+ndkSha1="f692681b007071103277f6edc6f91cb5c5494a32"
+ndkTargetFile="$targetFolder/$ndkPackage"
+ndkExtract="unzip $ndkTargetFile -d $targetFolder"
+ndkFolderName="android-ndk-$ndkVersion"
+ndkName="ndk"
+
+function InstallAndroidPackage {
+ targetFolder=$1
+ version=$2
+ url=$3
+ sha1=$4
+ targetFile=$5
+ extract=$6
+ folderName=$7
+ name=$8
+
+ sudo wget --tries=5 --waitretry=5 --output-document="$targetFile" "$url" || echo "Failed to download '$url' multiple times"
+ echo "$sha1 $targetFile" | sha1sum --check || echo "Failed to check sha1sum"
+ sudo chmod 755 "$targetFile"
+ sudo $extract || echo "Failed to extract $url"
+ sudo chown -R qt:users "$targetFolder"/"$folderName"
+ sudo mv "$targetFolder"/"$folderName" "$targetFolder"/"$name" || echo "Failed to rename $name"
+ sudo rm -fr "$targetFolder"/"$version"
+}
+
+sudo mkdir "$targetFolder"
+
+# Install Android SDK
+echo "Installing Android SDK version $sdkPackage..."
+InstallAndroidPackage "$targetFolder" $sdkPackage $sdkUrl $sdkSha1 $sdkTargetFile "$sdkExtract" $sdkFolderName $sdkName
+
+# Install Android NDK
+echo "Installing Android NDK version $ndkPackage..."
+InstallAndroidPackage "$targetFolder" $ndkPackage $ndkUrl $ndkSha1 $ndkTargetFile "$ndkExtract" $ndkFolderName $ndkName
+
+# run update for Android SDK and install SDK API version 18, latest SDK tools, platform-tools and build-tools
+echo "Running Android SDK update for API version 18, SDK-tools, platform-tools and build-tools-$sdkBuildToolsVersion..."
+echo "y" |"$targetFolder"/sdk/tools/android update sdk --no-ui --all --filter $sdkApiLevel,tools,platform-tools,build-tools-$sdkBuildToolsVersion || echo "Failed to run update"
+
+# For Qt 5.6, we by default require API levels 10, 11, 16 and 18, but we can override this by setting ANDROID_API_VERSION=android-18
+# From Qt 5.7 forward, if android-16 is not installed, Qt will automatically use more recent one.
+# echo 'export ANDROID_API_VERSION=$sdkApiLevel' >> ~/.bashrc
+
+# Storage version information to ~/versions.txt, which is used to print version information to provision log.
+echo "***** Android SDK *****" >> ~/versions.txt
+echo "Android SDK Api Level = $sdkApiLevel" >> ~/versions.txt
+echo "Android SDK Build Tools Version = $sdkBuildToolsVersion" >> ~/versions.txt
+platformTools="$(grep Pkg.Revision "$targetFolder"/sdk/platform-tools/source.properties | cut -c14-)"
+echo "Android Platform Tools = $platformTools" >> ~/versions.txt
+sdkTools="$(grep Pkg.Revision "$targetFolder"/sdk/tools/source.properties | cut -c14-)"
+echo "Android SDK Tools = $sdkTools" >> ~/versions.txt
+echo "***** Android NDK *****" >> ~/versions.txt
+echo "Android NDK Version = $ndkVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/rhel_packages.sh b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/rhel_packages.sh
index c322bcbf..daf3efab 100644
--- a/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/rhel_packages.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/rhel_packages.sh
@@ -1,9 +1,11 @@
# gstreamer 1 for QtMultimedia
# gtk3 style for QtGui/QStyle
# libusb1 for tqtc-boot2qt/qdb
+# speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux
sudo yum install -y \
gstreamer1-devel gstreamer1-plugins-base-devel \
gtk3-devel \
- libusb1-devel
+ libusb1-devel \
+ speech-dispatcher-devel
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-suppress-shutdown-indicator.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-suppress-shutdown-indicator.sh
deleted file mode 100644
index f11263b7..00000000
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-suppress-shutdown-indicator.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/usr/bin/env sh
-
-# Disable questions on shutdown.
-gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true
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/001-systemsetup.sh
new file mode 100755
index 00000000..06f44049
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/001-systemsetup.sh
@@ -0,0 +1,87 @@
+#!/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$
+##
+#############################################################################
+
+# This script modifies system settings for automated use
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+NTS_IP=10.212.2.0
+
+ExceptionGsettings1=100
+ExceptionGsettings2=101
+ExceptionGsettings3=102
+ExceptionNTS=103
+ExceptionDISPLAY=104
+
+try
+(
+ 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."
+ gsettings set org.gnome.desktop.screensaver lock-enabled false || throw $ExceptionGsettings2
+ echo "Disable questions on shutdown."
+ gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true || throw $ExceptionGsettings3
+
+ 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
+ echo "Set DISPLAY"
+ echo 'export DISPLAY=":0"' >> ~/.bashrc || throw $ExceptionDISPLAY
+)
+catch || {
+ case $ex_code in
+ $ExceptionGsettings1)
+ echo "Failed to disable black screen."
+ exit 1;
+ ;;
+ $ExceptionGsettings2)
+ echo "Failed to prevent screen lock."
+ exit 1;
+ ;;
+ $ExceptionGsettings3)
+ echo "Failed to disable questions on shutdown."
+ exit 1;
+ ;;
+ $ExceptionNTS)
+ echo "Failed to set network teset server address into /etc/hosts."
+ exit 1;
+ ;;
+ $ExceptionDISPLAY)
+ echo "Failed to set DISPLAY into ~/.bashrc."
+ 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/002-apt.sh
new file mode 100755
index 00000000..b727659f
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.sh
@@ -0,0 +1,100 @@
+#!/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$
+##
+#############################################################################
+
+# Install required packages with APT
+
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionAPTUpdate=100
+ExceptionAPT=101
+ExceptionSED=102
+
+try
+(
+ echo "Disabling auto update"
+ sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic || throw $ExceptionSED
+ echo "Running update for apt"
+ sudo apt 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 -q -y install git || throw $ExceptionAPT
+ # 7zip is a needed decompressing tool
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install p7zip || throw $ExceptionAPT
+ # libssl-dev provides headers for OpenSSL
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libssl-dev || throw $ExceptionAPT
+ # Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install "^libxcb.*" libx11-xcb-dev libglu1-mesa-dev libxrender-dev libxi-dev || throw $ExceptionAPT
+ # Enable linking to system dbus
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libdbus-1-dev || throw $ExceptionAPT
+ # Needed libraries for WebEngine
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libudev-dev libegl1-mesa-dev libfontconfig1-dev libxss-dev || throw $ExceptionAPT
+ # Common event loop handling
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libglib2.0-dev || throw $ExceptionAPT
+ # MySQL support
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libmysqlclient-dev || throw $ExceptionAPT
+ # PostgreSQL support
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libpq-dev || throw $ExceptionAPT
+ # SQLite support
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libsqlite3-dev || throw $ExceptionAPT
+ # ODBC support
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install unixodbc-dev || throw $ExceptionAPT
+ # Support for FreeType font engine
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libfreetype6-dev || throw $ExceptionAPT
+ # Enable the usage of system jpeg libraries
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libjpeg-dev || throw $ExceptionAPT
+ # Enable support for printer driver
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libcups2-dev || throw $ExceptionAPT
+ # Install libraries needed for QtMultimedia to be able to support all plugins
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libasound2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev || throw $ExceptionAPT
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install libgstreamer-plugins-good1.0-dev libgstreamer-plugins-bad1.0-dev || throw $ExceptionAPT
+)
+catch || {
+ case $ex_code in
+ $ExceptionAPTUpdate)
+ echo "Failed to run APT update."
+ exit 1;
+ ;;
+ $ExceptionAPT)
+ echo "Failed to install package."
+ exit 1;
+ ;;
+ $ExceptionSED)
+ echo "Failed to disable auto update."
+ exit 1;
+ ;;
+ esac
+}
+
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-apt-update.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-apt-update.sh
deleted file mode 100644
index 2f7e2e47..00000000
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-apt-update.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/usr/bin/env bash
-sudo apt-get update
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/003-qemu.sh
new file mode 100755
index 00000000..bd71bbe2
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh
@@ -0,0 +1,60 @@
+#!/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 -e
+# build latest qemu to usermode
+sudo apt-get -y install automake autoconf libtool
+
+tempDir=$(mktemp -d) || echo "Failed to create temporary directory"
+git clone git://git.qemu.org/qemu.git "$tempDir"
+cd "$tempDir"
+
+#latest commit from the master proven to work
+git checkout c7f1cf01b8245762ca5864e835d84f6677ae8b1f
+git submodule update --init pixman
+./configure --target-list=arm-linux-user --static
+make
+sudo make install
+rm -rf "$tempDir"
+
+# Enable binfmt support
+sudo apt-get -y install binfmt-support
+
+# Install qemu binfmt
+sudo update-binfmts --package qemu-arm --install arm \
+/usr/local/bin/qemu-arm \
+--magic \
+"\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00" \
+--mask \
+"\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff"
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh b/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh
new file mode 100644
index 00000000..0fbe7628
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# Read .bashrc if exist
+printf -- "# Get the aliases and functions\nif [ -f ~/.bashrc ]; then\n . ~/.bashrc\nfi\n" >> ~/.bash_profile
+
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh b/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh
new file mode 100755
index 00000000..000c8c0a
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh
@@ -0,0 +1,117 @@
+#!/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$
+##
+#############################################################################
+
+# This script modified system settings for automated use
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+VNCPassword=qt
+NTS_IP=10.212.2.0
+
+ExceptionDisableScreensaver=100
+ExceptionSetInitialDelay=101
+ExceptionSetDelay=102
+ExceptionVNC=103
+ExceptionNTS=104
+
+try
+(
+ echo "Disable Screensaver"
+ mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
+ (
+ cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<plist version="1.0">
+ <dict>
+ <key>Label</key>
+ <string>org.qt.io.screensaver_disable</string>
+ <key>ProgramArguments</key>
+ <array>
+ <string>defaults</string>
+ <string>-currentHost</string>
+ <string>write</string>
+ <string>com.apple.screensaver</string>
+ <string>idleTime</string>
+ <string>0</string>
+ </array>
+ <key>RunAtLoad</key>
+ <true/>
+ <key>KeepAlive</key>
+ <false/>
+ </dict>
+</plist>
+EOT
+ ) || throw $ExceptionDisableScreensaver
+
+ echo "Set keyboard type rates and delays"
+ # normal minimum is 15 (225 ms)
+ defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay
+ # normal minimum is 2 (30 ms)
+ defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay
+
+ echo "Enable remote desktop sharing"
+ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC
+
+ 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
+
+)
+catch || {
+ case $ex_code in
+ $ExceptionDisableScreensaver)
+ echo "Failed to disable screensaver."
+ exit 1;
+ ;;
+ $ExceptionSetInitialDelay)
+ echo "Failed to set initial delay of keyboard."
+ exit 1;
+ ;;
+ $ExceptionSetDelay)
+ echo "Failed to set delay of keyboard."
+ exit 1;
+ ;;
+ $ExceptionVNC)
+ echo "Failed to enable VNC."
+ exit 1;
+ ;;
+ $ExceptionNTS)
+ echo "Failed to set NTS."
+ exit 1;
+ ;;
+ esac
+}
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/crashreporter.sh b/coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh
index ba8dbdd3..ba8dbdd3 100644..100755
--- a/coin/provisioning/qtci-osx-10.11-x86_64/crashreporter.sh
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
new file mode 100755
index 00000000..eca6858c
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
@@ -0,0 +1,50 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs XZ-Utils
+
+# XZ-Utils are needed for uncompressing xz-compressed files
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/InstallPKGFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/XZ.pkg"
+AltUrl="http://sourceforge.net/projects/macpkg/files/XZ/5.0.7/XZ.pkg"
+SHA1="f0c1f82ebcffe0bd4b8b57b6a77805db56b2de67"
+DestDir="/"
+
+InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
+
+echo "XZ = 5.0.7" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh b/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh
new file mode 100755
index 00000000..260f18aa
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh
@@ -0,0 +1,102 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs Xcode
+# Prerequisites: Have Xcode prefetched to local cache as xz compressed.
+# This can be achieved by fetching Xcode_8.xip from Apple Store.
+# Uncompress it with 'xar -xf Xcode_8.xip'
+# Then get https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py
+# with which you can run 'python parse_pbzx2.py Content'.
+# This will give you a file called "Content.part00.cpio.xz" that
+# can be renamed to Xcode_8.xz for this script.
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadUrl=100
+ExceptionSHA1=101
+ExceptionUnXZ=102
+ExceptionCPIO=103
+ExceptionDelete=104
+
+
+url=http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/Xcode_8.2.1.xz
+targetFile=/tmp/Xcode_8.2.1.xz
+expectedSha1=a68e8a4446f77e781b1ce123125263862f2607a3
+
+try
+(
+ echo "Downloading Xcode from primary URL '$url'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadUrl
+
+ echo "Checking SHA1 on $targetFile"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+
+ echo "Uncompressing '$targetFile'"
+ xz -d "$targetFile" || throw $ExceptionUnXZ
+
+ echo "Unarchiving '${targetFile%.*}'"
+ (cd /Applications/ && sudo cpio -dmiI "${targetFile%.*}") || throw $ExceptionCPIO
+
+ echo "Deleting '${targetFile%.*}'"
+ rm "${targetFile%.*}" || throw $ExceptionDelete
+
+ echo "XCode = 8.2.1" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionDownloadUrl)
+ echo "Failed to download Xcode."
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check SHA1."
+ exit 1;
+ ;;
+ $ExceptionUnXZ)
+ echo "Failed to uncompress .xz"
+ exit 1;
+ ;;
+ $ExceptionCPIO)
+ echo "Failed to unarchive .cpio."
+ exit 1;
+ ;;
+ $ExceptionDelete)
+ echo "Failed to delete temporary file."
+ exit 1;
+ ;;
+
+ esac
+}
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/021-commandlinetools.sh b/coin/provisioning/qtci-macos-10.12-x86_64/021-commandlinetools.sh
new file mode 100755
index 00000000..e90904fd
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/021-commandlinetools.sh
@@ -0,0 +1,111 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs Command Line Tools for Xcode
+# Prerequisite: Get the .dmg file from Apple Store beforehand to local cache
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadUrl=100
+ExceptionSHA1=101
+ExceptionAttachImage=102
+ExceptionInstall=103
+ExceptionDetachImage=104
+ExceptionRemoveTmpFile=105
+ExceptionAcceptLicense=106
+
+
+url=http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/Command_Line_Tools_macOS_10.12_for_Xcode_8.2.dmg
+targetFile=/tmp/Command_Line_Tools_macOS_10.12_for_Xcode_8.2.dmg
+expectedSha1=0a55c5682c18879cfff7761619adb769ea396a79
+
+try
+(
+ echo "Downloading Command Line Tools from URL '$url'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadUrl
+
+ echo "Checking SHA1 on '$targetFile'"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+
+ echo Mounting DMG
+ hdiutil attach "$targetFile" || throw $ExceptionAttachImage
+
+ echo Installing Command Line Tools
+ (cd /Volumes/Command\ Line\ Developer\ Tools/ && sudo installer -pkg "Command Line Tools (macOS Sierra version 10.12).pkg" -target /) || throw $ExceptionInstall
+
+ hdiutil detach /dev/disk1s1 || throw $ExceptionDetachImage
+
+ echo "Removing temporary file '$targetFile'"
+ rm "$targetFile" || throw $ExceptionRemoveTmpFile
+
+ echo "Accept license"
+ sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
+
+ echo "Command Line Tools = 8.2" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionDownloadUrl)
+ echo "Failed to download Command Line Tools from form URL '$url'."
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check SHA1."
+ exit 1;
+ ;;
+ $ExceptionAttachImage)
+ echo "Failed to attach image."
+ exit 1;
+ ;;
+ $ExceptionInstall)
+ echo "Failed to install Command Line Tools."
+ exit 1;
+ ;;
+ $ExceptionDetachImage)
+ echo "Failed to detach image."
+ exit 1;
+ ;;
+ $ExceptionRemoveTmpFile)
+ echo "Failed to remove temporary file."
+ exit 1;
+ ;;
+ $ExceptionAcceptLicense)
+ echo "Failed to accept license."
+ exit 1;
+ ;;
+
+ esac
+}
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh
new file mode 100755
index 00000000..9f6df8cf
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh
@@ -0,0 +1,50 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs CMake
+
+# CMake is needed for autotests that verify that Qt can be built with CMake
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/cmake-3.6.2-Darwin-x86_64.tar.gz"
+AltUrl="https://cmake.org/files/v3.6/cmake-3.6.2-Linux-x86_64.tar.gz"
+SHA1="13835afa3aea939e07a7ecccedcc041dd8c3a86e"
+appPrefix="cmake-3.6.2-Darwin-x86_64"
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
+
+echo "CMake = 3.6.2" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh
new file mode 100755
index 00000000..54389916
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh
@@ -0,0 +1,54 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs MySQL
+
+# MySQL is needed for Qt to be able to support MySQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+AltUrl="https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+SHA1="07949bd42f350b0504a1536b8830b809b4a34fca"
+appPrefix=""
+targetDir="/opt/mysql57/"
+
+sudo mkdir -p "/opt"
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" "$targetDir"
+
+echo "export MYSQLBINPATH=/opt/mysql57/bin" >> ~/.bashrc
+echo "MySQL = 5.7.15" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh
new file mode 100755
index 00000000..e699933d
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh
@@ -0,0 +1,53 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs PostgreSQL
+
+# PostgreSQL is needed for Qt to be able to support PostgreSQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+psqlVersion="9.6.0"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/Postgres-$psqlVersion.zip"
+AltUrl="https://github.com/PostgresApp/PostgresApp/releases/download/$psqlVersion/Postgres-$psqlVersion.zip"
+SHA1="5078e44663787006ca55fa3b5e2be598bed82eb5"
+appPrefix=""
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
+
+echo "export POSTGRESQLBINPATH=/Applications/Postgres.app/Contents/Versions/9.6/bin" >> ~/.bashrc
+echo "PostgreSQL = $psqlVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/002-disable-screensaver.sh b/coin/provisioning/qtci-osx-10.11-x86_64/002-disable-screensaver.sh
deleted file mode 100644
index 44df94e7..00000000
--- a/coin/provisioning/qtci-osx-10.11-x86_64/002-disable-screensaver.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/sh
-
-mkdir -p $HOME/Library/LaunchAgents
-cat >$HOME/Library/LaunchAgents/no-screensaver.plist <<EOT
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
- <dict>
- <key>Label</key>
- <string>org.qt.io.screensaver_disable</string>
- <key>ProgramArguments</key>
- <array>
- <string>defaults</string>
- <string>-currentHost</string>
- <string>write</string>
- <string>com.apple.screensaver</string>
- <string>idleTime</string>
- <string>0</string>
- </array>
- <key>RunAtLoad</key>
- <true/>
- <key>KeepAlive</key>
- <false/>
- </dict>
-</plist>
-EOT
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/005-systemsetup.sh b/coin/provisioning/qtci-osx-10.11-x86_64/005-systemsetup.sh
new file mode 100755
index 00000000..399ae47e
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/005-systemsetup.sh
@@ -0,0 +1,118 @@
+#!/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$
+##
+#############################################################################
+
+# This script modified system settings for automated use
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+VNCPassword=qt
+NTS_IP=10.212.2.0
+
+ExceptionDisableScreensaver=100
+ExceptionSetInitialDelay=101
+ExceptionSetDelay=102
+ExceptionVNC=103
+ExceptionNTS=104
+
+try
+(
+ echo "Disable Screensaver"
+ mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
+ (
+ cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+
+<plist version="1.0">
+ <dict>
+ <key>Label</key>
+ <string>org.qt.io.screensaver_disable</string>
+ <key>ProgramArguments</key>
+ <array>
+ <string>defaults</string>
+ <string>-currentHost</string>
+ <string>write</string>
+ <string>com.apple.screensaver</string>
+ <string>idleTime</string>
+ <string>0</string>
+ </array>
+ <key>RunAtLoad</key>
+ <true/>
+ <key>KeepAlive</key>
+ <false/>
+ </dict>
+</plist>
+EOT
+ ) || throw $ExceptionDisableScreensaver
+
+ echo "Set keyboard type rates and delays"
+ # normal minimum is 15 (225 ms)
+ defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay
+ # normal minimum is 2 (30 ms)
+ defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay
+
+ echo "Enable remote desktop sharing"
+ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC
+
+ 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
+
+)
+catch || {
+ case $ex_code in
+ $ExceptionDisableScreensaver)
+ echo "Failed to disable screensaver."
+ exit 1;
+ ;;
+ $ExceptionSetInitialDelay)
+ echo "Failed to set initial delay of keyboard."
+ exit 1;
+ ;;
+ $ExceptionSetDelay)
+ echo "Failed to set delay of keyboard."
+ exit 1;
+ ;;
+ $ExceptionVNC)
+ echo "Failed to enable VNC."
+ exit 1;
+ ;;
+ $ExceptionNTS)
+ echo "Failed to set NTS."
+ exit 1;
+ ;;
+ esac
+}
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/01-macos-removethemall.sh b/coin/provisioning/qtci-osx-10.11-x86_64/01-macos-removethemall.sh
deleted file mode 100644
index 6b56aac4..00000000
--- a/coin/provisioning/qtci-osx-10.11-x86_64/01-macos-removethemall.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/usr/bin/env bash
-BASEDIR=$(dirname "$0")
-source "$BASEDIR/../common/01-macos-removethemall.sh"
-
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh b/coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh
new file mode 100755
index 00000000..dcd8fead
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh
@@ -0,0 +1,50 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs XZ-Utils
+
+# XZ-Utils are needed for uncompressing xz-compressed files
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/InstallPKGFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/osx_10.11_el_capitan/XZ.pkg"
+AltUrl="http://sourceforge.net/projects/macpkg/files/XZ/5.0.7/XZ.pkg"
+SHA1="f0c1f82ebcffe0bd4b8b57b6a77805db56b2de67"
+DestDir="/"
+
+InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
+
+echo "XZ = 5.0.7" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/020-xcode.sh b/coin/provisioning/qtci-osx-10.11-x86_64/020-xcode.sh
new file mode 100755
index 00000000..dc02ae14
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/020-xcode.sh
@@ -0,0 +1,106 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs Xcode
+# Prerequisites: Have Xcode prefetched to local cache as xz compressed.
+# This can be achieved by fetching Xcode_8.xip from Apple Store.
+# Uncompress it with 'xar -xf Xcode_8.xip'
+# Then get https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py
+# with which you can run 'python parse_pbzx2.py Content'.
+# This will give you a file called "Content.part00.cpio.xz" that
+# can be renamed to Xcode_8.xz for this script.
+
+
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadUrl=100
+ExceptionSHA1=101
+ExceptionUnXZ=102
+ExceptionCPIO=103
+ExceptionDelete=104
+
+
+url=http://ci-files01-hki.ci.local/input/mac/Xcode_8.2.xz
+targetFile=/tmp/Xcode_8.2.xz
+expectedSha1=46edc920955e315d946e36c45f629d5ee9dc9d59
+
+try
+(
+ echo "Downloading Xcode from primary URL '$url'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadUrl
+
+ echo "Checking SHA1 on $targetFile"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+
+ echo "Uncompressing '$targetFile'"
+ xz -d "$targetFile" || throw $ExceptionUnXZ
+
+ echo "Unarchiving '${targetFile%.*}'"
+ (cd /Applications/ && sudo cpio -dmiI "${targetFile%.*}") || throw $ExceptionCPIO
+
+ echo "Deleting '${targetFile%.*}'"
+ rm "${targetFile%.*}" || throw $ExceptionDelete
+
+ echo "Xcode = 8.2" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionDownloadUrl)
+ echo "Failed to download Xcode."
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check SHA1."
+ exit 1;
+ ;;
+ $ExceptionUnXZ)
+ echo "Failed to uncompress .xz"
+ exit 1;
+ ;;
+ $ExceptionCPIO)
+ echo "Failed to unarchive .cpio."
+ exit 1;
+ ;;
+ $ExceptionDelete)
+ echo "Failed to delete temporary file."
+ exit 1;
+ ;;
+
+ esac
+}
+
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/021-commandlinetools.sh b/coin/provisioning/qtci-osx-10.11-x86_64/021-commandlinetools.sh
new file mode 100755
index 00000000..8a8e921c
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/021-commandlinetools.sh
@@ -0,0 +1,111 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs Command Line Tools for Xcode
+# Prerequisite: Get the .dmg file from Apple Store beforehand to local cache
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadUrl=100
+ExceptionSHA1=101
+ExceptionAttachImage=102
+ExceptionInstall=103
+ExceptionDetachImage=104
+ExceptionRemoveTmpFile=105
+ExceptionAcceptLicense=106
+
+
+url=http://ci-files01-hki.ci.local/input/mac/Command_Line_Tools_macOS_10.11_for_Xcode_8.2.dmg
+targetFile=/tmp/Command_Line_Tools_macOS_10.11_for_Xcode_8.2.dmg
+expectedSha1=4df615ca765ac1a1e681ddcbca79fc15990e3b25
+
+try
+(
+ echo "Downloading Command Line Tools from URL '$url'"
+ curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadUrl
+
+ echo "Checking SHA1 on '$targetFile'"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+
+ echo Mounting DMG
+ hdiutil attach "$targetFile" || throw $ExceptionAttachImage
+
+ echo Installing Command Line Tools
+ (cd /Volumes/Command\ Line\ Developer\ Tools/ && sudo installer -pkg "Command Line Tools (macOS El Capitan version 10.11).pkg" -target /) || throw $ExceptionInstall
+
+ hdiutil detach /dev/disk1s1 || throw $ExceptionDetachImage
+
+ echo "Removing temporary file '$targetFile'"
+ rm "$targetFile" || throw $ExceptionRemoveTmpFile
+
+ echo "Accept license"
+ sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
+
+ echo "Command Line Tools = 8.2" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionDownloadUrl)
+ echo "Failed to download Command Line Tools from form URL '$url'."
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check SHA1."
+ exit 1;
+ ;;
+ $ExceptionAttachImage)
+ echo "Failed to attach image."
+ exit 1;
+ ;;
+ $ExceptionInstall)
+ echo "Failed to install Command Line Tools."
+ exit 1;
+ ;;
+ $ExceptionDetachImage)
+ echo "Failed to detach image."
+ exit 1;
+ ;;
+ $ExceptionRemoveTmpFile)
+ echo "Failed to remove temporary file."
+ exit 1;
+ ;;
+ $ExceptionAcceptLicense)
+ echo "Failed to accept license."
+ exit 1;
+ ;;
+
+ esac
+}
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/025-cmake.sh b/coin/provisioning/qtci-osx-10.11-x86_64/025-cmake.sh
new file mode 100755
index 00000000..3dadd9bc
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/025-cmake.sh
@@ -0,0 +1,51 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs CMake
+
+# CMake is needed for autotests that verify that Qt can be built with CMake
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/osx_10.11_el_capitan/cmake-3.6.2-Darwin-x86_64.tar.gz"
+AltUrl="https://cmake.org/files/v3.6/cmake-3.6.2-Linux-x86_64.tar.gz"
+SHA1="13835afa3aea939e07a7ecccedcc041dd8c3a86e"
+appPrefix="cmake-3.6.2-Darwin-x86_64"
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
+
+echo "export PATH=/Applications/CMake.app/Contents/bin:$PATH" >> ~/.bashrc
+echo "CMake = 3.6.2" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh b/coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh
new file mode 100755
index 00000000..4d938890
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+#############################################################################
+##
+## Copyright (C) 2016 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the test suite 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 MySQL
+
+# MySQL is needed for Qt to be able to support MySQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/osx_10.11_el_capitan/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+AltUrl="https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+SHA1="07949bd42f350b0504a1536b8830b809b4a34fca"
+appPrefix=""
+targetDir="/opt/mysql57/"
+
+sudo mkdir -p "/opt"
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" "$targetDir"
+
+echo "export MYSQLBINPATH=/opt/mysql57/bin" >> ~/.bashrc
+echo "MySQL = 5.7.15" >> ~/versions.txt
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/025-postgresql.sh b/coin/provisioning/qtci-osx-10.11-x86_64/025-postgresql.sh
new file mode 100755
index 00000000..381fedf2
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/025-postgresql.sh
@@ -0,0 +1,52 @@
+#!/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$
+##
+#############################################################################
+
+# This script installs PostgreSQL
+
+# PostgreSQL is needed for Qt to be able to support PostgreSQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/osx_10.11_el_capitan/Postgres-9.6.0.zip"
+AltUrl="https://github.com/PostgresApp/PostgresApp/releases/download/9.6.0/Postgres-9.6.0.zip"
+SHA1="5078e44663787006ca55fa3b5e2be598bed82eb5"
+appPrefix=""
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
+
+echo "export POSTGRESQLBINPATH=/Applications/Postgres.app/Contents/Versions/9.6/bin" >> ~/.bashrc
+echo "PostgreSQL = 9.6.0" >> ~/versions.txt
+
diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/android.sh b/coin/provisioning/qtci-osx-10.11-x86_64/android.sh
deleted file mode 100644
index 3b6e75b4..00000000
--- a/coin/provisioning/qtci-osx-10.11-x86_64/android.sh
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/sh
-
-#############################################################################
-##
-## Copyright (C) 2016 The Qt Company Ltd.
-## Contact: http://www.qt.io/licensing/
-##
-## This file is part of the test suite 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 install Android sdk and ndk.
-
-# It also runs update for SDK API level 21, latest SDK tools, latest platform-tools and - build-tools
-
-# Android 16 is the minimum requirement for Qt 5.7 applications, but we need something more recent than that for building Qt itself.
-# E.g The Bluetooth features that require Android 21 will disable themselves dynamically when running on an Android 16 device.
-# That's why we need to use Andoid-21 API version and decision was made to use it also with Qt 5.6.
-
-set -e
-targetFolder="/opt/android"
-baseUrl="http://ci-files01-hki.ci.local/input/android"
-
-# SDK
-sdkVersion="android-sdk_r24.4.1-macosx.zip"
-sdkBuildToolsVersion="24.0.2"
-sdkApiLevel="android-21"
-sdkUrl="$baseUrl/$sdkVersion"
-sdkSha1="85a9cccb0b1f9e6f1f616335c5f07107553840cd"
-sdkTargetFile="$targetFolder/$sdkVersion"
-sdkExtract="unzip $sdkTargetFile -d $targetFolder"
-sdkFolderName="android-sdk-macosx"
-sdkName="sdk"
-
-# NDK
-ndkVersion="android-ndk-r10e-darwin-x86_64.zip"
-ndkUrl="$baseUrl/$ndkVersion"
-ndkSha1="6be8598e4ed3d9dd42998c8cb666f0ee502b1294"
-ndkTargetFile="$targetFolder/$ndkVersion"
-ndkExtract="unzip $ndkTargetFile -d $targetFolder"
-ndkFolderName="android-ndk-r10e"
-ndkName="ndk"
-
-function InstallAndroidPackage {
- targetFolder=$1
- version=$2
- url=$3
- sha1=$4
- targetFile=$5
- extract=$6
- folderName=$7
- name=$8
-
- sudo curl --retry 5 --retry-delay 10 --retry-max-time 60 $url -o $targetFile || echo "Failed to download '$url' multiple times"
- shasum $targetFile |grep $sha1 || echo "shasum check failed !"
- sudo chmod 755 $targetFile
- sudo $extract || echo "Failed to extract $url"
- sudo chown -R qt:wheel $targetFolder/$folderName
- sudo mv $targetFolder/$folderName $targetFolder/$name || echo "Failed to rename $name"
- sudo rm -fr $targetFolder/$version || echo "Failed to remove $targetFolder/$version"
-}
-
-sudo mkdir $targetFolder
-# Install Android SDK
-echo "Installing Android SDK version $sdkVersion..."
-InstallAndroidPackage $targetFolder $sdkVersion $sdkUrl $sdkSha1 $sdkTargetFile "$sdkExtract" $sdkFolderName $sdkName
-
-# Install Android NDK
-echo "Installing Android NDK version $ndkVersion..."
-InstallAndroidPackage $targetFolder $ndkVersion $ndkUrl $ndkSha1 $ndkTargetFile "$ndkExtract" $ndkFolderName $ndkName
-
-# run update for Android SDK and install SDK API version 21, latest SDK tools, platform-tools and build-tools
-echo "Running Android SDK update for API version 21, SDK-tools, platform-tools and build-tools-$sdkBuildToolsVersion..."
-echo "y" |$targetFolder/sdk/tools/android update sdk --no-ui --all --filter $sdkApiLevel,tools,platform-tools,build-tools-$sdkBuildToolsVersion || echo "Failed to run update"
-
-# For Qt 5.6, we by default require API levels 10, 11, 16 and 21, but we can override this by setting ANDROID_API_VERSION=android-21
-# From Qt 5.7 forward, if android-16 is not installed, Qt will automatically use more recent one.
-echo 'export ANDROID_API_VERSION=android-21' >> ~/.bashrc
diff --git a/coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps1 b/coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps1
new file mode 100644
index 00000000..83ff3f48
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps1
@@ -0,0 +1,33 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+. "$PSScriptRoot\..\common\msvc2015_update.ps1"
diff --git a/coin/provisioning/qtci-windows-10-x86/libusb.ps1 b/coin/provisioning/qtci-windows-10-x86/libusb.ps1
new file mode 100644
index 00000000..a853ffef
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86/libusb.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\libusb.ps1"
diff --git a/coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps1 b/coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps1
new file mode 100644
index 00000000..83ff3f48
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps1
@@ -0,0 +1,33 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+. "$PSScriptRoot\..\common\msvc2015_update.ps1"
diff --git a/coin/provisioning/qtci-windows-10-x86_64/mysql.ps1 b/coin/provisioning/qtci-windows-10-x86_64/mysql.ps1
new file mode 100644
index 00000000..5e75f662
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/mysql.ps1
@@ -0,0 +1,112 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\..\common\helpers.ps1"
+
+# This script installs MySQL $version.
+# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
+
+$version = "5.6.11"
+$packagex64 = "C:\Windows\temp\mysql-$version-win64.zip"
+$packagex86 = "C:\Windows\temp\mysql-$version-win32.zip"
+
+function CheckAndRemovePreviousInstallation
+{
+ Param (
+ [string]$InstallFolder
+ )
+ echo "Check for previous installation..."
+ $FolderExists = Test-Path $ExistingInstallation
+ If ($FolderExists -eq $True) {
+ echo "Removing previous installation ($ExistingInstallation)"
+ Remove-Item $ExistingInstallation -recurse
+ }
+}
+
+function DownloadAndInstall
+{
+ Param (
+ [string]$arch,
+ [string]$externalUrl,
+ [string]$internalUrl,
+ [string]$package,
+ [string]$sha1,
+ [string]$installPath
+ )
+
+ echo "Fetching from URL ..."
+ Download $externalUrl $internalUrl $package
+ Verify-Checksum $package $sha1
+ Extract-Zip $package $installPath
+}
+
+# Install x64 bit version
+$architecture = "x64"
+$installFolder = "C:\Utils\my_sql"
+$existingInstallation = "$installFolder\my_sql"
+$internalUrl = "http://ci-files01-hki.ci.local/input/windows/mysql-$version-winx64"
+$sha1 = "f4811512b5f3c8ad877ee4feba2062312a0acc38"
+
+echo "Check and remove previous installation ..."
+CheckAndRemovePreviousInstallation $existingInstallation
+DownloadAndInstall $architecture $internalUrl $internalUrl $packagex64 $sha1 $installFolder
+Rename-Item -path $installFolder\mysql-$version-winx64 -newName $installFolder\my_sql
+
+echo "Remove downloaded package ..."
+Remove-Item $packagex64
+
+echo "Set environment variables ..."
+[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x64", "$installFolder\my_sql\include", "Machine")
+[Environment]::SetEnvironmentVariable("MYSQL_LIB_x64", "$installFolder\my_sql\lib", "Machine")
+
+# Install x86 bit version
+$architecture = "x86"
+$installFolder = "C:\Utils\my_sql$architecture"
+$existingInstallation = "$installFolder\my_sql"
+$internalUrl = "http://ci-files01-hki.ci.local/input/windows/mysql-$version-win32"
+$sha1 = "e0aa62d5c5d6c6ec28906a831752d04336562679"
+
+echo "Check and remove previous installation ..."
+CheckAndRemovePreviousInstallation $existingInstallation
+DownloadAndInstall $architecture $internalUrl $internalUrl $packagex86 $sha1 $installFolder
+Rename-Item -path $installFolder\mysql-$version-win32 -newName $installFolder\my_sql
+
+echo "Remove downloaded package ..."
+Remove-Item $packagex86
+
+echo "Set environment variables ..."
+[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x86", "$installFolder\my_sql\include", "Machine")
+[Environment]::SetEnvironmentVariable("MYSQL_LIB_x86", "$installFolder\my_sql\lib", "Machine")
+
+# Store version information to ~/versions.txt, which is used to print version information to provision log.
+echo "MySQL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-windows-10-x86_64/opengl32_x86.ps1 b/coin/provisioning/qtci-windows-10-x86_64/opengl32_x86.ps1
new file mode 100644
index 00000000..079f26c3
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/opengl32_x86.ps1
@@ -0,0 +1,63 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\..\common\helpers.ps1"
+
+$version = "11_2_2"
+$package = "C:\Windows\temp\opengl32sw_$version.7z"
+$destinationFolder = "C:\Windows\SysWOW64"
+$openglPackage = "C:\Windows\SysWOW64\opengl32.dll"
+
+$mesaOpenglUrl = "http://download.qt.io/development_releases/prebuilt/llvmpipe/windows/opengl32sw-32-mesa_$version.7z"
+$mesaOpenglSha1 = "e742e9d4e16b9c69b6d844940861d3ef1748356b"
+$openglUrl = "http://ci-files01-hki.ci.local/input/mesa3d/windows/32bit/opengl32.dll"
+$openglSha1 = "690730f973aa39bd80648e026248394fde07a753"
+
+Invoke-WebRequest -UseBasicParsing $mesaOpenglUrl -OutFile $package
+Verify-Checksum $package $mesaOpenglSha1
+Get-ChildItem $package | % {& "C:\Utils\sevenzip\7z.exe" "x" "-y" $_.fullname "-o$destinationFolder"}
+
+echo "Remove downloaded $package ..."
+Remove-Item $package -recurse
+
+echo "Take ownership of existing opengl32.dll from SysWOW64"
+takeown /f $openglPackage
+icacls $openglPackage /grant Administrators:F
+echo "Remove existing opengl32.dll from SysWOW64"
+Remove-Item -Recurse -Force $openglPackage
+echo "Add new opengl32.dll to SysWOW64"
+Invoke-WebRequest -UseBasicParsing $openglUrl -OutFile $openglPackage
+Verify-Checksum $openglPackage $openglSha1
+
+# Store version information to ~/versions.txt
+echo "OpenGL x86 = $version" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-windows-10-x86_64/openssl.ps1 b/coin/provisioning/qtci-windows-10-x86_64/openssl.ps1
new file mode 100644
index 00000000..35340ca7
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/openssl.ps1
@@ -0,0 +1,86 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\..\common\helpers.ps1"
+
+# This script installs OpenSSL $version.
+# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
+
+$version = "1_0_2j"
+$packagex64 = "C:\Windows\Temp\Win64OpenSSL-$version.exe"
+$packagex86 = "C:\Windows\Temp\Win32OpenSSL-$version.exe"
+
+# Install x64 bit version
+$architecture = "x64"
+$installFolder = "C:\openssl"
+$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"
+$internalUrl = "http://ci-files01-hki.ci.local/input/openssl/Win64OpenSSL-$version.exe"
+$sha1 = "b1660dbdcc77e1b3d81d780c7167be1c75384d44"
+
+echo "Fetching from URL ..."
+Download $externalUrl $internalUrl $packagex64
+Verify-Checksum $packagex64 $sha1
+echo "Installing $packagex64 ..."
+cmd /c "$packagex64 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
+
+echo "Remove downloaded $packagex64 ..."
+Remove-Item $packagex64
+
+echo "Set $architecture environment variables ..."
+[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x64", "$installFolder\bin\openssl.cfg", "Machine")
+[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x64", "$installFolder\include", "Machine")
+[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x64", "$installFolder\lib", "Machine")
+
+# Install x86 bit version
+$architecture = "x86"
+$installFolder = "C:\openssl$architecture"
+$externalUrl = "https://slproweb.com/download/Win32OpenSSL-$version.exe"
+$internalUrl = "http://ci-files01-hki.ci.local/input/openssl/Win32OpenSSL-$version.exe"
+$sha1 = "29b31d20545214ab4e4c57afb20be2338c317cc3"
+
+echo "Fetching from URL ..."
+Download $externalUrl $internalUrl $packagex86
+Verify-Checksum $packagex86 $sha1
+echo "Installing $packagex86 ..."
+cmd /c "$packagex86 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
+
+echo "Remove downloaded $packagex86 ..."
+Remove-Item $packagex86
+
+echo "Set $architecture environment variables ..."
+[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x86", "$installFolder\bin\openssl.cfg", "Machine")
+[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x86", "$installFolder\include", "Machine")
+[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x86", "$installFolder\lib", "Machine")
+
+# Store version information to ~/versions.txt, which is used to print version information to provision log.
+echo "OpenSSL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-windows-10-x86_64/postgresql.ps1 b/coin/provisioning/qtci-windows-10-x86_64/postgresql.ps1
new file mode 100644
index 00000000..9b1d5d4e
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/postgresql.ps1
@@ -0,0 +1,84 @@
+#############################################################################
+##
+## 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$
+##
+#############################################################################
+
+. "$PSScriptRoot\..\common\helpers.ps1"
+
+# This script installs postgresql $version.
+# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
+
+$version = "9.1.9-1"
+$packagex64 = "C:\Windows\temp\postgresql-$version-windows-x64-binaries.zip"
+$packagex86 = "C:\Windows\temp\postgresql-$version-windows-binaries.zip"
+
+# Install x64 bit versions
+$architecture = "x64"
+$installFolder = "C:\Utils\postgresql"
+$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-x64-binaries.zip"
+$internalUrl = "http://ci-files01-hki.ci.local/input/windows/postgresql-$version-windows-x64-binaries.zip"
+$sha1 = "4da0453cdfda335e064d4437cf5bb9d356054cfd"
+
+echo "Fetching from URL ..."
+Download $externalUrl $internalUrl $packagex64
+Verify-Checksum $packagex64 $sha1
+echo "Installing $packagex64 ..."
+Extract-Zip $packagex64 $installFolder
+
+echo "Remove downloaded $packagex64 ..."
+Remove-Item $packagex64
+
+echo "Set $architecture environment variables ..."
+[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x64", "$installFolder\pgsql\include", "Machine")
+[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x64", "$installFolder\pgsql\lib", "Machine")
+
+# Install x86 bit version
+$architecture = "x86"
+$installFolder = "C:\Utils\postgresql$architecture"
+$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-binaries.zip"
+$internalUrl = "http://ci-files01-hki.ci.local/input/windows/postgresql-$version-windows-binaries.zip"
+$sha1 = "eb4f01845e1592800edbb74f60944b6c0aca51a9"
+
+echo "Fetching from URL..."
+Download $externalUrl $internalUrl $packagex86
+Verify-Checksum $packagex86 $sha1
+echo "Installing $packagex86 ..."
+Extract-Zip $packagex86 $installFolder
+
+echo "Remove downloaded $packagex86 ..."
+Remove-Item $packagex86
+
+echo "Set $architecture environment variables ..."
+[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x86", "$installFolder\pgsql\include", "Machine")
+[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x86", "$installFolder\pgsql\lib", "Machine")
+
+# Store version information to ~/versions.txt, which is used to print version information to provision log.
+echo "PostgreSQL = $version" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-windows-7-x86/libusb.ps1 b/coin/provisioning/qtci-windows-7-x86/libusb.ps1
new file mode 100644
index 00000000..a853ffef
--- /dev/null
+++ b/coin/provisioning/qtci-windows-7-x86/libusb.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\libusb.ps1"
diff --git a/coin/provisioning/qtci-windows-8-x86/cmake.ps1 b/coin/provisioning/qtci-windows-8-x86/cmake.ps1
new file mode 100644
index 00000000..8dbe0372
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8-x86/cmake.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\cmake.ps1"
diff --git a/coin/provisioning/qtci-windows-8-x86/libusb.ps1 b/coin/provisioning/qtci-windows-8-x86/libusb.ps1
new file mode 100644
index 00000000..a853ffef
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8-x86/libusb.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\libusb.ps1"
diff --git a/coin/provisioning/qtci-windows-8-x86_64/cmake.ps1 b/coin/provisioning/qtci-windows-8-x86_64/cmake.ps1
new file mode 100644
index 00000000..8dbe0372
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8-x86_64/cmake.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\cmake.ps1"
diff --git a/configure b/configure
index a7b4c9cb..b6954b85 100755
--- a/configure
+++ b/configure
@@ -33,7 +33,7 @@
#############################################################################
srcpath=`dirname $0`
-srcpath=`(cd "$srcpath"; /bin/pwd)`
+srcpath=`(cd "$srcpath"; pwd)`
configure=$srcpath/qtbase/configure
if [ ! -e "$configure" ]; then
echo "$configure not found. Did you forget to run \"init-repository\"?" >&2
diff --git a/qt.pro b/qt.pro
index 1915fc2c..49901139 100644
--- a/qt.pro
+++ b/qt.pro
@@ -25,10 +25,6 @@ for (line, lines) {
QMAKE_INTERNAL_INCLUDED_FILES += $$PWD/.gitmodules
QT_SKIP_MODULES =
-uikit {
- QT_SKIP_MODULES += qtdoc qtmacextras qtserialport qtwebkit qtwebkit-examples
- !ios: QT_SKIP_MODULES += qtscript
-}
# This is a bit hacky, but a proper implementation is not worth it.
args = $$QMAKE_EXTRA_ARGS
diff --git a/qtremoteobjects b/qtremoteobjects
new file mode 160000
+Subproject 570ab25a1302fbd61d0d2f32da1ea8603852e3b
diff --git a/qtwebengine b/qtwebengine
-Subproject a84f63098aa4d91a7907a49416de4974acbae0e
+Subproject 08eef49a53a9dda35b7a0efce04b5b298e4f320