aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.commit-template1
-rw-r--r--.gitmodules91
-rw-r--r--coin/README5
-rw-r--r--coin/platform_configs/default.txt37
-rw-r--r--coin/platform_configs/qt5.txt22
-rw-r--r--coin/platform_configs/qtdeclarative.txt3
-rw-r--r--coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1 (renamed from coin/provisioning/common/msvc2015_update.ps1)2
-rw-r--r--coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps149
-rw-r--r--coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps158
-rw-r--r--coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps149
-rw-r--r--coin/provisioning/common/01-windows_removethemall.ps15
-rw-r--r--coin/provisioning/common/DownloadURL.sh4
-rw-r--r--coin/provisioning/common/InstallAppFromCompressedFileFromURL.sh127
-rw-r--r--coin/provisioning/common/InstallFromCompressedFileFromURL.sh2
-rw-r--r--coin/provisioning/common/InstallPKGFromURL.sh103
-rw-r--r--coin/provisioning/common/helpers.ps12
-rwxr-xr-xcoin/provisioning/common/install_xcode.sh83
-rw-r--r--coin/provisioning/common/python.ps1 (renamed from coin/provisioning/common/02-python.ps1)19
-rw-r--r--coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh17
-rw-r--r--coin/provisioning/qtci-linux-RHEL-6.6-x86_64/install_icu.sh3
-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
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.2-x86_64/30-integrity.sh55
-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.sh102
-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.sh66
-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-x[-rw-r--r--]coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh (renamed from coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps1)19
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/020-java.sh128
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh51
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh51
-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
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/030-android.sh128
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh117
-rw-r--r--coin/provisioning/qtci-osx-10.10-x86_64/android.sh17
-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-x[-rw-r--r--]coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh (renamed from coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps1)19
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/020-xcode.sh53
-rwxr-xr-xcoin/provisioning/qtci-osx-10.11-x86_64/025-cmake.sh51
-rwxr-xr-x[-rw-r--r--]coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh)27
-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/02-python.ps12
-rw-r--r--coin/provisioning/qtci-windows-10-x86/msvc_2015_update3_patch.ps150
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/02-python.ps12
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps150
-rw-r--r--coin/provisioning/qtci-windows-7-x86/02-python.ps12
-rw-r--r--coin/provisioning/qtci-windows-7-x86/06-android.ps18
-rw-r--r--coin/provisioning/qtci-windows-8-x86/02-python.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86/06-python.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86_64/02-python.ps11
-rw-r--r--coin/provisioning/qtci-windows-8-x86_64/06-python.ps11
-rwxr-xr-xinit-repository18
-rw-r--r--qt.pro8
m---------qt3d0
m---------qtactiveqt0
m---------qtandroidextras0
m---------qtbase0
m---------qtcanvas3d0
m---------qtcharts0
m---------qtconnectivity0
m---------qtdatavis3d0
m---------qtdeclarative0
m---------qtdoc0
m---------qtgamepad0
m---------qtgraphicaleffects0
m---------qtimageformats0
m---------qtlocation0
m---------qtmacextras0
m---------qtmultimedia0
m---------qtnetworkauth0
m---------qtpurchasing0
m---------qtquick10
m---------qtquickcontrols0
m---------qtquickcontrols20
m---------qtremoteobjects0
m---------qtscript0
m---------qtscxml0
m---------qtsensors0
m---------qtserialbus0
m---------qtserialport0
m---------qtspeech0
m---------qtsvg0
m---------qttools0
m---------qttranslations0
m---------qtvirtualkeyboard0
m---------qtwayland0
m---------qtwebchannel0
m---------qtwebengine0
m---------qtwebkit0
m---------qtwebkit-examples0
m---------qtwebsockets0
m---------qtwebview0
m---------qtwinextras0
m---------qtx11extras0
m---------qtxmlpatterns0
104 files changed, 2174 insertions, 282 deletions
diff --git a/.commit-template b/.commit-template
index 26441ac5..aced2afa 100644
--- a/.commit-template
+++ b/.commit-template
@@ -11,6 +11,7 @@
#
# One task per entry. Remember space after colon.
#Task-number:
+#Coverity-Id:
#
# ==[ Please wrap at 72 characters ]===================================|
#
diff --git a/.gitmodules b/.gitmodules
index 6d20dc99..8be71f45 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,66 +1,66 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
- branch = 5.8
+ branch = 5.9
status = essential
[submodule "qtsvg"]
depends = qtbase
path = qtsvg
url = ../qtsvg.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtdeclarative"]
depends = qtbase
recommends = qtsvg qtxmlpatterns
path = qtdeclarative
url = ../qtdeclarative.git
- branch = 5.8
+ branch = 5.9
status = essential
[submodule "qtactiveqt"]
depends = qtbase
path = qtactiveqt
url = ../qtactiveqt.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtscript"]
depends = qtbase
recommends = qttools
path = qtscript
url = ../qtscript.git
- branch = 5.8
+ branch = 5.9
status = deprecated
[submodule "qtmultimedia"]
depends = qtbase
recommends = qtdeclarative
path = qtmultimedia
url = ../qtmultimedia.git
- branch = 5.8
+ branch = 5.9
status = essential
[submodule "qttools"]
depends = qtbase
recommends = qtdeclarative qtactiveqt qtwebkit
path = qttools
url = ../qttools.git
- branch = 5.8
+ branch = 5.9
status = essential
[submodule "qtxmlpatterns"]
depends = qtbase
path = qtxmlpatterns
url = ../qtxmlpatterns.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qttranslations"]
depends = qttools
path = qttranslations
url = ../qttranslations.git
- branch = 5.8
+ branch = 5.9
status = essential
priority = 30
[submodule "qtdoc"]
depends = qtdeclarative
path = qtdoc
url = ../qtdoc.git
- branch = 5.8
+ branch = 5.9
status = essential
priority = 40
[submodule "qtrepotools"]
@@ -74,7 +74,7 @@
recommends = qtdeclarative qtlocation qtmultimedia qtsensors qtwebchannel qtxmlpatterns
path = qtwebkit
url = ../qtwebkit.git
- branch = 5.8
+ branch = 5.9
status = obsolete
project = WebKit.pro
priority = 20
@@ -82,7 +82,7 @@
depends = qtwebkit qttools
path = qtwebkit-examples
url = ../qtwebkit-examples.git
- branch = 5.8
+ branch = 5.9
status = obsolete
[submodule "qtqa"]
depends = qtbase
@@ -93,17 +93,17 @@
priority = 50
[submodule "qtlocation"]
depends = qtbase
- recommends = qtdeclarative qtquickcontrols qtserialport
+ recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport
path = qtlocation
url = ../qtlocation.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtsensors"]
depends = qtbase
recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtsystems"]
depends = qtbase
@@ -136,27 +136,27 @@
recommends = qtdeclarative qtandroidextras
path = qtconnectivity
url = ../qtconnectivity.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtwayland"]
depends = qtbase
recommends = qtdeclarative
path = qtwayland
url = ../qtwayland.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qt3d"]
depends = qtdeclarative qtimageformats
recommends = qtgamepad
path = qt3d
url = ../qt3d.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtimageformats"]
depends = qtbase
path = qtimageformats
url = ../qtimageformats.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtquick1"]
depends = qtscript
@@ -169,51 +169,51 @@
depends = qtdeclarative
path = qtgraphicaleffects
url = ../qtgraphicaleffects.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtquickcontrols"]
depends = qtdeclarative
recommends = qtgraphicaleffects
path = qtquickcontrols
url = ../qtquickcontrols.git
- branch = 5.8
+ branch = 5.9
status = essential
[submodule "qtserialbus"]
depends = qtserialport
path = qtserialbus
url = ../qtserialbus.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtserialport"]
depends = qtbase
path = qtserialport
url = ../qtserialport.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtx11extras"]
depends = qtbase
path = qtx11extras
url = ../qtx11extras.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtmacextras"]
depends = qtbase
path = qtmacextras
url = ../qtmacextras.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtwinextras"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtwinextras
url = ../qtwinextras.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtandroidextras"]
depends = qtbase
path = qtandroidextras
url = ../qtandroidextras.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtenginio"]
depends = qtdeclarative
@@ -226,94 +226,101 @@
recommends = qtdeclarative
path = qtwebsockets
url = ../qtwebsockets.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtwebchannel"]
depends = qtbase
recommends = qtdeclarative qtwebsockets
path = qtwebchannel
url = ../qtwebchannel.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtwebengine"]
depends = qtquickcontrols qtwebchannel
recommends = qtlocation qttools
+ serialize = qtwebkit
path = qtwebengine
url = ../qtwebengine.git
- branch = 5.8
+ branch = 5.9
status = addon
priority = 10
[submodule "qtcanvas3d"]
depends = qtdeclarative
path = qtcanvas3d
url = ../qtcanvas3d.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtquickcontrols2"]
depends = qtgraphicaleffects
path = qtquickcontrols2
url = ../qtquickcontrols2.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtpurchasing"]
depends = qtbase qtandroidextras
recommends = qtdeclarative
path = qtpurchasing
url = ../qtpurchasing.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtcharts"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtcharts
url = ../qtcharts.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtdatavis3d"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtdatavis3d
url = ../qtdatavis3d.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtvirtualkeyboard"]
depends = qtbase qtdeclarative qtsvg
recommends = qtmultimedia qtquickcontrols
path = qtvirtualkeyboard
url = ../qtvirtualkeyboard.git
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtgamepad"]
depends = qtbase
recommends = qtdeclarative
path = qtgamepad
url = ../qtgamepad
- branch = 5.8
- status = preview
+ branch = 5.9
+ status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
url = ../qtscxml
- branch = 5.8
+ branch = 5.9
status = addon
[submodule "qtspeech"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtspeech
url = ../qtspeech
- branch = 5.8
+ branch = 5.9
status = preview
[submodule "qtnetworkauth"]
depends = qtbase
recommends = qtwebview
path = qtnetworkauth
url = ../qtnetworkauth
- branch = 5.8
+ branch = 5.9
+ status = preview
+[submodule "qtremoteobjects"]
+ depends = qtbase
+ path = qtremoteobjects
+ url = ../qtremoteobjects
+ branch = 5.9
status = preview
diff --git a/coin/README b/coin/README
index 2fb3fe2d..80f02fd4 100644
--- a/coin/README
+++ b/coin/README
@@ -3,6 +3,11 @@ Continuous Integration
This directory contains files used by Qt's Continuous Integration system (Coin).
+pre-provisioning
+----------------
+Contains scripts which are used to install software to tier1 machines manually.
+E.g. Visual studio installation takes too long to be included to automatic provisioning of tier2 templates.
+
provisioning
------------
Contains scripts that apply to different test machines in order to run automatic tests on them.
diff --git a/coin/platform_configs/default.txt b/coin/platform_configs/default.txt
index 58f7967c..5f9aba51 100644
--- a/coin/platform_configs/default.txt
+++ b/coin/platform_configs/default.txt
@@ -1,25 +1,26 @@
Template Target OS Target arch Compiler Features
----------------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
-qtci-windows-8-x86_64 MSVC2013 DeveloperBuild Release BuildExamples
-qtci-windows-10-x86_64 MSVC2015 DeveloperBuild Release QtNamespace QtLibInfix
-qtci-windows-8-x86 MSVC2013 Packaging DebugAndRelease Release OpenGLDynamic
-qtci-windows-8-x86_64 MSVC2013 Packaging DebugAndRelease Release OpenGLDynamic
-qtci-windows-7-x86 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic
-qtci-windows-10-x86 MSVC2015 Packaging DebugAndRelease Release OpenGLDynamic
-qtci-windows-10-x86_64 MSVC2015 Packaging DebugAndRelease Release OpenGLDynamic
-qtci-windows-8-x86_64 Windows_Phone_8_1 armv4 MSVC2013 Packaging DebugAndRelease Release DisableTests
-qtci-windows-8-x86_64 WinRT_8_1 MSVC2013 Packaging DebugAndRelease Release DisableTests
-qtci-linux-Ubuntu-14.04-x86_64 GCC NoWidgets ForceDebugInfo
-qtci-linux-Ubuntu-14.04-x86_64 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace
+qtci-windows-8-x86_64-2 MSVC2013 DeveloperBuild Release BuildExamples
+qtci-windows-10-x86_64-5 MSVC2015 DeveloperBuild Release QtNamespace QtLibInfix
+qtci-windows-8-x86-2 MSVC2013 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic
+qtci-windows-8-x86_64-2 MSVC2013 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic
+qtci-windows-7-x86-2 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic
+qtci-windows-10-x86-4 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic
+qtci-windows-10-x86_64-5 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic
+qtci-windows-10-x86_64-5 WinRT_10 x86 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
+qtci-windows-10-x86_64-5 WinRT_10 armv7 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
+qtci-linux-Ubuntu-16.04-x86_64 GCC NoWidgets ForceDebugInfo
+qtci-linux-Ubuntu-16.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.9-x86_64 Clang DeveloperBuild Release QtNamespace NoPch
-qtci-osx-10.9-x86_64 Clang Release NoFramework
+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-Ubuntu-15.04-x86_64 UbuntuTouch_15_04 armv7 GCC Packaging DisableTests OpenGLES2
+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
+qtci-linux-Ubuntu-16.04-x86_64 GCC TestOnly LicenseCheck
diff --git a/coin/platform_configs/qt5.txt b/coin/platform_configs/qt5.txt
index 797d62cd..822ef54c 100644
--- a/coin/platform_configs/qt5.txt
+++ b/coin/platform_configs/qt5.txt
@@ -1,17 +1,13 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
-qtci-windows-10-x86_64 WinRT_10 x86 MSVC2015 Packaging DebugAndRelease Release DisableTests
-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-windows-7-x86 Android_ANY armv7 Mingw49 Packaging Release DisableTests OpenGLES2
-qtci-windows-7-x86 Android_ANY x86 Mingw49 Packaging Release DisableTests OpenGLES2
-qtci-osx-10.10-x86_64 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2
-qtci-osx-10.10-x86_64 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2
+qtci-windows-10-x86_64-5 WinRT_10 MSVC2015 Packaging DebugAndRelease Release DisableTests
+qtci-linux-RHEL-7.2-x86_64 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
+qtci-windows-7-x86-2 Android_ANY armv7 Mingw53 Packaging Release DisableTests OpenGLES2
+qtci-windows-7-x86-2 Android_ANY x86 Mingw53 Packaging Release DisableTests OpenGLES2
+qtci-macos-10.12-x86_64-8 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2
+qtci-macos-10.12-x86_64-8 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2
qtci-linux-RHEL-6.6-x86_64 QNX_660 x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
-qtci-windows-7-x86 QNX_660 armv7 Mingw49 Packaging Release DisableTests OpenGLES2
-qtci-windows-7-x86 QNX_660 x86 Mingw49 Packaging Release DisableTests OpenGLES2
-qtci-windows-8-x86_64 Windows_Phone_8_1 x86 MSVC2013 Packaging DebugAndRelease Release DisableTests
+qtci-windows-7-x86-2 QNX_660 armv7 Mingw53 Packaging Release DisableTests OpenGLES2
+qtci-windows-7-x86-2 QNX_660 x86 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-osx-10.10-x86_64 IOS_ANY multi Clang Packaging DebugAndRelease DisableTests Static
-
-# target arch is used here only for documentation the value is ignored
-qtci-windows-10-x86_64 WinRT_10 armv7 MSVC2015 Packaging DebugAndRelease Release DisableTests
+qtci-linux-RHEL-7.2-x86_64 INTEGRITY_11_04 armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
diff --git a/coin/platform_configs/qtdeclarative.txt b/coin/platform_configs/qtdeclarative.txt
new file mode 100644
index 00000000..c7552671
--- /dev/null
+++ b/coin/platform_configs/qtdeclarative.txt
@@ -0,0 +1,3 @@
+Template Target OS Target arch Compiler Features
+------------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
+qtci-linux-Ubuntu-16.04-x86_64 Boot2Qt_Jethro x86_64 GCC DeveloperBuild
diff --git a/coin/provisioning/common/msvc2015_update.ps1 b/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1
index 618c87c4..fb6a6594 100644
--- a/coin/provisioning/common/msvc2015_update.ps1
+++ b/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1
@@ -30,7 +30,7 @@
## $QT_END_LICENSE$
##
#############################################################################
-. "$PSScriptRoot\helpers.ps1"
+. "$PSScriptRoot\..\..\provisioning\common\helpers.ps1"
# Install Visual Studio $version with $update_version
# Original download page: https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs
diff --git a/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1 b/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1
new file mode 100644
index 00000000..46675c23
--- /dev/null
+++ b/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1
@@ -0,0 +1,49 @@
+############################################################################
+##
+## 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 will install Visual Studio 2017
+
+$version = "2017"
+$url_cache = "http://ci-files01-hki.ci.local/input/windows/mu_visual_studio_professional_" + $version + "_x86_x64_10049787.exe"
+$sha1 = "8d678d27735018a99dc22ddb5412e4e6868991ae"
+$msvcPackage = "C:\Windows\Temp\$version.exe"
+
+
+Download $url_cache $url_cache $msvcPackage
+Verify-Checksum $msvcPackage $sha1
+cmd /c "$msvcPackage --all --norestart --quiet --wait"
+echo "Cleaning $msvcPackage.."
+Remove-Item -Recurse -Force "$msvcPackage"
+echo "Visual Studio = $version" >> ~\versions.txt
diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1
new file mode 100644
index 00000000..fb6a6594
--- /dev/null
+++ b/coin/pre-provisioning/qtci-windows-10-x86_64/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\..\..\provisioning\common\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/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1
new file mode 100644
index 00000000..46675c23
--- /dev/null
+++ b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1
@@ -0,0 +1,49 @@
+############################################################################
+##
+## 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 will install Visual Studio 2017
+
+$version = "2017"
+$url_cache = "http://ci-files01-hki.ci.local/input/windows/mu_visual_studio_professional_" + $version + "_x86_x64_10049787.exe"
+$sha1 = "8d678d27735018a99dc22ddb5412e4e6868991ae"
+$msvcPackage = "C:\Windows\Temp\$version.exe"
+
+
+Download $url_cache $url_cache $msvcPackage
+Verify-Checksum $msvcPackage $sha1
+cmd /c "$msvcPackage --all --norestart --quiet --wait"
+echo "Cleaning $msvcPackage.."
+Remove-Item -Recurse -Force "$msvcPackage"
+echo "Visual Studio = $version" >> ~\versions.txt
diff --git a/coin/provisioning/common/01-windows_removethemall.ps1 b/coin/provisioning/common/01-windows_removethemall.ps1
index 9e64a34d..ebbf15dd 100644
--- a/coin/provisioning/common/01-windows_removethemall.ps1
+++ b/coin/provisioning/common/01-windows_removethemall.ps1
@@ -55,11 +55,6 @@ Function Remove-Path {
[System.Environment]::SetEnvironmentVariable($name,$value,$type)
}
-# Remove Python
-Remove C:\Python27
-Remove-Path C:\python27\scripts
-Remove-Path C:\python27
-
# Remove Android sdk and ndk
Remove C:\utils\android*
[Environment]::SetEnvironmentVariable("ANDROID_NDK_HOME",$null,"User")
diff --git a/coin/provisioning/common/DownloadURL.sh b/coin/provisioning/common/DownloadURL.sh
index 9bf7fdb7..305f2675 100644
--- a/coin/provisioning/common/DownloadURL.sh
+++ b/coin/provisioning/common/DownloadURL.sh
@@ -79,6 +79,10 @@ function DownloadURL {
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
+ $ExceptionSHA1)
+ echo "Failed checksum on $targetFile."
+ exit 1;
+ ;;
esac
}
}
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/InstallFromCompressedFileFromURL.sh b/coin/provisioning/common/InstallFromCompressedFileFromURL.sh
index 1f097d32..e3716597 100644
--- a/coin/provisioning/common/InstallFromCompressedFileFromURL.sh
+++ b/coin/provisioning/common/InstallFromCompressedFileFromURL.sh
@@ -80,7 +80,7 @@ function InstallFromCompressedFileFromURL {
;;
esac
echo "Moving app to $installDirectory"
- sudo mkdir "$installDirectory"
+ sudo mkdir -p "$installDirectory"
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
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 191be290..af7f79ff 100644
--- a/coin/provisioning/common/helpers.ps1
+++ b/coin/provisioning/common/helpers.ps1
@@ -24,7 +24,7 @@ function Extract-7Zip
echo "Extracting '$Source' to '$Destination'..."
if ((Get-Command "7z.exe" -ErrorAction SilentlyContinue) -eq $null) {
- $zipExe = join-path ${env:ProgramFiles(x86)} '7-zip\7z.exe'
+ $zipExe = join-path (${env:ProgramFiles(x86)}, ${env:ProgramFiles} -ne $null)[0] '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
$zipExe = join-path ${env:ProgramW6432} '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
diff --git a/coin/provisioning/common/install_xcode.sh b/coin/provisioning/common/install_xcode.sh
new file mode 100755
index 00000000..f8336bad
--- /dev/null
+++ b/coin/provisioning/common/install_xcode.sh
@@ -0,0 +1,83 @@
+#!/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%/*}/try_catch.sh"
+
+function InstallXCode()
+{
+ ExceptionCPIO=103
+ ExceptionAcceptLicense=105
+
+ sourceFile=$1
+ version=$2
+
+ try
+ (
+ echo "Uncompressing and installing '$sourceFile'"
+ xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -vdmi) || throw $ExceptionCPIO
+
+ echo "Accept license"
+ sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
+
+ echo "Xcode = $version" >> ~/versions.txt
+ )
+ catch || {
+ case $ex_code in
+ $ExceptionCPIO)
+ echo "Failed to unarchive .cpio."
+ exit 1;
+ ;;
+ $ExceptionAcceptLicense)
+ echo "Failed to accept license."
+ exit 1;
+ ;;
+
+ esac
+ }
+
+}
+
diff --git a/coin/provisioning/common/02-python.ps1 b/coin/provisioning/common/python.ps1
index 32972830..3edbc412 100644
--- a/coin/provisioning/common/02-python.ps1
+++ b/coin/provisioning/common/python.ps1
@@ -30,39 +30,40 @@
## $QT_END_LICENSE$
##
#############################################################################
-
+param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# This script installs Python $version.
# Python is required for building Qt 5 from source.
-$version = "2.7.10"
+$version = "2.7.13"
$package = "C:\Windows\temp\python-$version.msi"
# check bit version
-if ([System.Environment]::Is64BitProcess -eq $TRUE) {
+if ( $archVer -eq 64 ) {
+ echo "Running in 64 bit system"
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.amd64.msi"
$internalUrl = "http://ci-files01-hki.ci.local/input/windows/python-$version.amd64.msi"
- $sha1 = "f3a474f6ab191f9b43034c0fb5c98301553775d4"
+ $sha1 = "d9113142bae8829365c595735e1ad1f9f5e2894c"
}
else {
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.msi"
$internalUrl = "http://ci-files01-hki.ci.local/input/windows/python-$version.msi"
- $sha1 = "9e62f37407e6964ee0374b32869b7b4ab050d12a"
+ $sha1 = "7e3b54236dbdbea8fe2458db501176578a4d59c0"
}
echo "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
echo "Installing $package..."
-cmd /c "$package /q"
+cmd /c "msiexec /passive /i $package ALLUSERS=1"
# We need to change allowZip64 from 'False' to 'True' to be able to create ZIP files that use the ZIP64 extensions when the zipfile is larger than 2 GB
echo "Chancing allowZip64 value to 'True'..."
(Get-Content C:\Python27\lib\zipfile.py) | ForEach-Object { $_ -replace "allowZip64=False", "allowZip64=True" } | Set-Content C:\Python27\lib\zipfile.py
echo "Remove $package..."
del $package
-Add-Path $path
+[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\Python27;C:\Python27\Scripts", [EnvironmentVariableTarget]::Machine)
-& python -m ensurepip
+C:\Python27\python.exe -m ensurepip
# Install python virtual env
-pip.exe install virtualenv
+C:\Python27\Scripts\pip.exe install virtualenv
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh
index 1d0630ce..6bb7a37e 100644
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh
@@ -35,13 +35,13 @@
# This script install Android sdk and ndk.
-# It also runs update for SDK API level 18, latest SDK tools, latest platform-tools and build-tools version 23.0.3
+# 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 18 will disable themselves dynamically when running on an Android 16 device.
-# That's why we need to use Andoid-18 API version and decision was made to use it also with Qt 5.6.
+# 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"
@@ -50,7 +50,7 @@ baseUrl="http://ci-files01-hki.ci.local/input/android"
# SDK
sdkPackage="android-sdk_r24.4.1-linux.tgz"
sdkBuildToolsVersion="23.0.3"
-sdkApiLevel="android-18"
+sdkApiLevel="android-21"
sdkUrl="$baseUrl/$sdkPackage"
sdkSha1="725bb360f0f7d04eaccff5a2d57abdd49061326d"
sdkTargetFile="$targetFolder/$sdkPackage"
@@ -96,13 +96,11 @@ InstallAndroidPackage "$targetFolder" $sdkPackage $sdkUrl $sdkSha1 $sdkTargetFil
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..."
+# 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 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=android-18' >> ~/.bashrc
+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
@@ -114,4 +112,3 @@ sdkTools="$(grep Pkg.Revision "$targetFolder"/sdk/tools/source.properties | cut
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-6.6-x86_64/install_icu.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/install_icu.sh
index 02ddda3f..42db3716 100644
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/install_icu.sh
+++ b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/install_icu.sh
@@ -68,3 +68,6 @@ sudo cp -a $tempDir/lib/* /usr/lib64
sudo cp -a $tempDir/* /usr/
sudo /sbin/ldconfig
+
+# Storage version information to ~/versions.txt, which is used to print version information to provision log.
+echo "ICU = $icuVersion" >> ~/versions.txt
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/30-integrity.sh b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/30-integrity.sh
new file mode 100755
index 00000000..ae637a44
--- /dev/null
+++ b/coin/provisioning/qtci-linux-RHEL-7.2-x86_64/30-integrity.sh
@@ -0,0 +1,55 @@
+#!/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 INTEGRITY
+
+source "${BASH_SOURCE%/*}/../common/InstallFromCompressedFileFromURL.sh"
+
+version="11.4.4"
+PrimaryUrl="http://ci-files01-hki.ci.local/input/integrity/ghs_$version.tar.gz"
+AltUrl="$PrimaryUrl" # we lack an external source for this
+SHA1="4afa3c15e13c91734951b73f6b21388294c5d794"
+targetFolder="/opt/ghs"
+appPrefix=""
+
+InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
+
+echo "export INTEGRITY_BSP=platform-cortex-a9" >> ~/.bashrc
+echo "export INTEGRITY_PATH=$targetFolder/comp_201654" >> ~/.bashrc
+echo "export INTEGRITY_DIR=$targetFolder/int1144" >> ~/.bashrc
+echo "export INTEGRITY_GL_INC_DIR=\$INTEGRITY_DIR/INTEGRITY-include/Vivante/sdk/inc" >> ~/.bashrc
+echo "export INTEGRITY_GL_LIB_DIR=\$INTEGRITY_DIR/libs/Vivante" >> ~/.bashrc
+
+echo "INTEGRITY = $version" >> ~/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..1881ae0b
--- /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.216
+
+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..8b28c981
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/002-apt.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$
+##
+#############################################################################
+
+# 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
+ # Support for cross-building to x86 (needed by WebEngine boot2qt builds)
+ sudo DEBIAN_FRONTEND=noninteractive apt -q -y install g++-multilib || 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..f978003b
--- /dev/null
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/003-qemu.sh
@@ -0,0 +1,66 @@
+#!/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"
+
+# First test using QFont fails if fonts-noto-cjk is installed. This happens because
+# running fontcache for that font takes > 5 mins when run on QEMU. Running fc-cache
+# doesn't help since host version creates cache for a wrong architecture and running
+# armv7 fc-cache segfaults on QEMU.
+sudo DEBIAN_FRONTEND=noninteractive apt-get -y remove fonts-noto-cjk
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..48430389
--- /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.216
+
+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-windows-10-x86_64/06-msvc2015_update.ps1 b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
index 83ff3f48..eca6858c 100644..100755
--- a/coin/provisioning/qtci-windows-10-x86_64/06-msvc2015_update.ps1
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
@@ -1,3 +1,5 @@
+#!/bin/bash
+
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
@@ -30,4 +32,19 @@
## $QT_END_LICENSE$
##
#############################################################################
-. "$PSScriptRoot\..\common\msvc2015_update.ps1"
+
+# 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-java.sh b/coin/provisioning/qtci-macos-10.12-x86_64/020-java.sh
new file mode 100755
index 00000000..6ae54526
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/020-java.sh
@@ -0,0 +1,128 @@
+#!/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 JDK
+echo "Installing Java Development Kit"
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadPrimaryUrl=100
+ExceptionDownloadAltUrl=101
+ExceptionSHA1=102
+ExceptionAttachImage=103
+ExceptionInstall=104
+ExceptionDetachImage=105
+ExceptionRemoveTmpFile=106
+ExceptionDisableAutoUpdate=107
+
+
+url=http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/jdk-8u102-macosx-x64.dmg
+url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg
+targetFile=/tmp/jdk-8u102-macosx-x64.dmg
+expectedSha1=1405af955f14e32aae187b5754a716307db22104
+
+try
+(
+ try
+ (
+ echo "Downloading 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 tar.gz from alternative URL '$url_alt'"
+ curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
+ ;;
+ esac
+ }
+ echo "Checking SHA1 on '$targetFile'"
+ echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
+
+ echo Mounting DMG
+ hdiutil attach "$targetFile" || throw $ExceptionAttachImage
+
+ echo Installing JDK
+ (cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /) || throw $ExceptionInstall
+
+ hdiutil detach /dev/disk1s1 || throw $ExceptionDetachImage
+
+ echo "Removing temporary file '$targetFile'"
+ rm "$targetFile" || throw $ExceptionRemoveTmpFile
+
+ echo "Disable auto update"
+ sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false || throw $ExceptionDisableAutoUpdate
+
+ echo "JDK Version = 8 update 102" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionDownloadPrimaryUrl)
+ echo "Failed to download JDK from primary URL."
+ exit 1;
+ ;;
+ $ExceptionDownloadAltUrl)
+ echo "Failed to download JDK from alternative URL."
+ exit 1;
+ ;;
+ $ExceptionSHA1)
+ echo "Failed to check SHA1."
+ exit 1;
+ ;;
+ $ExceptionAttachImage)
+ echo "Failed to attach image."
+ exit 1;
+ ;;
+ $ExceptionInstall)
+ echo "Failed to install JDK."
+ exit 1;
+ ;;
+ $ExceptionDetachImage)
+ echo "Failed to detach image."
+ exit 1;
+ ;;
+ $ExceptionRemoveTmpFile)
+ echo "Failed to remove temporary file."
+ exit 1;
+ ;;
+ $ExceptionDisableAutoUpdate)
+ echo "Failed to disable auto update."
+ exit 1;
+ ;;
+
+ esac
+}
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..97ce19ba
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.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 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"
+
+# shellcheck source=../common/install_xcode.sh
+source "${BASH_SOURCE%/*}/../common/install_xcode.sh"
+
+InstallXCode /net/ci-files01-hki.ci.local/hdd/www/input/mac/macos_10.12_sierra/Xcode_8.2.1.xz 8.2.1
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..de025b55
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-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/macos_10.12_sierra/cmake-3.6.2-Darwin-x86_64.tar.gz"
+AltUrl="https://cmake.org/files/v3.6/cmake-3.6.2-Darwin-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-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-macos-10.12-x86_64/030-android.sh b/coin/provisioning/qtci-macos-10.12-x86_64/030-android.sh
new file mode 100755
index 00000000..e5ab2ced
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/030-android.sh
@@ -0,0 +1,128 @@
+#!/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 install Android sdk and ndk.
+
+# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+# shellcheck source=../common/DownloadURL.sh
+source "${BASH_SOURCE%/*}/../common/DownloadURL.sh"
+
+targetFolder="/opt/android"
+sdkTargetFolder="$targetFolder/sdk"
+
+baseUrl="http://ci-files01-hki.ci.local/input/android"
+baseAltUrl="https://dl.google.com/android/repository/"
+
+toolsVersion="r25.2.5"
+toolsFile="tools_$toolsVersion-macosx.zip"
+ndkVersion="r10e"
+ndkFile="android-ndk-$ndkVersion-darwin-x86_64.zip"
+sdkBuildToolsVersion="25.0.2"
+sdkApiLevel="android-21"
+
+toolsSha1="d2168d963ac5b616e3d3ddaf21511d084baf3659"
+ndkSha1="6be8598e4ed3d9dd42998c8cb666f0ee502b1294"
+
+toolsDlUrl="$baseUrl/$toolsFile"
+ndkDlUrl="$baseUrl/$ndkFile"
+toolsAltDlUrl="$baseAltUrl/$toolsFile"
+ndkAltDlUrl="$baseAltUrl/$ndkFile"
+
+toolsTargetFile="/tmp/$toolsFile"
+ndkTargetFile="/tmp/$ndkFile"
+
+ExceptionUnzipTools=100
+ExceptionUnzipNdk=101
+ExceptionRmTools=102
+ExceptionRmNdk=103
+ExceptionSdkManager=104
+
+try
+(
+ DownloadURL "$toolsDlUrl" "$toolsAltDlUrl" "$toolsSha1" "$toolsTargetFile"
+ DownloadURL "$ndkDlUrl" "$ndkAltDlUrl" "$ndkSha1" "$ndkTargetFile"
+ echo "Unzipping Android NDK to '$targetFolder'"
+ sudo unzip -q "$ndkTargetFile" -d "$targetFolder" || throw $ExceptionUnzipNdk
+ echo "Unzipping Android Tools to '$sdkTargetFolder'"
+ sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
+
+ echo "Removing temporary files."
+ rm "$toolsTargetFile" || throw $ExceptionRmTools
+ rm "$ndkTargetFile" || throw $ExceptionRmNdk
+
+ echo "Changing ownership of Android files."
+ sudo chown -R qt:wheel "$targetFolder"
+
+ echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
+ echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
+
+ echo "export ANDROID_SDK_ROOT=$sdkTargetFolder" >> ~/.bashrc
+ echo "export ANDROID_NDK_HOME=$targetFolder/android-ndk-$ndkVersion" >> ~/.bashrc
+ echo "export ANDROID_NDK_HOST=darwin-x86_64" >> ~/.bashrc
+ echo "export ANDROID_API_VERSION=$sdkApiLevel" >> ~/.bashrc
+
+ echo "Android SDK tools = $toolsVersion" >> ~/version.txt
+ echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/version.txt
+ echo "Android SDK API level = $sdkApiLevel" >> ~/version.txt
+ echo "Android NDK = $ndkVersion" >> ~/version.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionUnzipTools)
+ echo "Failed to unzip Android SDK Tools."
+ exit 1;
+ ;;
+ $ExceptionUnzipNdk)
+ echo "Failed to unzip Android NDK."
+ exit 1;
+ ;;
+ $ExceptionRmTools)
+ echo "Failed to remove temporary tools package '$toolsTargetFile'."
+ exit 1;
+ ;;
+ $ExceptionRmNdk)
+ echo "Failed to remove temporary NDK package '$ndkTargetFile'."
+ exit 1;
+ ;;
+ $ExceptionSdkManager)
+ echo "Failed to run sdkmanager."
+ exit 1;
+ ;;
+ esac
+}
+
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh b/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh
new file mode 100755
index 00000000..acd0bd74
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.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 install OpenSSL
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+# shellcheck source=../common/InstallFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallFromCompressedFileFromURL.sh"
+
+opensslVersion="1.0.2k"
+opensslFile="openssl-$opensslVersion.tar.gz"
+opensslDlUrl="http://ci-files01-hki.ci.local/input/openssl/$opensslFile"
+opensslAltDlUrl="https://www.openssl.org/source/$opensslFile"
+opensslSha1="5f26a624479c51847ebd2f22bb9f84b3b44dcb44"
+
+# Below target location has been hard coded into Coin.
+# QTQAINFRA-1195
+opensslTargetLocation="/usr/local/opt/openssl"
+
+ExceptionCD=100
+ExceptionConfig=101
+ExceptionMake=102
+ExceptionInstall=103
+ExceptionLN=104
+ExceptionCertificate=105
+ExceptionCleanup=106
+
+try
+(
+ InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion"
+ cd "/tmp/openssl-$opensslVersion" || throw $ExceptionCD
+ pwd
+ sudo ./config --prefix=/usr/local/openssl-$opensslVersion || throw $ExceptionConfig
+ echo "Running 'make' for OpenSSL"
+ sudo make --silent > /tmp/openssl_make.log 2>&1 || throw $ExceptionMake
+ echo "Running 'make install' for OpenSSL"
+ sudo make --silent install > /tmp/openssl_make_install.log 2>&1 || throw $ExceptionInstall
+
+ path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/')
+ sudo mkdir -p "$path"
+ sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation || throw $ExceptionLN
+
+ echo "export PATH=\"$opensslTargetLocation/bin:$PATH\"" >> ~/.bashrc
+ echo "export MANPATH=\"$opensslTargetLocation/share/man:$MANPATH\"" >> ~/.bashrc
+
+ security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
+ security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
+
+ sudo rm -rf /tmp/openssl-$opensslVersion || throw $ExceptionCleanup
+
+ echo "OpenSSL = $opensslVersion" >> ~/versions.txt
+)
+catch || {
+ case $ex_code in
+ $ExceptionCD)
+ echo "Failed to change directory to /tmp/openssl-$opensslVersion."
+ exit 1;
+ ;;
+ $ExceptionConfig)
+ echo "Failed to run config for OpenSSL."
+ exit 1;
+ ;;
+ $ExceptionMake)
+ echo "Failed to run 'make' for OpenSSL."
+ exit 1;
+ ;;
+ $ExceptionInstall)
+ echo "Failed to run 'make install' for OpenSSL."
+ exit 1;
+ ;;
+ $ExceptionLN)
+ echo "Failed to create a soft link for OpenSSL."
+ exit 1;
+ ;;
+ $ExceptionCertificate)
+ echo "Failed to install Certificate for OpenSSL."
+ exit 1;
+ ;;
+ $ExceptionCleanup)
+ echo "Failed to clean up /tmp/openssl-$opensslVersion."
+ exit 1;
+ ;;
+ esac
+}
diff --git a/coin/provisioning/qtci-osx-10.10-x86_64/android.sh b/coin/provisioning/qtci-osx-10.10-x86_64/android.sh
index 559eabd6..fae4f7b9 100644
--- a/coin/provisioning/qtci-osx-10.10-x86_64/android.sh
+++ b/coin/provisioning/qtci-osx-10.10-x86_64/android.sh
@@ -35,11 +35,12 @@
# This script install Android sdk and ndk.
-# It also runs update for SDK API level 18, latest SDK tools, latest platform-tools and - build-tools
+# 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 18 will disable themselves dynamically when running on an Android 16 device.
-# That's why we need to use Andoid-18 API version and decision was made to use it also with Qt 5.6.
+# 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"
@@ -48,7 +49,7 @@ baseUrl="http://ci-files01-hki.ci.local/input/android"
# SDK
sdkVersion="android-sdk_r24.4.1-macosx.zip"
sdkBuildToolsVersion="24.0.2"
-sdkApiLevel="android-18"
+sdkApiLevel="android-21"
sdkUrl="$baseUrl/$sdkVersion"
sdkSha1="85a9cccb0b1f9e6f1f616335c5f07107553840cd"
sdkTargetFile="$targetFolder/$sdkVersion"
@@ -93,10 +94,10 @@ InstallAndroidPackage $targetFolder $sdkVersion $sdkUrl $sdkSha1 $sdkTargetFile
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 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..."
+# 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 18, but we can override this by setting ANDROID_API_VERSION=android-18
+# 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-18' >> ~/.bashrc
+echo 'export ANDROID_API_VERSION=android-21' >> ~/.bashrc
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..47bf03f8
--- /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.216
+
+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-windows-10-x86/06-msvc2015_update.ps1 b/coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh
index 83ff3f48..dcd8fead 100644..100755
--- a/coin/provisioning/qtci-windows-10-x86/06-msvc2015_update.ps1
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/015-xz.sh
@@ -1,3 +1,5 @@
+#!/bin/bash
+
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
@@ -30,4 +32,19 @@
## $QT_END_LICENSE$
##
#############################################################################
-. "$PSScriptRoot\..\common\msvc2015_update.ps1"
+
+# 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..7555c752
--- /dev/null
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/020-xcode.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 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"
+
+# shellcheck source=../common/install_xcode.sh
+source "${BASH_SOURCE%/*}/../common/install_xcode.sh"
+
+InstallXCode /net/ci-files01-hki.ci.local/hdd/www/input/mac/Xcode_8.2.xz 8.2
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..085225d7
--- /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-Darwin-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-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh b/coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh
index 30a6caad..4d938890 100644..100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/006-qt-build-dependencies.sh
+++ b/coin/provisioning/qtci-osx-10.11-x86_64/025-mysql.sh
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/bash
#############################################################################
##
@@ -33,14 +33,23 @@
##
#############################################################################
-sudo apt-get -y build-dep qt5-default
+# This script installs MySQL
-# 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
+# MySQL is needed for Qt to be able to support MySQL
-# qtmultimedia
-sudo apt-get -y install libasound2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev
+# 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
-# 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
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 559eabd6..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 18, 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 18 will disable themselves dynamically when running on an Android 16 device.
-# That's why we need to use Andoid-18 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-18"
-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 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=android-18' >> ~/.bashrc
diff --git a/coin/provisioning/qtci-windows-10-x86/02-python.ps1 b/coin/provisioning/qtci-windows-10-x86/02-python.ps1
index 0e401c02..27c618e1 100644
--- a/coin/provisioning/qtci-windows-10-x86/02-python.ps1
+++ b/coin/provisioning/qtci-windows-10-x86/02-python.ps1
@@ -1 +1 @@
-. "$PSScriptRoot\..\common\02-python.ps1"
+. "$PSScriptRoot\..\common\python.ps1" 32
diff --git a/coin/provisioning/qtci-windows-10-x86/msvc_2015_update3_patch.ps1 b/coin/provisioning/qtci-windows-10-x86/msvc_2015_update3_patch.ps1
new file mode 100644
index 00000000..f16b5ef4
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86/msvc_2015_update3_patch.ps1
@@ -0,0 +1,50 @@
+#############################################################################
+##
+## 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"
+
+# Install Cumulative Servicing Release Visual Studio 2015 update 3
+# Original download page: https://msdn.microsoft.com/en-us/library/mt752379.aspx
+# http://ci-files01-hki.ci.local/input/windows/vs14-kb3165756.exe
+
+$version = "2015 update3 (KB3165756)"
+$package = "C:\Windows\Temp\vs14-kb3165756.exe"
+$url_cache = "http://ci-files01-hki.ci.local/input/windows/vs14-kb3165756.exe"
+$url_official = "http://go.microsoft.com/fwlink/?LinkID=816878"
+$sha1 = "6a21d9b291ca75d44baad95e278fdc0d05d84c02"
+
+echo "Fetching patch for Visual Studio $version..."
+Download $url_official $url_cache $package
+Verify-Checksum $package $sha1
+echo "Installing patch for Visual Studio $version..."
+cmd /c "$package /norestart /Quiet"
+remove-item $package
diff --git a/coin/provisioning/qtci-windows-10-x86_64/02-python.ps1 b/coin/provisioning/qtci-windows-10-x86_64/02-python.ps1
index 0e401c02..44c1c5ff 100644
--- a/coin/provisioning/qtci-windows-10-x86_64/02-python.ps1
+++ b/coin/provisioning/qtci-windows-10-x86_64/02-python.ps1
@@ -1 +1 @@
-. "$PSScriptRoot\..\common\02-python.ps1"
+. "$PSScriptRoot\..\common\python.ps1" 64
diff --git a/coin/provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1 b/coin/provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1
new file mode 100644
index 00000000..f16b5ef4
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1
@@ -0,0 +1,50 @@
+#############################################################################
+##
+## 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"
+
+# Install Cumulative Servicing Release Visual Studio 2015 update 3
+# Original download page: https://msdn.microsoft.com/en-us/library/mt752379.aspx
+# http://ci-files01-hki.ci.local/input/windows/vs14-kb3165756.exe
+
+$version = "2015 update3 (KB3165756)"
+$package = "C:\Windows\Temp\vs14-kb3165756.exe"
+$url_cache = "http://ci-files01-hki.ci.local/input/windows/vs14-kb3165756.exe"
+$url_official = "http://go.microsoft.com/fwlink/?LinkID=816878"
+$sha1 = "6a21d9b291ca75d44baad95e278fdc0d05d84c02"
+
+echo "Fetching patch for Visual Studio $version..."
+Download $url_official $url_cache $package
+Verify-Checksum $package $sha1
+echo "Installing patch for Visual Studio $version..."
+cmd /c "$package /norestart /Quiet"
+remove-item $package
diff --git a/coin/provisioning/qtci-windows-7-x86/02-python.ps1 b/coin/provisioning/qtci-windows-7-x86/02-python.ps1
index 0e401c02..27c618e1 100644
--- a/coin/provisioning/qtci-windows-7-x86/02-python.ps1
+++ b/coin/provisioning/qtci-windows-7-x86/02-python.ps1
@@ -1 +1 @@
-. "$PSScriptRoot\..\common\02-python.ps1"
+. "$PSScriptRoot\..\common\python.ps1" 32
diff --git a/coin/provisioning/qtci-windows-7-x86/06-android.ps1 b/coin/provisioning/qtci-windows-7-x86/06-android.ps1
index 96be39a3..ca641d25 100644
--- a/coin/provisioning/qtci-windows-7-x86/06-android.ps1
+++ b/coin/provisioning/qtci-windows-7-x86/06-android.ps1
@@ -1,10 +1,10 @@
. "$PSScriptRoot\..\common\helpers.ps1"
# This script installs Android sdk and ndk
-# It also runs update for SDK API level 18, latest SDK tools, latest platform-tools and build-tools version $sdkBuildToolsVersion
+# It also runs update for SDK API level 21, latest SDK tools, latest platform-tools and build-tools version $sdkBuildToolsVersion
# 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 18 will disable themselves dynamically when running on Android 16 device.
-# That's why we need to use Andoid-18 API version and decision was made to use it also with Qt 5.6.
+# 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.
# NDK
$ndkVersion = "r10e"
@@ -17,7 +17,7 @@ $ndkZip = "c:\Windows\Temp\android_ndk_$ndkVersion.zip"
# SDK
$sdkVersion = "r24.4.1"
$sdkApi = "ANDROID_API_VERSION"
-$sdkApiLevel = "android-18"
+$sdkApiLevel = "android-21"
$sdkBuildToolsVersion = "23.0.3"
$sdkCachedUrl= "http://ci-files01-hki.ci.local/input/android/android-sdk_$sdkVersion-windows.zip"
$sdkOfficialUrl = "https://dl.google.com/android/android-sdk_$sdkVersion-windows.zip"
diff --git a/coin/provisioning/qtci-windows-8-x86/02-python.ps1 b/coin/provisioning/qtci-windows-8-x86/02-python.ps1
deleted file mode 100644
index 0e401c02..00000000
--- a/coin/provisioning/qtci-windows-8-x86/02-python.ps1
+++ /dev/null
@@ -1 +0,0 @@
-. "$PSScriptRoot\..\common\02-python.ps1"
diff --git a/coin/provisioning/qtci-windows-8-x86/06-python.ps1 b/coin/provisioning/qtci-windows-8-x86/06-python.ps1
new file mode 100644
index 00000000..27c618e1
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8-x86/06-python.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\python.ps1" 32
diff --git a/coin/provisioning/qtci-windows-8-x86_64/02-python.ps1 b/coin/provisioning/qtci-windows-8-x86_64/02-python.ps1
deleted file mode 100644
index 0e401c02..00000000
--- a/coin/provisioning/qtci-windows-8-x86_64/02-python.ps1
+++ /dev/null
@@ -1 +0,0 @@
-. "$PSScriptRoot\..\common\02-python.ps1"
diff --git a/coin/provisioning/qtci-windows-8-x86_64/06-python.ps1 b/coin/provisioning/qtci-windows-8-x86_64/06-python.ps1
new file mode 100644
index 00000000..44c1c5ff
--- /dev/null
+++ b/coin/provisioning/qtci-windows-8-x86_64/06-python.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\python.ps1" 64
diff --git a/init-repository b/init-repository
index 7a97c199..861511b9 100755
--- a/init-repository
+++ b/init-repository
@@ -144,7 +144,7 @@ Options:
For example:
- --mirror user\@machine:/foo/bar/
+ --mirror user\@machine:/foo/bar/qt/
...will use the following as a mirror for qtbase:
@@ -167,13 +167,13 @@ my $script_path = abs_path($0);
$script_path =~ s,[/\\][^/\\]+$,,;
my $GERRIT_SSH_BASE
- = 'ssh://@USER@codereview.qt-project.org@PORT@/';
+ = 'ssh://@USER@codereview.qt-project.org@PORT@/qt/';
my $BER_MIRROR_URL_BASE
- = 'git://hegel/';
+ = 'git://hegel/qt/';
my $OSLO_MIRROR_URL_BASE
- = 'git://qilin/';
+ = 'git://qilin/qt/';
sub new
{
@@ -316,7 +316,7 @@ sub git_clone_all_submodules
my ($mod, $base) = ($1, $3);
next if ($base !~ /^\.\.\//);
$base = $my_repo_base.'/'.$base;
- while ($base =~ s,/(?!\.\./)[^/]+/\.\./,/,g) {}
+ while ($base =~ s,(?!\.\./)[^/]+/\.\./,,g) {}
$subbases{$mod} = $base;
} elsif ($2 eq "update") {
push @subset, '-'.$1 if ($3 eq 'none');
@@ -381,7 +381,7 @@ sub git_clone_all_submodules
# manually clone each repo here, so we can easily use reference repos, mirrors etc
my @configresult = qx(git config -l);
foreach my $line (@configresult) {
- # Example line: submodule.qtqa.url=git://gitorious.org/qt/qtqa.git
+ # Example line: submodule.qtqa.url=git://code.qt.io/qt/qtqa.git
next if ($line !~ /submodule\.([^.=]+)\.url=/);
my $module = $1;
@@ -638,12 +638,12 @@ sub run
chomp(my $url = `git config remote.origin.url`);
die("Have no origin remote.\n") if (!$url);
$url =~ s,\.git$,,;
- $url =~ s,qt/qt5$,,;
+ $url =~ s/qt5$//;
$self->{'base-url'} = $url;
- $self->git_clone_all_submodules('qt/qt5', $self->{branch}, @{$self->{'module-subset'}});
+ $self->git_clone_all_submodules('qt5', $self->{branch}, @{$self->{'module-subset'}});
- $self->git_add_remotes('qt/qt5');
+ $self->git_add_remotes('qt5');
$self->git_install_hooks;
diff --git a/qt.pro b/qt.pro
index 1915fc2c..373b60c9 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
@@ -47,14 +43,14 @@ for (ever) {
}
}
-modules = $$sort_depends(modules, module., .depends .recommends)
+modules = $$sort_depends(modules, module., .depends .recommends .serialize)
modules = $$reverse(modules)
for (mod, modules) {
equals(module.$${mod}.qt, false): \
next()
deps = $$eval(module.$${mod}.depends)
- recs = $$eval(module.$${mod}.recommends)
+ recs = $$eval(module.$${mod}.recommends) $$eval(module.$${mod}.serialize)
for (d, $$list($$deps $$recs)): \
!contains(modules, $$d): \
error("'$$mod' depends on undeclared '$$d'.")
diff --git a/qt3d b/qt3d
-Subproject c64df4a307aff064433f57805561cb445c0e285
+Subproject a2b7483fa18e109011246fba5e7963338a77af5
diff --git a/qtactiveqt b/qtactiveqt
-Subproject 1ef04fedc0230450a8588bcb2ac6069693a0336
+Subproject dfc34ee575ca7790ec403c6510a9ccc469c0799
diff --git a/qtandroidextras b/qtandroidextras
-Subproject d94fb02a55705ba913fcf4f871528ea8aee52ea
+Subproject f0561e640a488fa1870cacaae897133c7fdf636
diff --git a/qtbase b/qtbase
-Subproject d1210281e41008ce2e3510aa5cfb3ebea1c5773
+Subproject 718216ee0b571d09702ff50dd108ae92bdc4c22
diff --git a/qtcanvas3d b/qtcanvas3d
-Subproject a50cb9128477474932fc5761e30226582deaf6b
+Subproject 08458d0dcfba8421c03ed9c7dec7435619f0b70
diff --git a/qtcharts b/qtcharts
-Subproject f7b477ad0e2f9ab4f3a95e7547a92dccab7bb83
+Subproject cc4e79d6200b0495a5c4d1a7faa773906b1ac99
diff --git a/qtconnectivity b/qtconnectivity
-Subproject 519ac44fbbeed7ab74fc1f733fcf9057075d094
+Subproject 5391a325eadcee86a494aa96a3f8edae1be5555
diff --git a/qtdatavis3d b/qtdatavis3d
-Subproject beb420e3995010b5729608922022e65558f5876
+Subproject 73ec35fa12a4b150670ea93d3021ca8e658063e
diff --git a/qtdeclarative b/qtdeclarative
-Subproject 8d0d1b11e381130dec12f46b959c3107c3f4716
+Subproject 749a7212e903d8e8c6f256edb1836b9449cc7fe
diff --git a/qtdoc b/qtdoc
-Subproject 2337a01600ec81a70c8711a7c37a8e55bc14d12
+Subproject f155521639b9970effddca1244b98558ed4db70
diff --git a/qtgamepad b/qtgamepad
-Subproject 752d4319660daf69c725103dae5325cf898adbb
+Subproject 36846eca9ae810d213b2fe2ae5d9ff11137d459
diff --git a/qtgraphicaleffects b/qtgraphicaleffects
-Subproject 8e1f0ecad3fdb93b80663ea3fad7013eeb42450
+Subproject e66fd901fb9e18d45182db56ec3ce70f401d2ac
diff --git a/qtimageformats b/qtimageformats
-Subproject 03e507c8f3816053257b3c351d79c494b6f9174
+Subproject c7a6a451a5c277556e28dfb3b4b943719cdda7f
diff --git a/qtlocation b/qtlocation
-Subproject 0023c72390d7055a1446f8fb38e0415be134f50
+Subproject c2691cf479c88ba0f74492195912cd9b62ce4e6
diff --git a/qtmacextras b/qtmacextras
-Subproject f1d8761b93fc3f23cb537b6e06f4502a3f214df
+Subproject a26ed9570c95f2315a2fc0b0f58d2cfebe955a0
diff --git a/qtmultimedia b/qtmultimedia
-Subproject d5d7dcfb15c0b5c5e9009b83fba922ea0b7e86f
+Subproject 021e8989308fba30425e7a0f34f4e176a8aa3cc
diff --git a/qtnetworkauth b/qtnetworkauth
-Subproject 034b35a3bcbc34509f77b46d3754196c9d53552
+Subproject aeb49ab5e1d7ebe2aaff6579757dacae45579c8
diff --git a/qtpurchasing b/qtpurchasing
-Subproject 1e16d026f1081ce132b999f0704ceeec269f3af
+Subproject 6a8bd70e53133092315a2b217dff4310792f605
diff --git a/qtquick1 b/qtquick1
-Subproject 64faeb0d8003e699a4d09e7dcee1ef6eb10302a
+Subproject 92c847e56d94c9032f3fa83922742e455233e4f
diff --git a/qtquickcontrols b/qtquickcontrols
-Subproject 378bd7b4454a5a049072ae1043981984f30e832
+Subproject e56eb1fc60d614b652400030074ca334deea98b
diff --git a/qtquickcontrols2 b/qtquickcontrols2
-Subproject 91e29613f9671989455345a01da9f840a98d06f
+Subproject c8e9b5f25fb12c3b7983658d738165181b4d667
diff --git a/qtremoteobjects b/qtremoteobjects
new file mode 160000
+Subproject 2b6c91ff99401305a38687ae252d70c5227d293
diff --git a/qtscript b/qtscript
-Subproject 963cefe17376d2b0a4be448d9b025c4e31c579b
+Subproject e00ca9b6bec2adf78fd14e02376ecf1b55a93b0
diff --git a/qtscxml b/qtscxml
-Subproject 75cb3ffebcc7c1e617e3ba4b85adb147e30ca36
+Subproject 384cb7975d9caa4e508454d811d2e391763e598
diff --git a/qtsensors b/qtsensors
-Subproject 722194f5cdfc04a1be875249507067f913ab277
+Subproject 760e62003843e79d0b9d56cfb1a64d4d86992b9
diff --git a/qtserialbus b/qtserialbus
-Subproject 90be9fc65329509229eb17aef74e400fada58da
+Subproject 0ac7bc6e57be2a7c2ee14bfaf7489e20daf3edc
diff --git a/qtserialport b/qtserialport
-Subproject 39d79e16577331f2a8f84df2f63d28e2f03a1ca
+Subproject d320f01018f0273e4fea2e0a7aa8f30ee812958
diff --git a/qtspeech b/qtspeech
-Subproject 4320724b8acd83aa4a398e7e7f42e8c1e0ee197
+Subproject 4103c273e4d4ca4697e9b95c1631b31bef2891f
diff --git a/qtsvg b/qtsvg
-Subproject 02ed4c65618b0f27b9ccb6867ab4d633612415c
+Subproject 0b48e0821b9691ff369ad7b401cbf1f63c6397a
diff --git a/qttools b/qttools
-Subproject ae4823946c7ab4037d4bde8d4d0e43c046fea4c
+Subproject 5c7b771829c52400ddd8f441972b37ce92da3b7
diff --git a/qttranslations b/qttranslations
-Subproject b01c4e637ba19b52f393f1bd22c4d5d734b769c
+Subproject 1b2c07c5fe056321586ce0b4e334398d77505a6
diff --git a/qtvirtualkeyboard b/qtvirtualkeyboard
-Subproject 19c3a43e8a7d3ea1298099aa733f734a6224ac8
+Subproject bfa8da56b1edd77ec416c24b96d33db94368be8
diff --git a/qtwayland b/qtwayland
-Subproject a92eab837f7a7088ddd26bda2bb10d47c9c1214
+Subproject a5dd3692697fcf905749b5686d5d7bfbf47969e
diff --git a/qtwebchannel b/qtwebchannel
-Subproject 6015604df92ceea6021268a2161da29fb89e073
+Subproject 4a95a4e603e1bfd8e365274a5888dcdbb6bb42e
diff --git a/qtwebengine b/qtwebengine
-Subproject df70ae6f3d37be262ae3b208bad26325a6dfcb4
+Subproject f88200c6b44a5e68f7d9fabde9ac58c86728acb
diff --git a/qtwebkit b/qtwebkit
-Subproject 0b48569e2bf9afc1b6ca5e359c3a948dd8c7761
+Subproject f27089657a207ef8c5c9d27d661d3d12c3af8df
diff --git a/qtwebkit-examples b/qtwebkit-examples
-Subproject ac8c2122bba9e2ba8887fb5586ca4a8a119cc40
+Subproject 822426abc77a74752b0ee0da4d0a1c106c4dac2
diff --git a/qtwebsockets b/qtwebsockets
-Subproject d5e2b4bba1e19a51780aa68d47771065755883b
+Subproject 91582c53c5c3b404169ce2a44d75ac810204351
diff --git a/qtwebview b/qtwebview
-Subproject 801760d37833f33b0395e610755de9910b65caf
+Subproject f7f8f8f6c12b8617b4d9f89dd2aaaf241a1a6f8
diff --git a/qtwinextras b/qtwinextras
-Subproject f7239c69779e7c9e612a6b3ddb0ae1479d2bd5c
+Subproject 7be0ff7fe32ef01839de4ad0a8142ca05438b50
diff --git a/qtx11extras b/qtx11extras
-Subproject 66191eb5d4f41083919d1fce4f1d4ab15bb1a14
+Subproject 8c44529ed5269bc2130c27ba9733d262143424e
diff --git a/qtxmlpatterns b/qtxmlpatterns
-Subproject f799a226b1025bf7158bc00dff35ee060f57a13
+Subproject da19c9882295a8f3216284935c05ad4b89c445b