aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitmodules92
-rw-r--r--LGPL_EXCEPTION.txt22
-rw-r--r--coin/platform_configs/default.txt4
-rw-r--r--coin/platform_configs/qt5.txt6
-rw-r--r--coin/platform_configs/qtbase.txt1
-rwxr-xr-xcoin/provisioning/common/linux/android_linux.sh4
-rwxr-xr-xcoin/provisioning/common/linux/open62541.sh6
-rw-r--r--coin/provisioning/common/linux/testserver/apache2/Dockerfile6
-rw-r--r--coin/provisioning/common/linux/testserver/danted/Dockerfile9
-rwxr-xr-xcoin/provisioning/common/linux/testserver/danted/danted93
-rwxr-xr-xcoin/provisioning/common/linux/testserver/danted/danted-authenticating97
-rwxr-xr-xcoin/provisioning/common/linux/testserver/docker_testserver.sh58
-rw-r--r--coin/provisioning/common/linux/testserver/ftp-proxy/Dockerfile3
-rw-r--r--coin/provisioning/common/linux/testserver/squid/Dockerfile3
-rw-r--r--coin/provisioning/common/linux/testserver/vsftpd/Dockerfile6
-rwxr-xr-xcoin/provisioning/common/macos/cmake.sh10
-rwxr-xr-xcoin/provisioning/common/macos/install_xcode.sh6
-rwxr-xr-xcoin/provisioning/common/macos/python3.sh6
-rw-r--r--coin/provisioning/common/shared/requirements.txt19
-rw-r--r--coin/provisioning/common/windows/android-openssl.ps16
-rw-r--r--coin/provisioning/common/windows/android.ps14
-rw-r--r--[-rwxr-xr-x]coin/provisioning/common/windows/opcua_unifiedautomation.ps1 (renamed from coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/42-freeopcua.sh)44
-rw-r--r--coin/provisioning/common/windows/open62541.ps1261
-rw-r--r--coin/provisioning/common/windows/python3.ps17
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh10
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh8
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh17
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh4
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh6
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh80
-rwxr-xr-xcoin/provisioning/qtci-linux-RHEL-7.4-x86_64/04-install-packages.sh8
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh7
-rwxr-xr-xcoin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh)21
-rwxr-xr-xcoin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-pythondev.sh8
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/30-android.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/01-sha1sum-compatibility.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh)30
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh3
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh7
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/05-systemsetup.sh89
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh5
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh9
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/15-xz.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh)23
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/20-java.sh3
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh53
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/21-install-commandlinetools.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh)11
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh6
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh6
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-mysql.sh58
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-pip.sh6
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh57
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh7
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/26-virtualenv.sh6
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/27-libclang.sh7
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/30-android.sh84
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/30-fbx.sh7
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/35-openssl.sh76
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh (renamed from coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh)29
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/55-signtools.sh138
-rwxr-xr-xcoin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh4
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/79-opcua_unifiedautomation.ps11
-rw-r--r--coin/provisioning/qtci-windows-10-x86_64/79-open62541.ps11
-rw-r--r--coin/provisioning/qtci-windows-7-x86/79-open62541.ps12
m---------qt3d0
m---------qtactiveqt0
m---------qtandroidextras0
m---------qtbase0
m---------qtcanvas3d0
m---------qtcharts0
m---------qtconnectivity0
m---------qtdatavis3d0
m---------qtdeclarative0
m---------qtdoc0
m---------qtenginio0
m---------qtgamepad0
m---------qtgraphicaleffects0
m---------qtimageformats0
m---------qtlocation0
m---------qtmacextras0
m---------qtmultimedia0
m---------qtnetworkauth0
m---------qtpurchasing0
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---------qtwebglplugin0
m---------qtwebsockets0
m---------qtwebview0
m---------qtwinextras0
m---------qtx11extras0
m---------qtxmlpatterns0
107 files changed, 1406 insertions, 284 deletions
diff --git a/.gitmodules b/.gitmodules
index 9ac0ec9c..c7a6947d 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,66 +1,66 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
- branch = 5.11
+ branch = dev
status = essential
[submodule "qtsvg"]
depends = qtbase
path = qtsvg
url = ../qtsvg.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtdeclarative"]
depends = qtbase
recommends = qtsvg qtxmlpatterns
path = qtdeclarative
url = ../qtdeclarative.git
- branch = 5.11
+ branch = dev
status = essential
[submodule "qtactiveqt"]
depends = qtbase
path = qtactiveqt
url = ../qtactiveqt.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtscript"]
depends = qtbase
recommends = qttools
path = qtscript
url = ../qtscript.git
- branch = 5.11
+ branch = dev
status = deprecated
[submodule "qtmultimedia"]
depends = qtbase
recommends = qtdeclarative
path = qtmultimedia
url = ../qtmultimedia.git
- branch = 5.11
+ branch = dev
status = essential
[submodule "qttools"]
depends = qtbase
recommends = qtdeclarative qtactiveqt
path = qttools
url = ../qttools.git
- branch = 5.11
+ branch = dev
status = essential
[submodule "qtxmlpatterns"]
depends = qtbase
path = qtxmlpatterns
url = ../qtxmlpatterns.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qttranslations"]
depends = qttools
path = qttranslations
url = ../qttranslations.git
- branch = 5.11
+ branch = dev
status = essential
priority = 30
[submodule "qtdoc"]
- depends = qtdeclarative
+ depends = qtdeclarative qttools
path = qtdoc
url = ../qtdoc.git
- branch = 5.11
+ branch = dev
status = essential
priority = 40
[submodule "qtrepotools"]
@@ -81,14 +81,14 @@
recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport
path = qtlocation
url = ../qtlocation.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtsensors"]
depends = qtbase
recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtsystems"]
depends = qtbase
@@ -121,191 +121,185 @@
recommends = qtdeclarative qtandroidextras
path = qtconnectivity
url = ../qtconnectivity.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtwayland"]
depends = qtbase
recommends = qtdeclarative
path = qtwayland
url = ../qtwayland.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qt3d"]
depends = qtbase
recommends = qtdeclarative qtimageformats qtgamepad
path = qt3d
url = ../qt3d.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtimageformats"]
depends = qtbase
path = qtimageformats
url = ../qtimageformats.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtgraphicaleffects"]
depends = qtdeclarative
path = qtgraphicaleffects
url = ../qtgraphicaleffects.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtquickcontrols"]
depends = qtdeclarative
recommends = qtgraphicaleffects
path = qtquickcontrols
url = ../qtquickcontrols.git
- branch = 5.11
- status = essential
+ branch = dev
+ status = addon
[submodule "qtserialbus"]
depends = qtserialport
path = qtserialbus
url = ../qtserialbus.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtserialport"]
depends = qtbase
path = qtserialport
url = ../qtserialport.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtx11extras"]
depends = qtbase
path = qtx11extras
url = ../qtx11extras.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtmacextras"]
depends = qtbase
path = qtmacextras
url = ../qtmacextras.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtwinextras"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtwinextras
url = ../qtwinextras.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtandroidextras"]
depends = qtbase
path = qtandroidextras
url = ../qtandroidextras.git
- branch = 5.11
- status = addon
-[submodule "qtenginio"]
- depends = qtdeclarative
- path = qtenginio
- url = ../qtenginio.git
branch = dev
- status = ignore
+ status = addon
[submodule "qtwebsockets"]
depends = qtbase
recommends = qtdeclarative
path = qtwebsockets
url = ../qtwebsockets.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtwebchannel"]
depends = qtbase
recommends = qtdeclarative qtwebsockets
path = qtwebchannel
url = ../qtwebchannel.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtwebengine"]
depends = qtquickcontrols qtwebchannel
recommends = qtlocation qttools
path = qtwebengine
url = ../qtwebengine.git
- branch = 5.11
+ branch = dev
status = addon
priority = 10
[submodule "qtcanvas3d"]
depends = qtdeclarative
path = qtcanvas3d
url = ../qtcanvas3d.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtquickcontrols2"]
depends = qtgraphicaleffects
recommends = qtimageformats
path = qtquickcontrols2
url = ../qtquickcontrols2.git
- branch = 5.11
- status = addon
+ branch = dev
+ status = essential
[submodule "qtpurchasing"]
depends = qtbase
recommends = qtdeclarative qtandroidextras
path = qtpurchasing
url = ../qtpurchasing.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtcharts"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtcharts
url = ../qtcharts.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtdatavis3d"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtdatavis3d
url = ../qtdatavis3d.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtvirtualkeyboard"]
depends = qtbase qtdeclarative qtsvg
recommends = qtmultimedia qtquickcontrols
path = qtvirtualkeyboard
url = ../qtvirtualkeyboard.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtgamepad"]
depends = qtbase
recommends = qtdeclarative
path = qtgamepad
url = ../qtgamepad.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
url = ../qtscxml.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtspeech"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtspeech
url = ../qtspeech.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtnetworkauth"]
depends = qtbase
path = qtnetworkauth
url = ../qtnetworkauth.git
- branch = 5.11
+ branch = dev
status = addon
[submodule "qtremoteobjects"]
depends = qtbase
recommends = qtdeclarative
path = qtremoteobjects
url = ../qtremoteobjects.git
- branch = 5.11
+ branch = dev
status = preview
[submodule "qtwebglplugin"]
depends = qtbase qtwebsockets
recommends = qtdeclarative
path = qtwebglplugin
url = ../qtwebglplugin.git
- branch = 5.11
+ branch = dev
status = preview
diff --git a/LGPL_EXCEPTION.txt b/LGPL_EXCEPTION.txt
deleted file mode 100644
index 5cdacb9a..00000000
--- a/LGPL_EXCEPTION.txt
+++ /dev/null
@@ -1,22 +0,0 @@
-The Qt Company Qt LGPL Exception version 1.1
-
-As an additional permission to the GNU Lesser General Public License version
-2.1, the object code form of a "work that uses the Library" may incorporate
-material from a header file that is part of the Library. You may distribute
-such object code under terms of your choice, provided that:
- (i) the header files of the Library have not been modified; and
- (ii) the incorporated material is limited to numerical parameters, data
- structure layouts, accessors, macros, inline functions and
- templates; and
- (iii) you comply with the terms of Section 6 of the GNU Lesser General
- Public License version 2.1.
-
-Moreover, you may apply this exception to a modified version of the Library,
-provided that such modification does not involve copying material from the
-Library into the modified Library's header files unless such material is
-limited to (i) numerical parameters; (ii) data structure layouts;
-(iii) accessors; and (iv) small macros, templates and inline functions of
-five lines or less in length.
-
-Furthermore, you are not required to apply this additional permission to a
-modified version of the Library.
diff --git a/coin/platform_configs/default.txt b/coin/platform_configs/default.txt
index a5dc5d4a..1116680f 100644
--- a/coin/platform_configs/default.txt
+++ b/coin/platform_configs/default.txt
@@ -11,15 +11,15 @@ qtci-linux-Ubuntu-16.04-x86_64-2 GCC
qtci-linux-Ubuntu-16.04-x86_64-2 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace BuildExamples Documentation
qtci-linux-openSUSE-42.3-x86_64 GCC DeveloperBuild NoPch
qtci-linux-openSUSE-42.3-x86_64 ICC_18 DeveloperBuild NoPch DisableTests SystemSQLite
-qtci-linux-RHEL-6.6-x86_64 GCC Release ForceDebugInfo
qtci-linux-RHEL-7.4-x86_64 GCC Packaging Release NoUseGoldLinker ForceDebugInfo SeparateDebugInfo
qtci-macos-10.12-x86_64-8 Clang Packaging DebugAndRelease Release
+qtci-macos-10.13-x86_64 Clang DebugAndRelease Release DisableTests
qtci-osx-10.11-x86_64-3 Clang DeveloperBuild Release QtNamespace NoPch
qtci-osx-10.11-x86_64-3 Clang Release NoFramework DisableTests
qtci-macos-10.12-x86_64-8 IOS_ANY multi Clang Release DisableTests Static
qtci-macos-10.12-x86_64-8 TvOS_ANY multi Clang Release DisableTests
qtci-macos-10.12-x86_64-8 WatchOS_ANY multi Clang Release DisableTests
-qtci-linux-RHEL-7.4-x86_64 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
+qtci-linux-RHEL-7.4-x86_64 Android_ANY armv7 Clang Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-Ubuntu-16.04-x86_64-2 QEMU armv7 GCC Release
qtci-linux-Ubuntu-16.04-x86_64-2 QEMU arm64 GCC Release
qtci-linux-Ubuntu-16.04-x86_64-2 GCC TestOnly LicenseCheck
diff --git a/coin/platform_configs/qt5.txt b/coin/platform_configs/qt5.txt
index 72ec9b61..5e0e6657 100644
--- a/coin/platform_configs/qt5.txt
+++ b/coin/platform_configs/qt5.txt
@@ -7,11 +7,11 @@ qtci-windows-7-x86-3 Mingw53 Packagin
qtci-windows-10-x86_64-10 Mingw73 Packaging DebugAndRelease Release OpenGLDynamic DisableTests
qtci-windows-10-x86_64-10 WinRT_10 armv7 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
qtci-windows-10-x86_64-10 WinRT_10 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
-qtci-linux-RHEL-7.4-x86_64 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
+qtci-linux-RHEL-7.4-x86_64 Android_ANY x86 Clang Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-windows-7-x86-3 Android_ANY armv7 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-7-x86-3 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-macos-10.12-x86_64-8 Android_ANY armv7 Clang Packaging Release DisableTests OpenGLES2
+qtci-macos-10.12-x86_64-8 Android_ANY x86 Clang Packaging Release DisableTests OpenGLES2
qtci-macos-10.12-x86_64-8 QNX_700 x86 GCC Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-macos-10.12-x86_64-8 IOS_ANY multi Clang Packaging DebugAndRelease DisableTests Static
qtci-macos-10.12-x86_64-8 TvOS_ANY multi Clang DebugAndRelease DisableTests
diff --git a/coin/platform_configs/qtbase.txt b/coin/platform_configs/qtbase.txt
index ee4f4e66..0c619ed1 100644
--- a/coin/platform_configs/qtbase.txt
+++ b/coin/platform_configs/qtbase.txt
@@ -2,3 +2,4 @@ Template Target OS Target arch Compiler Fe
--------------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-linux-Ubuntu-16.04-x86_64-2 QEMU armv7 GCC DeveloperBuild DisableTests
qtci-linux-Ubuntu-16.04-x86_64-2 QEMU arm64 GCC DeveloperBuild DisableTests
+qtci-windows-10-x86_64-10 WinRT_10 x86_64 MSVC2015 DeveloperBuild Static Release ForceDebugInfo
diff --git a/coin/provisioning/common/linux/android_linux.sh b/coin/provisioning/common/linux/android_linux.sh
index 68e77dd1..7bcdbdce 100755
--- a/coin/provisioning/common/linux/android_linux.sh
+++ b/coin/provisioning/common/linux/android_linux.sh
@@ -51,13 +51,13 @@ basePath="http://ci-files01-hki.intra.qt.io/input/android"
toolsVersion="r25.2.5"
toolsFile="tools_$toolsVersion-linux.zip"
-ndkVersion="r10e"
+ndkVersion="r16b"
ndkFile="android-ndk-$ndkVersion-linux-x86_64.zip"
sdkBuildToolsVersion="25.0.2"
sdkApiLevel="android-21"
toolsSha1="72df3aa1988c0a9003ccdfd7a13a7b8bd0f47fc1"
-ndkSha1="f692681b007071103277f6edc6f91cb5c5494a32"
+ndkSha1="42aa43aae89a50d1c66c3f9fdecd676936da6128"
toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
diff --git a/coin/provisioning/common/linux/open62541.sh b/coin/provisioning/common/linux/open62541.sh
index 97a76886..dfa4ee02 100755
--- a/coin/provisioning/common/linux/open62541.sh
+++ b/coin/provisioning/common/linux/open62541.sh
@@ -62,12 +62,12 @@ cd open62541
git checkout 8845e493d7751fd4eee3917b540e5346646b9cf7
mkdir build
cd build
-cmake -DUA_ENABLE_AMALGAMATION=ON -DUA_ENABLE_METHODCALLS=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -DLIB_INSTALL_DIR:PATH=/usr/local/lib/open62541 ..
+TARGETPATH=/opt/open62541
+cmake -DUA_ENABLE_AMALGAMATION=ON -DUA_ENABLE_METHODCALLS=ON -DCMAKE_INSTALL_PREFIX:PATH="$TARGETPATH" ..
make
sudo make install
sudo /sbin/ldconfig
-SetEnvVar "QTOPCUA_OPEN62541_LIB_PATH" "/usr/local/lib/open62541"
-SetEnvVar "QTOPCUA_OPEN62541_INCLUDE_PATH" "/usr/local/include/open62541"
+SetEnvVar "CI_OPEN62541_GCC_X64_PREFIX" "$TARGETPATH"
diff --git a/coin/provisioning/common/linux/testserver/apache2/Dockerfile b/coin/provisioning/common/linux/testserver/apache2/Dockerfile
new file mode 100644
index 00000000..bb2dc850
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/apache2/Dockerfile
@@ -0,0 +1,6 @@
+FROM ubuntu:16.04
+RUN apt-get update && apt-get install -y apache2 libcgi-session-perl wget avahi-daemon
+EXPOSE 80 443
+
+# install configurations and test data
+RUN wget https://tools.ietf.org/rfc/rfc3252.txt
diff --git a/coin/provisioning/common/linux/testserver/danted/Dockerfile b/coin/provisioning/common/linux/testserver/danted/Dockerfile
new file mode 100644
index 00000000..eb2ac6ff
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/danted/Dockerfile
@@ -0,0 +1,9 @@
+FROM ubuntu:16.04
+RUN apt-get update && apt-get install -y gdebi-core=0.9.5.7ubuntu1 wget avahi-daemon
+RUN wget http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb
+RUN gdebi -n dante-server_1.4.1-1_amd64.deb
+EXPOSE 1080-1081
+
+# install configurations and test data
+COPY danted /etc/init.d/
+COPY danted-authenticating /etc/init.d/
diff --git a/coin/provisioning/common/linux/testserver/danted/danted b/coin/provisioning/common/linux/testserver/danted/danted
new file mode 100755
index 00000000..1da8203e
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/danted/danted
@@ -0,0 +1,93 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: danted
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: SOCKS (v4 and v5) proxy daemon (danted)
+### END INIT INFO
+#
+# dante SOCKS server init.d file. Based on /etc/init.d/skeleton:
+# Version: @(#)skeleton 1.8 03-Mar-1998 miquels@cistron.nl
+
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=/usr/sbin/danted
+NAME=danted
+DESC="Dante SOCKS daemon"
+PIDFILE=/var/run/$NAME.pid
+CONFFILE=/etc/$NAME.conf
+
+test -f $DAEMON || exit 0
+
+set -e
+
+# This function makes sure that the Dante server can write to the pid-file.
+touch_pidfile ()
+{
+ if [ -r $CONFFILE ]; then
+ uid="`sed -n -e 's/[[:space:]]//g' -e 's/#.*//' -e '/^user\.privileged/{s/[^:]*://p;q;}' \
+ $CONFFILE`"
+ if [ -n "$uid" ]; then
+ touch $PIDFILE
+ chown $uid $PIDFILE
+ fi
+ fi
+}
+
+. /lib/lsb/init-functions
+
+case "$1" in
+ start)
+ if ! egrep -cve '^ *(#|$)' \
+ -e '^(logoutput|user\.((not)?privileged|libwrap)):' $CONFFILE > /dev/null
+ then
+ echo "Not starting $DESC: not configured."
+ exit 0
+ fi
+ echo -n "Starting $DESC: "
+ touch_pidfile
+ start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON -- -D
+ echo "$NAME."
+ ;;
+ stop)
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON
+ echo "$NAME."
+ ;;
+ reload|force-reload)
+ #
+ # If the daemon can reload its config files on the fly
+ # for example by sending it SIGHUP, do it here.
+ #
+ # If the daemon responds to changes in its config file
+ # directly anyway, make this a do-nothing entry.
+ #
+ echo "Reloading $DESC configuration files."
+ start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --exec $DAEMON -- -D
+ ;;
+ restart)
+ #
+ # If the "reload" option is implemented, move the "force-reload"
+ # option to the "reload" entry above. If not, "force-reload" is
+ # just the same as "restart".
+ #
+ echo -n "Restarting $DESC: "
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE --exec $DAEMON
+ sleep 1
+ touch_pidfile
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- -D
+ echo "$NAME."
+ ;;
+ status)
+ status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/coin/provisioning/common/linux/testserver/danted/danted-authenticating b/coin/provisioning/common/linux/testserver/danted/danted-authenticating
new file mode 100755
index 00000000..7aa35db6
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/danted/danted-authenticating
@@ -0,0 +1,97 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: danted-authenticating
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: SOCKS (v4 and v5) proxy daemon (danted)
+### END INIT INFO
+#
+# dante SOCKS server init.d file. Based on /etc/init.d/skeleton:
+# Version: @(#)skeleton 1.8 03-Mar-1998 miquels@cistron.nl
+
+PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
+DAEMON=/usr/sbin/danted
+NAME=danted-authenticating
+DESC="Dante SOCKS daemon"
+PIDFILE=/var/run/$NAME.pid
+CONFFILE=/etc/$NAME.conf
+DANTED_ARGS="-D -f $CONFFILE"
+
+test -f $DAEMON || exit 0
+
+set -e
+
+# This function makes sure that the Dante server can write to the pid-file.
+touch_pidfile ()
+{
+ if [ -r $CONFFILE ]; then
+ uid="`sed -n -e 's/[[:space:]]//g' -e 's/#.*//' -e '/^user\.privileged/{s/[^:]*://p;q;}' \
+ $CONFFILE`"
+ if [ -n "$uid" ]; then
+ touch $PIDFILE
+ chown $uid $PIDFILE
+ fi
+ fi
+}
+
+. /lib/lsb/init-functions
+
+case "$1" in
+ start)
+ if ! egrep -cve '^ *(#|$)' \
+ -e '^(logoutput|user\.((not)?privileged|libwrap)):' $CONFFILE > /dev/null
+ then
+ echo "Not starting $DESC: not configured."
+ exit 0
+ fi
+ echo -n "Starting $DESC: "
+ touch_pidfile
+ start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE \
+ --exec $DAEMON -- $DANTED_ARGS
+ echo "$NAME."
+ ;;
+ stop)
+ echo -n "Stopping $DESC: "
+ start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE --exec $DAEMON
+ echo "$NAME."
+ ;;
+ reload|force-reload)
+ #
+ # If the daemon can reload its config files on the fly
+ # for example by sending it SIGHUP, do it here.
+ #
+ # If the daemon responds to changes in its config file
+ # directly anyway, make this a do-nothing entry.
+ #
+ echo "Reloading $DESC configuration files."
+ start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE \
+ --exec $DAEMON -- $DANTED_ARGS
+ ;;
+ restart)
+ #
+ # If the "reload" option is implemented, move the "force-reload"
+ # option to the "reload" entry above. If not, "force-reload" is
+ # just the same as "restart".
+ #
+ echo -n "Restarting $DESC: "
+ start-stop-daemon --stop --quiet --pidfile $PIDFILE --exec $DAEMON
+ sleep 1
+ touch_pidfile
+ start-stop-daemon --start --quiet --pidfile $PIDFILE \
+ --exec $DAEMON -- $DANTED_ARGS
+ echo "$NAME."
+ ;;
+ status)
+ status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
+ ;;
+ *)
+ N=/etc/init.d/$NAME
+ # echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
+ echo "Usage: $N {start|stop|restart|force-reload}" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/coin/provisioning/common/linux/testserver/docker_testserver.sh b/coin/provisioning/common/linux/testserver/docker_testserver.sh
new file mode 100755
index 00000000..a88e89b9
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/docker_testserver.sh
@@ -0,0 +1,58 @@
+#!/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 -ex
+
+# Using SHA-1 of each server context as the tag of docker images. A tag labels a
+# specific image version. It is used by docker compose file (docker-compose.yml)
+# to launch the corresponding docker containers. If one of the server contexts
+# (./apache2, ./danted, ...) gets changes, all the related compose files in
+# qtbase should be updated as well.
+#
+# For example, here's how to get the SHA-1 of apache test server.
+# find ./apache2 -type f -print0 | sort -z | xargs -r0 sha1sum | \
+# awk '{ print $1 }' | sha1sum | awk '{ print $1 }'
+
+testserver='apache2 squid vsftpd ftp-proxy danted'
+
+for server in $testserver
+do
+ context="${BASH_SOURCE%/*}/$server"
+ sha1=$(find $context -type f -print0 | sort -z | xargs -r0 sha1sum | awk '{ print $1 }' | \
+ sha1sum | awk '{ print $1 }')
+ sudo docker build -t qt-test-server-$server:$sha1 $context
+done
+
+sudo docker images
diff --git a/coin/provisioning/common/linux/testserver/ftp-proxy/Dockerfile b/coin/provisioning/common/linux/testserver/ftp-proxy/Dockerfile
new file mode 100644
index 00000000..cecb2dca
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/ftp-proxy/Dockerfile
@@ -0,0 +1,3 @@
+FROM ubuntu:16.04
+RUN apt-get update && apt-get install -y ftp-proxy=1.9.2.4-10 avahi-daemon
+EXPOSE 2121
diff --git a/coin/provisioning/common/linux/testserver/squid/Dockerfile b/coin/provisioning/common/linux/testserver/squid/Dockerfile
new file mode 100644
index 00000000..0b930bca
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/squid/Dockerfile
@@ -0,0 +1,3 @@
+FROM ubuntu:16.04
+RUN apt-get update && apt-get install -y squid=3.5.12-1ubuntu7.5 avahi-daemon
+EXPOSE 3128-3130
diff --git a/coin/provisioning/common/linux/testserver/vsftpd/Dockerfile b/coin/provisioning/common/linux/testserver/vsftpd/Dockerfile
new file mode 100644
index 00000000..f8e32d40
--- /dev/null
+++ b/coin/provisioning/common/linux/testserver/vsftpd/Dockerfile
@@ -0,0 +1,6 @@
+FROM ubuntu:16.04
+RUN apt-get update && apt-get install -y vsftpd=3.0.3-3ubuntu2 ftp=0.17-33 wget avahi-daemon
+EXPOSE 20-21
+
+# install configurations and test data
+RUN wget https://tools.ietf.org/rfc/rfc3252.txt
diff --git a/coin/provisioning/common/macos/cmake.sh b/coin/provisioning/common/macos/cmake.sh
index f926de89..e22425b7 100755
--- a/coin/provisioning/common/macos/cmake.sh
+++ b/coin/provisioning/common/macos/cmake.sh
@@ -42,13 +42,13 @@ source "${BASH_SOURCE%/*}/InstallAppFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
-PrimaryUrl="http://ci-files01-hki.intra.qt.io/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"
+PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.13_high_sierra/cmake-3.11.3-Darwin-x86_64.tar.gz"
+AltUrl="https://cmake.org/files/v3.11/cmake-3.11.3-Darwin-x86_64.tar.gz"
+SHA1="3d13de8020ce560159fa5cecb669498c48552d96"
+appPrefix="cmake-3.11.3-Darwin-x86_64"
InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
SetEnvVar "PATH" "/Applications/CMake.app/Contents/bin:\$PATH"
-echo "CMake = 3.6.2" >> ~/versions.txt
+echo "CMake = 3.11.3" >> ~/versions.txt
diff --git a/coin/provisioning/common/macos/install_xcode.sh b/coin/provisioning/common/macos/install_xcode.sh
index e569bee5..44f0a648 100755
--- a/coin/provisioning/common/macos/install_xcode.sh
+++ b/coin/provisioning/common/macos/install_xcode.sh
@@ -49,7 +49,11 @@ function InstallXCode() {
version=$2
echo "Uncompressing and installing '$sourceFile'"
- xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
+ if [[ $sourceFile =~ tar ]]; then
+ cd /Applications/ && sudo tar -zxf "$sourceFile"
+ else
+ xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
+ fi
echo "Accept license"
sudo xcodebuild -license accept
diff --git a/coin/provisioning/common/macos/python3.sh b/coin/provisioning/common/macos/python3.sh
index 545a6d02..35bccc93 100755
--- a/coin/provisioning/common/macos/python3.sh
+++ b/coin/provisioning/common/macos/python3.sh
@@ -52,10 +52,14 @@ InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
InstallPip python3.6
-/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv
+/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv wheel
SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
+# Install all needed packages in a special wheel cache directory
+/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 wheel --wheel-dir $HOME/python3-wheels -r ${BASH_SOURCE%/*}/../shared/requirements.txt
+SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels"
+
echo "python3 = 3.6.1" >> ~/versions.txt
diff --git a/coin/provisioning/common/shared/requirements.txt b/coin/provisioning/common/shared/requirements.txt
new file mode 100644
index 00000000..12380d85
--- /dev/null
+++ b/coin/provisioning/common/shared/requirements.txt
@@ -0,0 +1,19 @@
+# This file holds all python3 packages need for a certain qt module
+# When adding new packages here, first add a comment with the name of the module
+# Then all the packages. Duplicates are wanted as every module should install
+# all packages it needs and shouldn't depend on a package from another module
+#
+# qtivi
+antlr4-python3-runtime==4.7.1
+argh==0.26.2
+click==6.7
+coloredlogs==10.0
+humanfriendly==4.15.1
+Jinja2==2.10
+MarkupSafe==1.0
+path.py==11.0.1
+pathtools==0.1.2
+PyYAML==3.13
+six==1.11.0
+typing==3.6.4
+watchdog==0.8.3
diff --git a/coin/provisioning/common/windows/android-openssl.ps1 b/coin/provisioning/common/windows/android-openssl.ps1
index d838fcc8..ccd24cb9 100644
--- a/coin/provisioning/common/windows/android-openssl.ps1
+++ b/coin/provisioning/common/windows/android-openssl.ps1
@@ -53,9 +53,9 @@ Rename-Item C:\Utils\openssl-$version $destination
Remove-Item -Path $zip
Remove-Item C:\Utils\openssl-$version.tar
-Set-EnvironmentVariable "CC" "C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc"
-Set-EnvironmentVariable "AR" "C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-ar"
-Set-EnvironmentVariable "ANDROID_DEV" "C:\utils\android-ndk-r10e\platforms\android-18\arch-arm\usr"
+Set-EnvironmentVariable "CC" "C:\utils\android-ndk-r16b\toolchains\llvm\prebuilt\linux-x86_64\bin\clang"
+Set-EnvironmentVariable "AR" "C:\utils\android-ndk-r16b\toolchains\llvm\prebuilt\linux-x86_64\bin\llvm-ar"
+Set-EnvironmentVariable "ANDROID_DEV" "C:\utils\android-ndk-r16b\platforms\android-18\arch-arm\usr"
# Make sure configure for openssl has a "make" and "perl" available
$env:PATH = $env:PATH + ";C:\msys\1.0\bin;C:\strawberry\perl\bin"
diff --git a/coin/provisioning/common/windows/android.ps1 b/coin/provisioning/common/windows/android.ps1
index 9a09e919..f83a8e60 100644
--- a/coin/provisioning/common/windows/android.ps1
+++ b/coin/provisioning/common/windows/android.ps1
@@ -40,10 +40,10 @@
# That's why we need to use Andoid-21 API version in Qt 5.9.
# NDK
-$ndkVersion = "r10e"
+$ndkVersion = "r16b"
$ndkCachedUrl = "\\ci-files01-hki.intra.qt.io\provisioning\android\android-ndk-$ndkVersion-windows-x86.zip"
$ndkOfficialUrl = "https://dl.google.com/android/repository/android-ndk-$ndkVersion-windows-x86.zip"
-$ndkChecksum = "1d0b8f2835be741f3048fb03c0a3e9f71ab7f357"
+$ndkChecksum = "becaf3d445a4877ca1a9300a62f0934a4838c7fa"
$ndkFolder = "c:\utils\android-ndk-$ndkVersion"
$ndkZip = "c:\Windows\Temp\android_ndk_$ndkVersion.zip"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/42-freeopcua.sh b/coin/provisioning/common/windows/opcua_unifiedautomation.ps1
index 6570e107..b0ed74ec 100755..100644
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/42-freeopcua.sh
+++ b/coin/provisioning/common/windows/opcua_unifiedautomation.ps1
@@ -1,8 +1,6 @@
-#!/usr/bin/env bash
-
#############################################################################
##
-## Copyright (C) 2016 The Qt Company Ltd.
+## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the test suite of the Qt Toolkit.
@@ -33,19 +31,29 @@
##
#############################################################################
-sudo apt-get update
-sudo apt-get install -y libboost-dev libboost-thread-dev libboost-system-dev libboost-program-options-dev libboost-filesystem-dev libxml2-dev libboost-regex-dev
+. "$PSScriptRoot\helpers.ps1"
+
+$zip = Get-DownloadLocation "uasdkcpp.zip"
+$sha1 = "e1927dbd5d8bb459b468fa70a70b1de51a4ce022"
+$installLocation = "C:\Utils\uacpp"
+
+Write-Host "UACPPSDK: Downloading Unified Automation CPP installer..."
+$internalUrl = "http://ci-files01-hki.ci.local/input/opcua_uacpp/uasdkcppbundle-bin-EVAL-win32-x86-vs2015-v1.5.6-361.zip"
+# No public download link exists
+$externalUrl = $internalUrl
+
+Download $externalUrl $internalUrl $zip
+Verify-Checksum $zip $sha1
+
+Write-Host "UACPPSDK: Installing $zip..."
+Extract-7Zip $zip (Get-DefaultDownloadLocation)
+Remove-Item -Path $zip
+
+$executable = (Get-DefaultDownloadLocation) + "uasdkcppbundle-bin-EVAL-win32-x86-vs2015-v1.5.6-361.exe"
+$arguments = "/S /D=$installLocation"
+Run-Executable $executable $arguments
+Write-Host "UACPPSDK: Installer done."
+Remove-Item $executable
-TEMPDIR=$(mktemp --directory) || echo "Failed to create temporary directory"
-trap "sudo rm -fr $TEMPDIR" EXIT
-cd $TEMPDIR
-git clone https://github.com/FreeOpcUa/freeopcua.git freeopcua
-cd freeopcua
-git checkout 955cc5b924cf310fc15b376a11f4b7b9db28980b
-mkdir build
-cd build
-source ~/.profile
-cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr/local ..
-make
-sudo make install
-sudo /sbin/ldconfig
+Write-Host "Set environment variable for COIN to locate SDK"
+Set-EnvironmentVariable "CI_UACPP_msvc2015_x86_PREFIX" "$installLocation"
diff --git a/coin/provisioning/common/windows/open62541.ps1 b/coin/provisioning/common/windows/open62541.ps1
new file mode 100644
index 00000000..1ff30010
--- /dev/null
+++ b/coin/provisioning/common/windows/open62541.ps1
@@ -0,0 +1,261 @@
+#############################################################################
+##
+## Copyright (C) 2018 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$
+##
+#############################################################################
+
+Param (
+ [string]$targetCommand= ""
+ )
+
+. "$PSScriptRoot\helpers.ps1"
+
+## Variables for builds
+$commitSHA = "8845e493d7751fd4eee3917b540e5346646b9cf7"
+$sha1 = "6845899f5fd0346472fc0d848ce9d9c814c802e0"
+$extractTarget = "C:\open62541_build"
+
+function CreateArchive
+{
+ param(
+ [string]$sourceDirectory=$(throw("You must specify a directory")),
+ [string]$archiveName=$(throw("You must specify an archive name"))
+ )
+
+ if ((Get-Command "7z.exe" -ErrorAction SilentlyContinue) -eq $null) {
+ $zipExe = join-path (${env:ProgramFiles(x86)}, ${env:ProgramFiles}, ${env:ProgramW6432} -ne $null)[0] '7-zip\7z.exe'
+ if (-not (test-path $zipExe)) {
+ $zipExe = "C:\Utils\sevenzip\7z.exe"
+ if (-not (test-path $zipExe)) {
+ throw "Could not find 7-zip."
+ }
+ }
+ } else {
+ $zipExe = "7z.exe"
+ }
+
+ Run-Executable $zipExe "a -y `"$archiveName`" `"$sourceDirectory`""
+}
+
+function PrepareRepository
+{
+ $username = $env:USERNAME
+ $zip = "c:\users\$username\downloads\open62541.zip"
+
+ $externalUrl = "https://github.com/open62541/open62541/archive/$commitSHA.zip"
+ $internalUrl = "http://ci-files01-hki.ci.local/input/open62541/$commitSHA.zip"
+
+ Download $externalUrl $internalUrl $zip
+ Verify-Checksum $zip $sha1
+
+ Extract-7Zip $zip $extractTarget
+}
+
+function PushDevEnvironment
+{
+ # Provisioning updates the registry entries for PATH etc. However, they are not
+ # propagated to the next provisioning script and hence need to be manually
+ # read / set.
+ $adaptedPath = $env:PATH
+ $jomLocation = [Environment]::GetEnvironmentVariable("CI_JOM_PATH", "Machine")
+ $adaptedPath = $adaptedPath + ";" + $jomLocation
+ $adaptedPath = $adaptedPath + ";" + "C:\Python27"
+ $adaptedPath = $adaptedPath + ";" + "C:\CMake\bin"
+ [Environment]::SetEnvironmentVariable("PATH", $adaptedPath, "Process")
+}
+
+function MSVCEnvironment
+{
+ Param (
+ [string]$msvcDir=$(throw("No VS Directory specified")),
+ [string]$msvcbat=$(throw("No vsvars batch file specified"))
+ )
+
+ Push-Location $msvcDir
+ cmd /c "$msvcbat&set" |
+ foreach {
+ if ($_ -match "=") {
+ $v = $_.split("="); Set-Item -force -path "ENV:\$($v[0])" -value "$($v[1])"
+ }
+ }
+ Pop-Location
+}
+
+function BuildAndInstallOpen62541
+{
+ Param (
+ [string]$Type=$(throw("You must specify the dev type [mingw530, mingw630, msvc2015, msvc2017]")),
+ [string]$Platform=$(throw("You must specify the target platform [x86, x64]")),
+ [string]$MakeCommand=$(throw("You must specify a make command [mingw32-make, nmake]"))
+ )
+ Write-Host "### Open62541: Supposed to build with: $Type $Platform $MakeCommand"
+
+ ## Make Build directory
+ $buildDir = "$extractTarget\open62541-$commitSHA\build" + "_" + $Type + "_" + $Platform
+ if (Test-Path $buildDir) {
+ Write-Host " Deleting pre-existing build directory"
+ Remove-Item $buildDir -Force -Recurse
+ }
+ New-Item -ItemType Directory -Force -Path $buildDir
+ Push-Location $buildDir
+
+ ## Invoke Cmake
+ $makeGenerator = "NMake Makefiles JOM"
+ $installTarget = "C:\Utils\open62541" + "_" + $Type + "_" + $Platform
+ if (Test-Path $installTarget) {
+ Write-Host " Deleting pre-existing install directory"
+ Remove-Item $installTarget -Force -Recurse
+ }
+
+ if ($Type.StartsWith("mingw")) {
+ $makeGenerator = "MinGW Makefiles"
+ }
+ cmake -G "$makeGenerator" -DUA_ENABLE_AMALGAMATION=ON -DUA_ENABLE_METHODCALLS=ON -DCMAKE_INSTALL_PREFIX:PATH=$installTarget -DLIB_INSTALL_DIR:PATH=$installTarget/lib ..
+
+ ## Call build command
+ Write-Host "### Open62541: Compilation ###"
+ Run-Executable $MakeCommand
+
+ ## call install command
+ Write-Host "### Open62541: Installation ###"
+ Run-Executable $MakeCommand install
+
+ $platformVariable = "CI_OPEN62541_" + $Type + "_" + $Platform + "_PREFIX"
+ Set-EnvironmentVariable $platformVariable $installTarget
+
+ ## Packaging
+ Push-Location "C:\Utils"
+ $archiveName = "open62541_" + $Type + "_" + $Platform + ".7z"
+ CreateArchive $installTarget $archiveName
+ Pop-Location
+
+ ## cleanup build directory
+ Write-Host "### Open62541: Cleanup ###"
+ Pop-Location
+ Remove-Item $buildDir -Force -Recurse
+}
+
+function DownloadAndInstall
+{
+ Param (
+ [string]$Type=$(throw("You must specify the dev type [mingw530, mingw630, msvc2015, msvc2017]")),
+ [string]$Platform=$(throw("You must specify the target platform [x86, x64]"))
+ )
+ $baseLocation = "http://ci-files01-hki.intra.qt.io/input/open62541/"
+ $targetName = "open62541_" + $Type + "_" + $Platform
+ $archiveName = $targetName + ".7z"
+ $downloadUrl = $baseLocation + $archiveName
+
+ # Download
+ $downloadTarget = "C:\Utils\" + $archiveName
+ Download $downloadUrl $downloadUrl $downloadTarget
+
+ # Extract
+ Push-Location C:\Utils
+ Extract-7Zip $downloadTarget C:\Utils
+ Pop-Location
+
+ # Set environment variable
+ $platformVariable = "CI_OPEN62541_" + $Type + "_" + $Platform
+ $platformPath = "C:\Utils\" + $targetName
+ Set-EnvironmentVariable $platformVariable $platformPath
+}
+
+##############################
+# Startup #
+##############################
+if ($targetCommand.StartsWith("mingw")) {
+ Write-Host "### Creating Open62541 for MinGW"
+ $mingwPath = [Environment]::GetEnvironmentVariable($targetCommand, "Machine")
+ if (!$mingwPath) {
+ throw("Could not find mingw")
+ }
+
+ # Strawberry has its own gcc, put mingw in front
+ $adaptedPath = $mingwPath + "\bin;" + [Environment]::GetEnvironmentVariable("PATH", "Machine")
+ [Environment]::SetEnvironmentVariable("PATH", $adaptedPath, "Process")
+
+ PushDevEnvironment
+ BuildAndInstallOpen62541 $targetCommand x86 "mingw32-make"
+} elseif ($targetCommand -eq "msvc2015_x86") {
+ Write-Host "### Creating Open62541 for MSVC2015 x86"
+ MSVCEnvironment "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" "vcvarsall.bat x86"
+ PushDevEnvironment
+ BuildAndInstallOpen62541 msvc2015 x86 jom
+} elseif ($targetCommand -eq "msvc2015_x64") {
+ Write-Host "### Creating Open62541 for MSVC2015 x64"
+ MSVCEnvironment "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC" "vcvarsall.bat amd64"
+ PushDevEnvironment
+ BuildAndInstallOpen62541 msvc2015 x64 jom
+} elseif ($targetCommand -eq "msvc2017_x86") {
+ Write-Host "### Creating Open62541 for MSVC2017 x86"
+ MSVCEnvironment "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build" vcvars32.bat
+ PushDevEnvironment
+ BuildAndInstallOpen62541 msvc2017 x86 jom
+} elseif ($targetCommand -eq "msvc2017_x64") {
+ Write-Host "### Creating Open62541 for MSVC2017 x64"
+ MSVCEnvironment "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build" vcvars64.bat
+ PushDevEnvironment
+ BuildAndInstallOpen62541 msvc2017 x64 jom
+} elseif ($targetCommand -eq "prepare") {
+ PrepareRepository
+} elseif ($targetCommand -eq "build") {
+ Write-Host "### Building for all supported platforms"
+ PrepareRepository
+ Write-Host "### Invoking MinGW530 build"
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand mingw530
+ Write-Host "### Invoking MinGW630 build"
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand mingw630
+ Write-Host "### Invoking MSVC2015 build"
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand msvc2015_x86
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand msvc2015_x64
+ Write-Host "### Invoking MSVC2017 build"
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand msvc2017_x86
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand msvc2017_x64
+ Write-Host "### Archives have been generated at C:/Utils. Please upload manually"
+} elseif ($targetCommand -eq "packaged") {
+ Write-Host "### Expecting pre-built packages, download and install from archives"
+ Write-Host "### MinGW530 x64"
+ DownloadAndInstall mingw530 x86
+ Write-Host "### MinGW630 x64"
+ DownloadAndInstall mingw630 x86
+ Write-Host "### MSVC2015 x86"
+ DownloadAndInstall msvc2015 x86
+ Write-Host "### MSVC2015 x64"
+ DownloadAndInstall msvc2015 x64
+ Write-Host "### MSVC2017 x64"
+ DownloadAndInstall msvc2017 x64
+} elseif ($targetCommand) {
+ Write-Host "### Unknown parameter specified:" $targetCommand " Options are: mingw, msvc2015_x(86/64), msvc2017_x(86/64)"
+ throw("Unknown parameter")
+} else {
+ # Default behavior
+ PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand build
+}
diff --git a/coin/provisioning/common/windows/python3.ps1 b/coin/provisioning/common/windows/python3.ps1
index 473fe65c..e4ab667f 100644
--- a/coin/provisioning/common/windows/python3.ps1
+++ b/coin/provisioning/common/windows/python3.ps1
@@ -79,7 +79,12 @@ if (IsProxyEnabled) {
Write-Host "Using proxy ($proxy) with pip"
$pip_args = "--proxy=$proxy"
}
-Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install virtualenv"
+Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install virtualenv wheel"
+
+# Install all needed packages in a special wheel cache directory
+$python3_wheel_dir="$install_path\python3-wheels"
+Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args wheel --wheel-dir $python3_wheel_dir -r $PSScriptRoot\..\shared\requirements.txt"
+Set-EnvironmentVariable "PYTHON3_WHEEL_CACHE" "$python3_wheel_dir"
Write-Output "Python3-$archVer = $version" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh
deleted file mode 100755
index 89806892..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/usr/bin/env bash
-
-# shellcheck source=../common/linux/disable-ntp_linux.sh
-source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh
deleted file mode 100755
index d3072b37..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/05-subscription-manager-tooling.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/usr/bin/env bash
-# provides: fix for possible bug in the subscription manager
-# version: provided by RedHat
-# needed for yum to work properly in case there is incorrect data in
-# the sslclientkey repository parameter value
-
-set -ex
-
-sudo rm -f /etc/pki/entitlement/*
-sudo subscription-manager refresh
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh
deleted file mode 100755
index c8edc2a2..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/06-odbc.sh
+++ /dev/null
@@ -1,8 +0,0 @@
-#!/usr/bin/env bash
-# provides: odbc devel packages on RHEL
-# version: provided by default Linux distribution repository
-# needed for configure -plugin-sql-odbc in qtbase
-
-set -ex
-
-sudo yum install -y unixODBC-devel
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh
deleted file mode 100755
index 6152c7e5..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/08-pythondev.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env bash
-# provides: python development libraries
-# version: provided by default Linux distribution repository
-# needed to build pyside
-
-set -ex
-
-sudo yum install -y python-devel python-virtualenv
-
-# install python3
-sudo yum install -y python34-devel
-
-# install pip3
-wget https://bootstrap.pypa.io/get-pip.py
-sudo python3 get-pip.py
-sudo rm -f get-pip.py
-sudo pip3 install virtualenv
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh
deleted file mode 100755
index 74520b6e..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/09-cmake.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/usr/bin/env bash
-set -ex
-
-"$(dirname "$0")/../common/linux/cmake_linux.sh"
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh
deleted file mode 100755
index b156e8f9..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/20-libusb.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env bash
-# Required for tqtc-boot2qt/qdb
-
-set -ex
-
-sudo yum install -y libusb1-devel
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh b/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh
deleted file mode 100755
index 90d4199f..00000000
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/30-install_icu.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/usr/bin/env bash
-
-#############################################################################
-##
-## Copyright (C) 2018 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$
-##
-#############################################################################
-
-# shellcheck source=../common/unix/DownloadURL.sh
-source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
-
-# This script installs the right ICU version
-
-set -ex
-icuVersion="56.1"
-icuLocation="/usr/lib64"
-sha1="f2eab775c04ce5f3bdae6c47d06b62158b5d6753"
-
-function Install7ZPackageFromURL {
- url=$1
- urlExt=$2
- expectedSha1=$3
- targetDirectory=$4
-
- targetFile=$(mktemp)
- DownloadURL "$url" "$urlExt" "$expectedSha1" "$targetFile"
- sudo /usr/local/bin/7z x -yo"$targetDirectory" "$targetFile"
- rm "$targetFile"
-}
-
-echo "Installing custom ICU $icuVersion $sha1 packages on RHEL to $icuLocation"
-
-baseBinaryPackageURL="http://ci-files01-hki.intra.qt.io/input/icu/$icuVersion/icu-linux-g++-Rhel6.6-x64.7z"
-baseBinaryPackageExternalUrl="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64.7z"
-Install7ZPackageFromURL "$baseBinaryPackageURL" "$baseBinaryPackageExternalUrl" "$sha1" "/usr/lib64"
-
-echo "Installing custom ICU devel packages on RHEL"
-
-sha1Dev="82f8b216371b848b8d36ecec7fe7b6e9b0dba0df"
-develPackageURL="http://ci-files01-hki.intra.qt.io/input/icu/$icuVersion/icu-linux-g++-Rhel6.6-x64-devel.7z"
-develPackageExternalUrl="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64-devel.7z"
-tempDir=$(mktemp -d)
-# shellcheck disable=SC2064
-trap "sudo rm -fr $tempDir" EXIT
-Install7ZPackageFromURL "$develPackageURL" "$develPackageExternalUrl" "$sha1Dev" "$tempDir"
-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.4-x86_64/04-install-packages.sh b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/04-install-packages.sh
index fba8c1b2..444765bf 100755
--- a/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/04-install-packages.sh
+++ b/coin/provisioning/qtci-linux-RHEL-7.4-x86_64/04-install-packages.sh
@@ -106,4 +106,10 @@ sudo ln -s /opt/rh/rh-python36/root/usr/bin/pip3 /usr/local/bin/pip3
# We shouldn't use yum to install virtualenv. The one found from package repo is not
# working, but we can use installed pip
sudo pip install --upgrade pip
-sudo pip install virtualenv
+sudo pip install virtualenv wheel
+
+# Install all needed packages in a special wheel cache directory
+pip wheel --wheel-dir $HOME/python3-wheels -r ${BASH_SOURCE%/*}/../common/shared/requirements.txt
+
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels"
diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh
index e613edc0..53e551cc 100755
--- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/02-apt.sh
@@ -110,6 +110,7 @@ installPackages+=(python-pip)
installPackages+=(python3-dev)
installPackages+=(python3-pip)
installPackages+=(python3-virtualenv)
+installPackages+=(python3-wheel)
# Needed to be able to build Yocto
installPackages+=(chrpath)
installPackages+=(gawk)
@@ -163,6 +164,12 @@ sudo apt-get update
echo "Installing packages"
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"
+# Install all needed packages in a special wheel cache directory
+pip wheel --wheel-dir $HOME/python3-wheels -r ${BASH_SOURCE%/*}/../common/shared/requirements.txt
+
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels"
+
sudo tee "/etc/apt/sources.list" > /dev/null <<-EOC
deb [arch=amd64] http://repo-clones.ci.qt.io/apt-mirror/mirror/ubuntu.trumpetti.atm.tut.fi/ubuntu/ xenial main restricted universe multiverse
deb [arch=amd64] http://repo-clones.ci.qt.io/apt-mirror/mirror/ubuntu.trumpetti.atm.tut.fi/ubuntu/ xenial-updates main restricted universe multiverse
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh
index 505374c5..90c3a7eb 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh
+++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh
@@ -5,7 +5,7 @@
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
-## This file is part of the test suite of the Qt Toolkit.
+## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
@@ -33,5 +33,20 @@
##
#############################################################################
-# shellcheck source=../common/unix/mqtt_broker.sh
-source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"
+set -ex
+
+# Download and install the docker engine.
+sudo apt-get install curl -y
+curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
+sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
+sudo apt-get update
+sudo apt-get install docker-ce -y
+sudo usermod -a -G docker $USER
+sudo docker info
+
+# Download and install the docker-compose extension.
+sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
+sudo chmod +x /usr/local/bin/docker-compose
+
+# Start testserver provisioning
+source "${BASH_SOURCE%/*}/../common/linux/testserver/docker_testserver.sh"
diff --git a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-pythondev.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-pythondev.sh
index e7cdd4a7..a5494041 100755
--- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-pythondev.sh
+++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/08-pythondev.sh
@@ -9,4 +9,10 @@ sudo pkcon -y refresh
sudo pkcon -y install python-devel python-virtualenv
# install python3
-sudo pkcon -y install libpython3_4m1_0 python3-base python3 python3-pip python3-devel python3-virtualenv
+sudo pkcon -y install libpython3_4m1_0 python3-base python3 python3-pip python3-devel python3-virtualenv python3-wheel
+
+# Install all needed packages in a special wheel cache directory
+pip wheel --wheel-dir $HOME/python3-wheels -r ${BASH_SOURCE%/*}/../common/shared/requirements.txt
+
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+SetEnvVar "PYTHON3_WHEEL_CACHE" "$HOME/python3-wheels"
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh b/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh
index d206369c..e7bb9ca0 100755
--- a/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/30-android.sh
@@ -49,13 +49,13 @@ basePath="/net/ci-files01-hki.intra.qt.io/hdd/www/input/android"
toolsVersion="r25.2.5"
toolsFile="tools_$toolsVersion-macosx.zip"
-ndkVersion="r10e"
+ndkVersion="r16b"
ndkFile="android-ndk-$ndkVersion-darwin-x86_64.zip"
sdkBuildToolsVersion="25.0.2"
sdkApiLevel="android-21"
toolsSha1="d2168d963ac5b616e3d3ddaf21511d084baf3659"
-ndkSha1="6be8598e4ed3d9dd42998c8cb666f0ee502b1294"
+ndkSha1="e51e615449b98c716cf912057e2682e75d55e2de"
toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh b/coin/provisioning/qtci-macos-10.13-x86_64/01-sha1sum-compatibility.sh
index 1354bf6b..c3936499 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/01-sha1sum-compatibility.sh
@@ -2,10 +2,10 @@
#############################################################################
##
-## Copyright (C) 2016 The Qt Company Ltd.
+## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
-## This file is part of the test suite of the Qt Toolkit.
+## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
@@ -33,16 +33,18 @@
##
#############################################################################
-# This script needs to be called last during provisioning so that the software information will show up last in provision log.
+# On macOS the sha1 tool is named 'shasum' while on all other unix systems it is called 'sha1sum'.
+# In order to make all unix provioning scripts run on macOS without special case handling
+# a symbolic link is created.
+# The shasum tool is a perl script which does some globbing to determine the perl version. The
+# symbolic link has to point directly to the binary including the perl version.
+# Additionally the CI seems to have multiple parallel perl versions installed which causes
+# multiple shasum tools to be present (shasum5.16, shasum5.18).
+#
+# Currently this is
+# /usr/local/bin/sha1sum -> /usr/bin/shasum5.18
-# Storage installed RPM packages information
-
-set -ex
-
-# shellcheck disable=SC2129
-echo "*********************************************" >> ~/versions.txt
-echo "***** All installed RPM packages *****" >> ~/versions.txt
-rpm -q -a | sort >> ~/versions.txt
-echo "*********************************************" >> ~/versions.txt
-
-"$(dirname "$0")/../common/linux/version.sh"
+[ -d /usr/local/bin ] || sudo mkdir -p /usr/local/bin
+# shellcheck disable=SC2012
+SHASUM_TOOLNAME=$(ls -r /usr/bin/shasum?.* | head -n1)
+sudo ln -s "${SHASUM_TOOLNAME}" /usr/local/bin/sha1sum
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh
new file mode 100755
index 00000000..32528873
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+$(dirname $0)/../common/unix/disable-ntp_macos.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh b/coin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh
new file mode 100755
index 00000000..2c3e45f3
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env sh
+
+set -ex
+
+# 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.13-x86_64/05-systemsetup.sh b/coin/provisioning/qtci-macos-10.13-x86_64/05-systemsetup.sh
new file mode 100755
index 00000000..4737b8e9
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/05-systemsetup.sh
@@ -0,0 +1,89 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 The Qt Company Ltd.
+## Contact: http://www.qt.io/licensing/
+##
+## This file is part of the provisioning scripts of the Qt Toolkit.
+##
+## $QT_BEGIN_LICENSE:LGPL21$
+## Commercial License Usage
+## Licensees holding valid commercial Qt licenses may use this file in
+## accordance with the commercial license agreement provided with the
+## Software or, alternatively, in accordance with the terms contained in
+## a written agreement between you and The Qt Company. For licensing terms
+## and conditions see http://www.qt.io/terms-conditions. For further
+## information use the contact form at http://www.qt.io/contact-us.
+##
+## GNU Lesser General Public License Usage
+## Alternatively, this file may be used under the terms of the GNU Lesser
+## General Public License version 2.1 or version 3 as published by the Free
+## Software Foundation and appearing in the file LICENSE.LGPLv21 and
+## LICENSE.LGPLv3 included in the packaging of this file. Please review the
+## following information to ensure the GNU Lesser General Public License
+## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
+## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+##
+## As a special exception, The Qt Company gives you certain additional
+## rights. These rights are described in The Qt Company LGPL Exception
+## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+##
+## $QT_END_LICENSE$
+##
+#############################################################################
+
+set -ex
+
+# This script modified system settings for automated use
+
+VNCPassword=qt
+NTS_IP=10.212.2.216
+
+echo "Disable Screensaver"
+# For current session
+defaults -currentHost write com.apple.screensaver idleTime 0
+
+echo "Disable sleep"
+sudo pmset sleep 0 displaysleep 0
+
+# For session after a reboot
+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
+
+defaults write com.apple.screensaver askForPassword -int 0
+
+echo "Set keyboard type rates and delays"
+# normal minimum is 15 (225 ms)
+defaults write -g InitialKeyRepeat -int 15
+# normal minimum is 2 (30 ms)
+defaults write -g KeyRepeat -int 2
+
+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
+
+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
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh b/coin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh
new file mode 100755
index 00000000..8461c656
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env sh
+
+set -ex
+
+defaults write com.apple.CrashReporter DialogType server
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh
new file mode 100755
index 00000000..3c11214d
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+set -ex
+BASEDIR=$(dirname "$0")
+"$BASEDIR"/../common/macos/disable_update_downloads.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh b/coin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh
new file mode 100755
index 00000000..6e7c796a
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh
@@ -0,0 +1,9 @@
+#!/usr/bin/env sh
+
+set -ex
+
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
+# Enables the usage of temporary keychains for SSL autotests
+SetEnvVar "QT_SSL_USE_TEMPORARY_KEYCHAIN" "1"
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh b/coin/provisioning/qtci-macos-10.13-x86_64/15-xz.sh
index 21a45506..06437ee1 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/03-install-rhel-epel.sh
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/15-xz.sh
@@ -33,17 +33,20 @@
##
#############################################################################
-# shellcheck source=../common/unix/DownloadURL.sh
-source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
+# This script installs XZ-Utils
-package="epel-release-6-8.noarch.rpm"
-primaryUrl="https://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/e/$package"
-cacheUrl="http://ci-files01-hki.intra.qt.io/input/rhel6/$package"
-sha1="2b2767a5ae0de30b9c7b840f2e34f5dd9deaf19a"
-targetFile="/tmp/$package"
+# XZ-Utils are needed for uncompressing xz-compressed files
-DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile"
+set -ex
-sudo rpm -ivh "$targetFile"
-rm "$targetFile"
+# shellcheck source=../common/macos/InstallPKGFromURL
+source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh"
+PrimaryUrl="http://ci-files01-hki.intra.qt.io/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.13-x86_64/20-java.sh b/coin/provisioning/qtci-macos-10.13-x86_64/20-java.sh
new file mode 100755
index 00000000..8877c40b
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/20-java.sh
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/java.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh b/coin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh
new file mode 100755
index 00000000..7d21f507
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh
@@ -0,0 +1,53 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 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_9.xip from Apple Store.
+# Uncompress it with 'xar -xf Xcode_9.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 five files called "Content.part<00..05>.cpio.xz".
+# Extract those that have the extension .xz with xz.
+# "cat" together all the content files "cat file1, file2, file3, file4, file5 >file_new"
+# Compress the new file with xz back to something like Xcode_9.xz
+# Upload the file to temporary storage for this script to use.
+
+set -ex
+
+# shellcheck source=../common/macos/install_xcode.sh
+source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh"
+
+InstallXCode /net/ci-files01-hki.intra.qt.io/hdd/www/input/mac/Xcode_9.3.1.tar.gz 9.3.1
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh b/coin/provisioning/qtci-macos-10.13-x86_64/21-install-commandlinetools.sh
index 84238ebf..2972f402 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/21-install-commandlinetools.sh
@@ -35,9 +35,12 @@
set -ex
-# refresh local certificates
-sudo subscription-manager refresh
+source "${BASH_SOURCE%/*}/../common/macos/install-commandlinetools.sh"
-# Attach available subscriptions to system. This is needed when subscriptions are renewed.
-sudo subscription-manager attach --auto
+version="9.3"
+packageName="Command_Line_Tools_macOS_10.13_for_Xcode_$version.dmg"
+url="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.13_high_sierra/$packageName"
+sha1="3c0306d3faa1131550f1539feeeb5aa6c985763a"
+
+InstallCommandLineTools $url $url $sha1 $packageName $version
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh
new file mode 100755
index 00000000..e5dd1910
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/cmake.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh
new file mode 100755
index 00000000..0ead5a58
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/homebrew.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-mysql.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-mysql.sh
new file mode 100755
index 00000000..d873499c
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-mysql.sh
@@ -0,0 +1,58 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 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
+
+set -ex
+
+# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
+PrimaryUrl="http://ci-files01-hki.intra.qt.io/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"
+
+SetEnvVar "MYSQLBINPATH" "/opt/mysql57/bin"
+echo "MySQL = 5.7.15" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-pip.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-pip.sh
new file mode 100755
index 00000000..69c6b318
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-pip.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/pip.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh
new file mode 100755
index 00000000..e59f0f03
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh
@@ -0,0 +1,57 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 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
+
+set -ex
+
+# shellcheck source=../common/macos/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/macos/InstallAppFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
+psqlVersion="9.6.0"
+
+PrimaryUrl="http://ci-files01-hki.intra.qt.io/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"
+
+SetEnvVar "POSTGRESQLBINPATH" "/Applications/Postgres.app/Contents/Versions/9.6/bin"
+echo "PostgreSQL = $psqlVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh
new file mode 100755
index 00000000..ef65edad
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+set -ex
+
+source "${BASH_SOURCE%/*}/../common/macos/python2.sh"
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh
new file mode 100755
index 00000000..92b05bf3
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+set -ex
+
+source "${BASH_SOURCE%/*}/../common/macos/python3.sh"
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh b/coin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh
new file mode 100755
index 00000000..15511332
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+# Install 7z to be used from command line
+
+set -ex
+
+brew update
+brew install p7zip
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/26-virtualenv.sh b/coin/provisioning/qtci-macos-10.13-x86_64/26-virtualenv.sh
new file mode 100755
index 00000000..a35d26ca
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/26-virtualenv.sh
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/virtualenv.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/27-libclang.sh b/coin/provisioning/qtci-macos-10.13-x86_64/27-libclang.sh
new file mode 100755
index 00000000..fea11e01
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/27-libclang.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+# There is only one mac package and common script uses it as a default
+$BASEDIR/../common/unix/libclang.sh
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/30-android.sh b/coin/provisioning/qtci-macos-10.13-x86_64/30-android.sh
new file mode 100755
index 00000000..0d125c57
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/30-android.sh
@@ -0,0 +1,84 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 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
+
+set -ex
+
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
+targetFolder="/opt/android"
+sdkTargetFolder="$targetFolder/sdk"
+
+basePath="/net/ci-files01-hki.intra.qt.io/hdd/www/input/android"
+
+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"
+
+toolsTargetFile="/tmp/$toolsFile"
+toolsSourceFile="$basePath/$toolsFile"
+ndkTargetFile="/tmp/$ndkFile"
+ndkSourceFile="$basePath/$ndkFile"
+
+echo "Unzipping Android NDK to '$targetFolder'"
+sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
+echo "Unzipping Android Tools to '$sdkTargetFolder'"
+sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
+
+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"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
+
+SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
+SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
+SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
+SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
+
+echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
+echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
+echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
+echo "Android NDK = $ndkVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/30-fbx.sh b/coin/provisioning/qtci-macos-10.13-x86_64/30-fbx.sh
new file mode 100755
index 00000000..9ce5d9ff
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/30-fbx.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env bash
+
+set -ex
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/macos/fbx_macos.sh
+
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/35-openssl.sh b/coin/provisioning/qtci-macos-10.13-x86_64/35-openssl.sh
new file mode 100755
index 00000000..606a9c12
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/35-openssl.sh
@@ -0,0 +1,76 @@
+#!/usr/bin/env bash
+
+#############################################################################
+##
+## Copyright (C) 2018 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
+
+set -ex
+
+# shellcheck source=../common/unix/InstallFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/unix/InstallFromCompressedFileFromURL.sh"
+# shellcheck source=../common/unix/SetEnvVar.sh
+source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
+
+opensslVersion="1.0.2o"
+opensslFile="openssl-$opensslVersion.tar.gz"
+opensslDlUrl="http://ci-files01-hki.intra.qt.io/input/openssl/$opensslFile"
+opensslAltDlUrl="https://www.openssl.org/source/$opensslFile"
+opensslSha1="a47faaca57b47a0d9d5fb085545857cc92062691"
+
+# Below target location has been hard coded into Coin.
+# QTQAINFRA-1195
+opensslTargetLocation="/usr/local/opt/openssl"
+
+InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion"
+cd "/tmp/openssl-$opensslVersion"
+pwd
+sudo ./config --prefix=/usr/local/openssl-$opensslVersion
+echo "Running 'make' for OpenSSL"
+sudo make --silent > /tmp/openssl_make.log 2>&1
+echo "Running 'make install' for OpenSSL"
+sudo make --silent install > /tmp/openssl_make_install.log 2>&1
+
+path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/')
+sudo mkdir -p "$path"
+sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation
+
+SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\""
+SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\""
+
+security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
+security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
+
+sudo rm -rf /tmp/openssl-$opensslVersion
+
+echo "OpenSSL = $opensslVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh
index 99612260..a5547972 100755
--- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh
@@ -1,8 +1,8 @@
-#!/usr/bin/env bash
+#!/bin/bash
#############################################################################
##
-## Copyright (C) 2017 The Qt Company Ltd.
+## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
@@ -33,12 +33,25 @@
##
#############################################################################
-set -ex
+# This script installs QNX 7.
-# shellcheck source=../common/unix/check_and_set_proxy.sh
-source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
+targetFolder="/opt/"
+sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip"
+folderName="qnx700"
-# shellcheck disable=SC2031
-if [ "$http_proxy" != "" ]; then
- echo "proxy=$proxy" | sudo tee -a /etc/yum.conf
+sudo mkdir -p "$targetFolder"
+
+echo "Extracting QNX 7"
+sudo unzip -q "$sourceFile" -d "$targetFolder"
+
+sudo chown -R qt:wheel "$targetFolder"/"$folderName"
+
+# Verify that we have last file in zip
+if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
+ exit 1
fi
+
+# Set env variables
+echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc
+echo "QNX SDP = 7.0.0" >> ~/versions.txt
+
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/55-signtools.sh b/coin/provisioning/qtci-macos-10.13-x86_64/55-signtools.sh
new file mode 100755
index 00000000..0b9bbb00
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/55-signtools.sh
@@ -0,0 +1,138 @@
+#!/usr/bin/env sh
+
+#############################################################################
+##
+## Copyright (C) 2018 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 tools for singing packages
+# This script assume that OS is vanilla. Target machine dosen't have any signing certificates installed.
+
+set -ex
+
+cache="http://ci-files01-hki.intra.qt.io/input"
+cacheSigningTools="$cache/mac/sign_tools"
+targetFolder="/Users/qt"
+keychains="$targetFolder/Library/Keychains"
+
+Install() {
+
+ url=$1
+ targetFile=$2
+ expectedSha1=$3
+
+ echo "Fetching $targetFile from $url..."
+ curl --retry 5 --retry-delay 10 --retry-max-time 60 "$url" -o "$targetFile"
+ shasum "$targetFile" |grep "$expectedSha1"
+
+}
+
+# qt-license
+sha1QtLicense="9d59241d16f68d914f1c7aa1dc23e05faa169e8d"
+Install "$cache/semisecure/.qt-license" "$targetFolder/.qt-license" $sha1QtLicense
+
+# Login keychain
+sha1LoginKeychainPassword="aae58d00d0a1b179a09f21cfc67f9d16fb95ff36"
+Install "$cacheSigningTools/login_keychain_password.txt" "$targetFolder/login_keychain_password.txt" "$sha1LoginKeychainPassword"
+loginKeychainPassword=$(<"$targetFolder/login_keychain_password.txt")
+loginKeychain=$keychains/login.keychain
+
+echo "Setting login.keychain as default keychain.."
+security default-keychain -s $loginKeychain*
+echo "Unlocking Login keychain with password.."
+security unlock-keychain -p "$loginKeychainPassword" $loginKeychain*
+
+echo "remove the "Lock after X minutes of inactivity" from login.keychain"
+security set-keychain-settings $loginKeychain
+
+# Apple Worldwide Developer Relations Certification Authority -> https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
+sha1AppleWWDRCA="ff6797793a3cd798dc5b2abef56f73edc9f83a64"
+Install "$cacheSigningTools/AppleWWDRCA.cer" "$targetFolder/AppleWWDRCA.cer" $sha1AppleWWDRCA
+sudo security add-certificates -k $loginKeychain* "$targetFolder/AppleWWDRCA.cer"
+
+# Developer ID Certification Authority -> https://www.apple.com/certificateauthority/DeveloperIDCA.cer
+sha1DeveloperIDCA="3b166c3b7dc4b751c9fe2afab9135641e388e186"
+Install "$cacheSigningTools/DeveloperIDCA.cer" "$targetFolder/DeveloperIDCA.cer" $sha1DeveloperIDCA
+sudo security add-certificates -k $loginKeychain* "$targetFolder/DeveloperIDCA.cer"
+
+# Create script to unlock keychain 'security unlock-keychain -p 'password' Developer_ID_TheQtCompany.keychain'
+sha1UnLockKeychain="4398870e3f558ad28c80566b5f70e24dc29ea724"
+unlockKeychain=$targetFolder/unlock-keychain.sh
+Install "$cacheSigningTools/unlock-keychain.sh" "$unlockKeychain" $sha1UnLockKeychain
+sudo chmod 755 "$unlockKeychain"
+
+# Codesigning requirements file. The bundle identifier in the requirements file should match the identifier of the application that is signed.
+shaCsreq="2c3f00b1845a0f475673fd6934ba25ea51d1f910"
+csreq=$targetFolder/csreq_qt_company.txt
+Install "$cacheSigningTools/csreq_qt_company.txt" "$csreq" $shaCsreq
+chmod 755 "$csreq"
+
+# iOS signing tools
+devIDKeychain="Developer_ID_TheQtCompany.keychain"
+shaDevIdKeychain="0420a129c17725a97afd6fdafeb9cddfb80a65ca"
+Install "$cacheSigningTools/$devIDKeychain" "$keychains/$devIDKeychain" $shaDevIdKeychain
+echo "Opening $devIDKeychain.."
+open "$keychains/$devIDKeychain"
+
+sha1DeveloperIDTheQtCompanyKeychainPassword="d758e067736bbda7a91ffaec66cd38afdaf68ea6"
+Install "$cacheSigningTools/Developer_ID_TheQtCompany_keychain_password.txt" "$targetFolder/Developer_ID_TheQtCompany_keychain_password.txt" "$sha1DeveloperIDTheQtCompanyKeychainPassword"
+DeveloperIDTheQtCompanyKeychainPassword=$(<"$targetFolder/Developer_ID_TheQtCompany_keychain_password.txt")
+
+echo "Unlocking $devIDKeychain with password.."
+security unlock-keychain -p "$DeveloperIDTheQtCompanyKeychainPassword" $keychains/Developer_ID_TheQtCompany.keychain
+security set-keychain-settings $keychains/Developer_ID_TheQtCompany.keychain
+
+sha1Ios="aae58d00d0a1b179a09f21cfc67f9d16fb95ff36"
+Install "$cacheSigningTools/ios_password.txt" "$targetFolder/ios_password.txt" $sha1Ios
+iosPassword=$(<"$targetFolder/ios_password.txt")
+
+iPhoneDeveloper="iosdevelopment.p12"
+shaIPhoneDeveloper="f48f6827e8d0ccdc764cb987e401b9a6f7d3f10c"
+Install "$cacheSigningTools/latest_ios_cert/$iPhoneDeveloper" "$targetFolder/$iPhoneDeveloper" $shaIPhoneDeveloper
+echo "Importing $iPhoneDeveloper.."
+security import $targetFolder/$iPhoneDeveloper -k $loginKeychain* -P $iosPassword -T /usr/bin/codesign
+
+iPhoneDistribution="iosdistribution.p12"
+shaIPhoneDistribution="64b1174fc3ce0eca044fbc9fa144f6a2d4330171"
+Install "$cacheSigningTools/latest_ios_cert/$iPhoneDistribution" "$targetFolder/$iPhoneDistribution" $shaIPhoneDistribution
+echo "Importing $iPhoneDistribution.."
+security import "$targetFolder/$iPhoneDistribution" -k $loginKeychain* -P $iosPassword -T /usr/bin/codesign
+
+# Mobileprovision
+echo "Creating directory $targetFolder/Library/MobileDevice/Provisioning Profiles.."
+mkdir "$targetFolder/Library/MobileDevice"
+mkdir "$targetFolder/Library/MobileDevice/Provisioning Profiles"
+shaMobileprovision="88c67c95a6f59e6463a00da0b5021f581db624bf"
+Install "$cacheSigningTools/latest_ios_cert/iOS_Dev08112017.mobileprovision" "$targetFolder/Library/MobileDevice/Provisioning Profiles/iOS_Dev08112017.mobileprovision" $shaMobileprovision
+
+# Removing password files
+rm -fr "$targetFolder/login_keychain_password.txt"
+
diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh b/coin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh
new file mode 100755
index 00000000..27ff15c3
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/unix/squishInstall.sh
+
diff --git a/coin/provisioning/qtci-windows-10-x86_64/79-opcua_unifiedautomation.ps1 b/coin/provisioning/qtci-windows-10-x86_64/79-opcua_unifiedautomation.ps1
new file mode 100644
index 00000000..e7f14459
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/79-opcua_unifiedautomation.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\opcua_unifiedautomation.ps1"
diff --git a/coin/provisioning/qtci-windows-10-x86_64/79-open62541.ps1 b/coin/provisioning/qtci-windows-10-x86_64/79-open62541.ps1
new file mode 100644
index 00000000..9b532392
--- /dev/null
+++ b/coin/provisioning/qtci-windows-10-x86_64/79-open62541.ps1
@@ -0,0 +1 @@
+. "$PSScriptRoot\..\common\windows\open62541.ps1"
diff --git a/coin/provisioning/qtci-windows-7-x86/79-open62541.ps1 b/coin/provisioning/qtci-windows-7-x86/79-open62541.ps1
new file mode 100644
index 00000000..a7bc8cd4
--- /dev/null
+++ b/coin/provisioning/qtci-windows-7-x86/79-open62541.ps1
@@ -0,0 +1,2 @@
+. "$PSScriptRoot\..\common\windows\open62541.ps1" -targetCommand prepare
+. "$PSScriptRoot\..\common\windows\open62541.ps1" -targetCommand mingw530
diff --git a/qt3d b/qt3d
-Subproject 0b10ab797fea863ff2c4897b1c4eb993b21b153
+Subproject d4cc70fb26aef2612a32195afd3a88cf068cdbc
diff --git a/qtactiveqt b/qtactiveqt
-Subproject e977cfd5d9d3eddca7c7daba29e54899fd77133
+Subproject 0f813d7f28bacdd71ba2540946a801cf44e40a7
diff --git a/qtandroidextras b/qtandroidextras
-Subproject 82fc3412c648d17ce99aecf7b46b273f72a4dbd
+Subproject 6711472d14d8f675160d559978acee96c1fb25c
diff --git a/qtbase b/qtbase
-Subproject 64a560d977a0a511ef541d6116d82e7b5c911a9
+Subproject 01e57909d4bce31483d023cf11dd2298391b38f
diff --git a/qtcanvas3d b/qtcanvas3d
-Subproject c8ca99e24e6ec57d961050ebe31da2109208c72
+Subproject d5565b5cee35570e185b34ca143158f79a27a3a
diff --git a/qtcharts b/qtcharts
-Subproject cf3255b18b488c7bb1802a9447f7b0ed0a2a443
+Subproject cfde71c26792d595c2d948627b6c19ce0d7e905
diff --git a/qtconnectivity b/qtconnectivity
-Subproject 9b48eeaa970926a60a886cadd54414f659a0af1
+Subproject f1d00a83d12f27c37c20b6138f00ff82960018c
diff --git a/qtdatavis3d b/qtdatavis3d
-Subproject d4ef709d16b6a22ee024069c19aba2a9311f8f9
+Subproject eea291d2a53ed1e390baa9ed1ca59fb764b8b4a
diff --git a/qtdeclarative b/qtdeclarative
-Subproject a30138cae86268d71415bc88cfba157977f4a44
+Subproject 7d183691a9ad95e1e1fafb611f83f42ba607bf5
diff --git a/qtdoc b/qtdoc
-Subproject 979a117029f8798e0a905fc8459d6083d237972
+Subproject 1a82dd567f5b11de0bfd534199b3dbdb4cdf2f7
diff --git a/qtenginio b/qtenginio
deleted file mode 160000
-Subproject b0ad5907f480307853f7ac951bacfaa61dcbd94
diff --git a/qtgamepad b/qtgamepad
-Subproject 7d1b726d0c338162be5e388bc594a52714d20f1
+Subproject 5900b8d3c65082286f65bd93ba71a7acbf98033
diff --git a/qtgraphicaleffects b/qtgraphicaleffects
-Subproject 76191bb1df602aa4a2bf99a3a0b21bb081a5269
+Subproject 69dddc6190800b56b88f3322c231e67a5b86fdd
diff --git a/qtimageformats b/qtimageformats
-Subproject 55904e9671f4e927308a78d217c0069528ba7f4
+Subproject 6a039e4e77cef7d590c973c27c03a4576d6f536
diff --git a/qtlocation b/qtlocation
-Subproject a8c09973f8cc960b9047157ad7e6834032bea0b
+Subproject cabf40ba4a897032b1e16b92147e1050c77f6fe
diff --git a/qtmacextras b/qtmacextras
-Subproject 61df18dac61bab1bc9fbc971ac9a6107734e2ee
+Subproject 497d3a2f094f2357729e7425572eb0575d42d64
diff --git a/qtmultimedia b/qtmultimedia
-Subproject 02ac3f58721bb52db612acd3bb2e2c26bfc3e05
+Subproject 4378984c44814c0b80bcf1acdabace54bcb2c8c
diff --git a/qtnetworkauth b/qtnetworkauth
-Subproject c47f273569fd389ab86e75749166a953f015ecb
+Subproject 093e7176cf9627db0ea1673ca329b722bd2397a
diff --git a/qtpurchasing b/qtpurchasing
-Subproject b888333a425e3a5d52c06e9891440b7c056bdca
+Subproject b474eb62c44c002e1b78bae97dde0bf77b735dc
diff --git a/qtquickcontrols b/qtquickcontrols
-Subproject 4f5b04a5f6376b3b29e37abb6301cc1bdab5af8
+Subproject 07296992462dccf7e4512a829e9e1e5374f4276
diff --git a/qtquickcontrols2 b/qtquickcontrols2
-Subproject 4865136be9c61aab50c8f30942996bba58a59c3
+Subproject f6e2de9d75ebd6c782fcb20e48375c9ac80d9d2
diff --git a/qtremoteobjects b/qtremoteobjects
-Subproject f65fb4a28d635de83f35c391d694768d5da76a2
+Subproject 4731d53f25a8cab7b7b99a90adf1ac922045639
diff --git a/qtscript b/qtscript
-Subproject 2e67664efc66e2f96eb8c6859bef6d6a4160bad
+Subproject 5f3e6f8a369839f51e65c65d65da45bd0f87935
diff --git a/qtscxml b/qtscxml
-Subproject 806eae6ed05ba114cdf1d35aa2b0855ebfb5d15
+Subproject b2dbb4ba78ca92e685307be94f28cf0bdb54171
diff --git a/qtsensors b/qtsensors
-Subproject a2d3d45f3e9f779a4fc10f8df07b9bd921e755c
+Subproject 44c357ce531b06d7050ac9987c1ee8c1c470bd7
diff --git a/qtserialbus b/qtserialbus
-Subproject 226bd2f84c807b5401a82832dafa48d34966052
+Subproject 13d7ca49093a2b7d60ccee703c0d45542e4990d
diff --git a/qtserialport b/qtserialport
-Subproject e0bd3949c30ce9c1988a6d6a3c0850d16a1fb33
+Subproject 25651536583ec4a138df2efb825b6a61969c499
diff --git a/qtspeech b/qtspeech
-Subproject 34a26b6773f1d9a5592ecb02e08209a0b74fa92
+Subproject b7effcdb6fa3d6ef57c1b6c8ebf3dbd55b8f14d
diff --git a/qtsvg b/qtsvg
-Subproject 1262e6dc979d0624307897980be27b8310fe34a
+Subproject 524478f60e6eac991b9ef033a2030a9ea5aa5c3
diff --git a/qttools b/qttools
-Subproject 6db52757d81870fe547d62e677fa0757fd663fc
+Subproject 92e96239dca854ef91508873325c0002e118c65
diff --git a/qttranslations b/qttranslations
-Subproject 60de15a0e0121096239cf6031250d2862e77971
+Subproject e2ab66653d0c8ae59868ff5bc2a3a44d1b61cfd
diff --git a/qtvirtualkeyboard b/qtvirtualkeyboard
-Subproject bf39468a6368b055335c6b73da65577ec55731e
+Subproject 263a16009e8d08004a546954cd7b2671c26fab9
diff --git a/qtwayland b/qtwayland
-Subproject a6cfa65eae4d15c7ad5e7411d998332179080fb
+Subproject f4527f1581486b99d2699b2675ad5d258bc8a7f
diff --git a/qtwebchannel b/qtwebchannel
-Subproject 1906f62469e608f712c1507dabd74638e38d807
+Subproject 0880c04eec2653b94ac58f0e20a2215243fd1c6
diff --git a/qtwebengine b/qtwebengine
-Subproject 0c01be81920123a3c3456b727efcb2e9593c65d
+Subproject a5bdc6236ad52586579a9a3da6a059835ed6076
diff --git a/qtwebglplugin b/qtwebglplugin
-Subproject e87065b17b9797aaeb0405a9c4b6191d1745d50
+Subproject 90bb25e2132aded600cf68337f2390e3eb7d7a0
diff --git a/qtwebsockets b/qtwebsockets
-Subproject b2478bfb1f9cb48e077aeefd7a52be5d74de643
+Subproject b8c8bb67342b83091a4066ba6f45e150330cb0a
diff --git a/qtwebview b/qtwebview
-Subproject c95d904fa11b925a1617e4b5b2a87915079d864
+Subproject 4f37dfaa449049441c44d352f3c03e40f37cd64
diff --git a/qtwinextras b/qtwinextras
-Subproject da2c33386d4c55638c5d2d797ea416562e98d3c
+Subproject 44a28955dc8090dc8e9fa59e57c664e78d24be5
diff --git a/qtx11extras b/qtx11extras
-Subproject acebfcd63f34123e9a57d4ab76526eb0dd8ceff
+Subproject 5c483fe4fcad1e0474017856996067834cdee6b
diff --git a/qtxmlpatterns b/qtxmlpatterns
-Subproject dbc1311af757c5acdca034d3632dca3bf1f81af
+Subproject e95c186fe8da96fba394490f9bca817534124b6