diff options
139 files changed, 1588 insertions, 412 deletions
diff --git a/.gitmodules b/.gitmodules index 9ac0ec9c..eeba9f34 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,66 +1,68 @@ [submodule "qtbase"] path = qtbase url = ../qtbase.git - branch = 5.11 + branch = 5.12 status = essential [submodule "qtsvg"] depends = qtbase path = qtsvg url = ../qtsvg.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtdeclarative"] depends = qtbase - recommends = qtsvg qtxmlpatterns + recommends = qtsvg path = qtdeclarative url = ../qtdeclarative.git - branch = 5.11 + branch = 5.12 status = essential [submodule "qtactiveqt"] depends = qtbase path = qtactiveqt url = ../qtactiveqt.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtscript"] depends = qtbase recommends = qttools path = qtscript url = ../qtscript.git - branch = 5.11 + branch = 5.12 status = deprecated [submodule "qtmultimedia"] depends = qtbase recommends = qtdeclarative path = qtmultimedia url = ../qtmultimedia.git - branch = 5.11 + branch = 5.12 status = essential [submodule "qttools"] depends = qtbase recommends = qtdeclarative qtactiveqt path = qttools url = ../qttools.git - branch = 5.11 + branch = 5.12 status = essential [submodule "qtxmlpatterns"] depends = qtbase + recommends = qtdeclarative path = qtxmlpatterns url = ../qtxmlpatterns.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qttranslations"] depends = qttools path = qttranslations url = ../qttranslations.git - branch = 5.11 + branch = 5.12 status = essential priority = 30 [submodule "qtdoc"] - depends = qtdeclarative + depends = qtdeclarative qttools + recommends = qtmultimedia qtquickcontrols qtquickcontrols2 path = qtdoc url = ../qtdoc.git - branch = 5.11 + branch = 5.12 status = essential priority = 40 [submodule "qtrepotools"] @@ -81,14 +83,14 @@ recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport path = qtlocation url = ../qtlocation.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtsensors"] depends = qtbase recommends = qtdeclarative path = qtsensors url = ../qtsensors.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtsystems"] depends = qtbase @@ -121,191 +123,185 @@ recommends = qtdeclarative qtandroidextras path = qtconnectivity url = ../qtconnectivity.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtwayland"] depends = qtbase recommends = qtdeclarative path = qtwayland url = ../qtwayland.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qt3d"] depends = qtbase recommends = qtdeclarative qtimageformats qtgamepad path = qt3d url = ../qt3d.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtimageformats"] depends = qtbase path = qtimageformats url = ../qtimageformats.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtgraphicaleffects"] depends = qtdeclarative path = qtgraphicaleffects url = ../qtgraphicaleffects.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtquickcontrols"] depends = qtdeclarative recommends = qtgraphicaleffects path = qtquickcontrols url = ../qtquickcontrols.git - branch = 5.11 - status = essential + branch = 5.12 + status = addon [submodule "qtserialbus"] depends = qtserialport path = qtserialbus url = ../qtserialbus.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtserialport"] depends = qtbase path = qtserialport url = ../qtserialport.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtx11extras"] depends = qtbase path = qtx11extras url = ../qtx11extras.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtmacextras"] depends = qtbase path = qtmacextras url = ../qtmacextras.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtwinextras"] depends = qtbase recommends = qtdeclarative qtmultimedia path = qtwinextras url = ../qtwinextras.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtandroidextras"] depends = qtbase path = qtandroidextras url = ../qtandroidextras.git - branch = 5.11 + branch = 5.12 status = addon -[submodule "qtenginio"] - depends = qtdeclarative - path = qtenginio - url = ../qtenginio.git - branch = dev - status = ignore [submodule "qtwebsockets"] depends = qtbase recommends = qtdeclarative path = qtwebsockets url = ../qtwebsockets.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtwebchannel"] depends = qtbase recommends = qtdeclarative qtwebsockets path = qtwebchannel url = ../qtwebchannel.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtwebengine"] depends = qtquickcontrols qtwebchannel recommends = qtlocation qttools path = qtwebengine url = ../qtwebengine.git - branch = 5.11 + branch = 5.12 status = addon priority = 10 [submodule "qtcanvas3d"] depends = qtdeclarative path = qtcanvas3d url = ../qtcanvas3d.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtwebview"] depends = qtdeclarative recommends = qtwebengine path = qtwebview url = ../qtwebview.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtquickcontrols2"] depends = qtgraphicaleffects recommends = qtimageformats path = qtquickcontrols2 url = ../qtquickcontrols2.git - branch = 5.11 - status = addon + branch = 5.12 + status = essential [submodule "qtpurchasing"] depends = qtbase recommends = qtdeclarative qtandroidextras path = qtpurchasing url = ../qtpurchasing.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtcharts"] depends = qtbase recommends = qtdeclarative qtmultimedia path = qtcharts url = ../qtcharts.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtdatavis3d"] depends = qtbase recommends = qtdeclarative qtmultimedia path = qtdatavis3d url = ../qtdatavis3d.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtvirtualkeyboard"] depends = qtbase qtdeclarative qtsvg recommends = qtmultimedia qtquickcontrols path = qtvirtualkeyboard url = ../qtvirtualkeyboard.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtgamepad"] depends = qtbase recommends = qtdeclarative path = qtgamepad url = ../qtgamepad.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtscxml"] depends = qtbase qtdeclarative path = qtscxml url = ../qtscxml.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtspeech"] depends = qtbase recommends = qtdeclarative qtmultimedia path = qtspeech url = ../qtspeech.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtnetworkauth"] depends = qtbase path = qtnetworkauth url = ../qtnetworkauth.git - branch = 5.11 + branch = 5.12 status = addon [submodule "qtremoteobjects"] depends = qtbase recommends = qtdeclarative path = qtremoteobjects url = ../qtremoteobjects.git - branch = 5.11 + branch = 5.12 status = preview [submodule "qtwebglplugin"] depends = qtbase qtwebsockets recommends = qtdeclarative path = qtwebglplugin url = ../qtwebglplugin.git - branch = 5.11 + branch = 5.12 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 9235d866..b0e9e210 100644 --- a/coin/platform_configs/default.txt +++ b/coin/platform_configs/default.txt @@ -1,27 +1,28 @@ Template Target OS Target arch Compiler Features ----------------------------------- ------------------- ----------- ----------- ------------------------------------------------------------------------------------- qtci-windows-10-x86_64-10 MSVC2015 DeveloperBuild Release QtNamespace QtLibInfix BuildExamples -qtci-windows-7-x86-3 Mingw53 DeveloperBuild Release OpenGLDynamic +qtci-windows-7-x86-3 Mingw73 DeveloperBuild Release OpenGLDynamic qtci-windows-10-x86_64-10 x86 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic qtci-windows-10-x86_64-10 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic qtci-windows-10-x86_64-10 WinRT_10 x86 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests qtci-windows-10-x86_64-10 WinRT_10 armv7 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests qtci-windows-10-x86_64-10 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic -qtci-linux-Ubuntu-16.04-x86_64-2 GCC NoWidgets ForceDebugInfo -qtci-linux-Ubuntu-16.04-x86_64-2 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace BuildExamples Documentation +qtci-linux-Ubuntu-16.04-x86_64-2 GCC DeveloperBuild OutOfSourceBuild QtLibInfix QtNamespace BuildExamples +qtci-linux-Ubuntu-18.04-x86_64 GCC NoWidgets ForceDebugInfo +qtci-linux-Ubuntu-18.04-x86_64 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-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 Packaging DebugAndRelease DisableTests Static -qtci-macos-10.12-x86_64-8 TvOS_ANY multi Clang DebugAndRelease DisableTests -qtci-macos-10.12-x86_64-8 WatchOS_ANY multi Clang DebugAndRelease DisableTests -qtci-linux-RHEL-7.4-x86_64 Android_ANY armv7 GCC 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 +qtci-macos-10.13-x86_64 Clang DebugAndRelease Release +qtci-macos-10.12-x86_64-8 Clang DeveloperBuild Release QtNamespace NoPch +qtci-macos-10.12-x86_64-8 Clang Release NoFramework DisableTests +qtci-macos-10.13-x86_64 IOS_ANY multi Clang Packaging DebugAndRelease DisableTests Static +qtci-macos-10.13-x86_64 TvOS_ANY multi Clang DebugAndRelease DisableTests +qtci-macos-10.13-x86_64 WatchOS_ANY multi Clang DebugAndRelease DisableTests +qtci-linux-RHEL-7.4-x86_64 Android_ANY armv7 Clang Packaging Release DisableTests OpenGLES2 NoUseGoldLinker +qtci-linux-Ubuntu-18.04-x86_64 QEMU armv7 GCC Release +qtci-linux-Ubuntu-18.04-x86_64 QEMU arm64 GCC Release +qtci-linux-Ubuntu-18.04-x86_64 GCC TestOnly LicenseCheck qtci-linux-RHEL-7.4-x86_64 INTEGRITY_11_04 armv7 GCC Release DisableTests OpenGLES2 NoUseGoldLinker qtci-linux-RHEL-7.4-x86_64 QNX_700 armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker diff --git a/coin/platform_configs/qt5.txt b/coin/platform_configs/qt5.txt index fae586d9..f9979818 100644 --- a/coin/platform_configs/qt5.txt +++ b/coin/platform_configs/qt5.txt @@ -3,18 +3,18 @@ Template Target OS Target arch Compiler Features qtci-windows-10-x86_64-10 WinRT_10 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests qtci-windows-10-x86_64-10 x86 MSVC2017 DebugAndRelease Release ForceDebugInfo OpenGLDynamic qtci-windows-10-x86_64-10 WinRT_10 x86 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo DisableTests -qtci-windows-7-x86-3 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic DisableTests +qtci-windows-7-x86-3 Mingw73 Packaging DebugAndRelease Release OpenGLDynamic DisableTests 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-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-linux-RHEL-7.4-x86_64 Android_ANY x86 Clang Packaging Release DisableTests OpenGLES2 NoUseGoldLinker +qtci-windows-7-x86-3 Android_ANY armv7 Mingw73 Packaging Release DisableTests OpenGLES2 +qtci-windows-7-x86-3 Android_ANY x86 Mingw73 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-windows-10-x86_64-10 QNX_700 armv7 Mingw53 Packaging Release DisableTests OpenGLES2 -qtci-windows-10-x86_64-10 QNX_700 armv8 Mingw53 Packaging Release DisableTests OpenGLES2 -qtci-windows-10-x86_64-10 QNX_700 x86_64 Mingw53 Packaging Release DisableTests OpenGLES2 +qtci-windows-10-x86_64-10 QNX_700 armv7 Mingw73 Packaging Release DisableTests OpenGLES2 +qtci-windows-10-x86_64-10 QNX_700 armv8 Mingw73 Packaging Release DisableTests OpenGLES2 +qtci-windows-10-x86_64-10 QNX_700 x86_64 Mingw73 Packaging Release DisableTests OpenGLES2 qtci-linux-RHEL-7.4-x86_64 QNX_700 armv8 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker qtci-linux-RHEL-7.4-x86_64 QNX_700 x86_64 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker diff --git a/coin/platform_configs/qtbase.txt b/coin/platform_configs/qtbase.txt index ee4f4e66..4a2c720c 100644 --- a/coin/platform_configs/qtbase.txt +++ b/coin/platform_configs/qtbase.txt @@ -1,4 +1,5 @@ Template Target OS Target arch Compiler Features --------------------------------- ------------------- ----------- ----------- ------------------------------------------------------------------------------------- -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-linux-Ubuntu-18.04-x86_64 QEMU armv7 GCC DeveloperBuild DisableTests +qtci-linux-Ubuntu-18.04-x86_64 QEMU arm64 GCC DeveloperBuild DisableTests +qtci-windows-10-x86_64-10 WinRT_10 x86_64 MSVC2015 DeveloperBuild Static Release ForceDebugInfo diff --git a/coin/platform_configs/qtdeclarative.txt b/coin/platform_configs/qtdeclarative.txt index 9d321d40..e2b69559 100644 --- a/coin/platform_configs/qtdeclarative.txt +++ b/coin/platform_configs/qtdeclarative.txt @@ -1,4 +1,4 @@ Template Target OS Target arch Compiler Features --------------------------------- ------------------- ----------- ----------- ------------------------------------------------------------------------------------- -qtci-linux-Ubuntu-16.04-x86_64-2 QEMU armv7 GCC DeveloperBuild -qtci-linux-Ubuntu-16.04-x86_64-2 QEMU arm64 GCC DeveloperBuild +qtci-linux-Ubuntu-18.04-x86_64 QEMU armv7 GCC DeveloperBuild +qtci-linux-Ubuntu-18.04-x86_64 QEMU arm64 GCC DeveloperBuild diff --git a/coin/platform_configs/qtwebkit.txt b/coin/platform_configs/qtwebkit.txt index efae9754..a357ad5b 100644 --- a/coin/platform_configs/qtwebkit.txt +++ b/coin/platform_configs/qtwebkit.txt @@ -1,4 +1,4 @@ Template Target OS Target arch Compiler Features --------------------------- ------------------- ----------- ----------- ------------------------------------------------------------------------------------- qtci-windows-10-x86_64-10 x86 MSVC2017 DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests -qtci-windows-7-x86-3 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic DisableTests +qtci-windows-7-x86-3 Mingw73 Packaging DebugAndRelease Release OpenGLDynamic DisableTests 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/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh b/coin/provisioning/common/linux/apt_wait_loop.sh index 84238ebf..b34e1ebc 100755 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-refresh-subscription-manager.sh +++ b/coin/provisioning/common/linux/apt_wait_loop.sh @@ -35,9 +35,10 @@ set -ex -# refresh local certificates -sudo subscription-manager refresh - -# Attach available subscriptions to system. This is needed when subscriptions are renewed. -sudo subscription-manager attach --auto +function waitLoop { +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +} diff --git a/coin/provisioning/common/linux/open62541.sh b/coin/provisioning/common/linux/open62541.sh index 97a76886..56c22018 100755 --- a/coin/provisioning/common/linux/open62541.sh +++ b/coin/provisioning/common/linux/open62541.sh @@ -59,15 +59,15 @@ sudo pip install six git clone https://github.com/open62541/open62541.git open62541 cd open62541 -git checkout 8845e493d7751fd4eee3917b540e5346646b9cf7 +git checkout 215651ab8db94e5eacdd10ec26a5a9fb96b9301f 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/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh b/coin/provisioning/common/macos/disable_spotlight.sh index 99612260..7c60b52b 100755 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/01-systemsetup.sh +++ b/coin/provisioning/common/macos/disable_spotlight.sh @@ -33,12 +33,6 @@ ## ############################################################################# -set -ex - -# shellcheck source=../common/unix/check_and_set_proxy.sh -source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" - -# shellcheck disable=SC2031 -if [ "$http_proxy" != "" ]; then - echo "proxy=$proxy" | sudo tee -a /etc/yum.conf -fi +# Disable spotlight and and stop indexing +sudo mdutil -a -i off +sudo defaults write /.Spotlight-V100/VolumeConfiguration Exclusions -array "/Volumes" diff --git a/coin/provisioning/common/macos/install_xcode.sh b/coin/provisioning/common/macos/install_xcode.sh index e569bee5..5fcf26a0 100755 --- a/coin/provisioning/common/macos/install_xcode.sh +++ b/coin/provisioning/common/macos/install_xcode.sh @@ -49,11 +49,19 @@ 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 + echo "Install packages" + # -runFirstLaunch is valid in 9.x + sudo xcodebuild -runFirstLaunch || true + echo "Enabling developer mode, so that using lldb does not require interactive password entry" sudo /usr/sbin/DevToolsSecurity -enable 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/unix/mqtt_broker.sh b/coin/provisioning/common/unix/mqtt_broker.sh index 2d79c77b..22a9a66a 100644 --- a/coin/provisioning/common/unix/mqtt_broker.sh +++ b/coin/provisioning/common/unix/mqtt_broker.sh @@ -39,10 +39,10 @@ source "${BASH_SOURCE%/*}/InstallFromCompressedFileFromURL.sh" source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh" -CommitSHA="5e14a65bbf602fe5d58afdd1394ce76d41ed5c65" +CommitSHA="20bad2475c27a6e1d24a56d90a9fceb40963261e" PrimaryUrl="http://ci-files01-hki.ci.local/input/mqtt_broker/paho.mqtt.testing-$CommitSHA.zip" AltUrl="https://github.com/eclipse/paho.mqtt.testing/archive/$CommitSHA.zip" -SHA1="6afc375c2702eb36a960f38dd4912a3422d679fd" +SHA1="a0ac88715c2aebb9573a113dc13925a90da19233" targetFolder="/opt/paho_broker" appPrefix="paho.mqtt.testing-$CommitSHA" 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/common/windows/mqtt_broker.ps1 b/coin/provisioning/common/windows/mqtt_broker.ps1 index f362f55c..e37994c9 100644 --- a/coin/provisioning/common/windows/mqtt_broker.ps1 +++ b/coin/provisioning/common/windows/mqtt_broker.ps1 @@ -35,8 +35,8 @@ Write-Host "MQTT: Downloading Paho test broker..." $zip = Get-DownloadLocation "pahotest.zip" -$commitSHA = "5e14a65bbf602fe5d58afdd1394ce76d41ed5c65" -$sha1 = "6afc375c2702eb36a960f38dd4912a3422d679fd" +$commitSHA = "20bad2475c27a6e1d24a56d90a9fceb40963261e" +$sha1 = "a0ac88715c2aebb9573a113dc13925a90da19233" $internalUrl = "http://ci-files01-hki.ci.local/input/mqtt_broker/paho.mqtt.testing-$commitSHA.zip" $externalUrl = "https://github.com/eclipse/paho.mqtt.testing/archive/$commitSHA.zip" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.sh b/coin/provisioning/common/windows/opcua_unifiedautomation.ps1 index 1354bf6b..b0ed74ec 100755..100644 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/99-version.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,16 +31,29 @@ ## ############################################################################# -# This script needs to be called last during provisioning so that the software information will show up last in provision log. +. "$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 -# Storage installed RPM packages information +Download $externalUrl $internalUrl $zip +Verify-Checksum $zip $sha1 -set -ex +Write-Host "UACPPSDK: Installing $zip..." +Extract-7Zip $zip (Get-DefaultDownloadLocation) +Remove-Item -Path $zip -# shellcheck disable=SC2129 -echo "*********************************************" >> ~/versions.txt -echo "***** All installed RPM packages *****" >> ~/versions.txt -rpm -q -a | sort >> ~/versions.txt -echo "*********************************************" >> ~/versions.txt +$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 -"$(dirname "$0")/../common/linux/version.sh" +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..beb09487 --- /dev/null +++ b/coin/provisioning/common/windows/open62541.ps1 @@ -0,0 +1,265 @@ +############################################################################# +## +## 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 = "215651ab8db94e5eacdd10ec26a5a9fb96b9301f" +$sha1 = "8d899f986071525be73e1ee8565b28ea10536d7d" +$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, mingw730, 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, mingw730, 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 14.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 14.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 MinGW730 build" + PowerShell -ExecutionPolicy Bypass -File "$PSScriptRoot\open62541.ps1" -targetCommand mingw730 + 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 "### MinGW730 x64" + DownloadAndInstall mingw730 x64 + 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/python.ps1 b/coin/provisioning/common/windows/python.ps1 index e2855c75..86b82eb6 100644 --- a/coin/provisioning/common/windows/python.ps1 +++ b/coin/provisioning/common/windows/python.ps1 @@ -83,4 +83,7 @@ if (IsProxyEnabled) { } Run-Executable "$targetDir\Scripts\pip.exe" "$pip_args install virtualenv" +# Install PyPDF2 for QSR documentation +Run-Executable "$targetDir\Scripts\pip.exe" "$pip_args install PyPDF2" + Write-Output "Python-$archVer = $version" >> ~/versions.txt diff --git a/coin/provisioning/common/windows/python3.ps1 b/coin/provisioning/common/windows/python3.ps1 index 473fe65c..b2ad0ba8 100644 --- a/coin/provisioning/common/windows/python3.ps1 +++ b/coin/provisioning/common/windows/python3.ps1 @@ -79,7 +79,15 @@ 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" + +# Install PyPDF2 for QSR documentation +Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install PyPDF2" Write-Output "Python3-$archVer = $version" >> ~/versions.txt diff --git a/coin/provisioning/common/windows/vclibs_debug.ps1 b/coin/provisioning/common/windows/vclibs_debug.ps1 new file mode 100644 index 00000000..e9020694 --- /dev/null +++ b/coin/provisioning/common/windows/vclibs_debug.ps1 @@ -0,0 +1,16 @@ +function Install-VCLibsDebug +{ + Param ( + [string]$Arch + ) + + $installedPackage = Get-AppxPackage Microsoft.VCLibs.140.00.Debug | Where-Object {$_.Architecture -eq $Arch} + if ($installedPackage) { + Write-Host "Debug VCLibs already installed for $Arch." + return + } + + Add-AppxPackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs\14.0\Appx\Debug\$Arch\Microsoft.VCLibs.$Arch.Debug.14.00.appx" + + Write-Host "Debug VCLibs successfully installed for $Arch." +} 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..32bd288c 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) @@ -157,12 +158,20 @@ installPackages+=(libbluetooth-dev) #VirtualBox for RTA installPackages+=(virtualbox) installPackages+=(dkms) +#Pypdf for QSR documentation +installPackages+=(python-pypdf2) echo "Running update for apt" 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-Ubuntu-16.04-x86_64/42-freeopcua.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/42-freeopcua.sh deleted file mode 100755 index 6570e107..00000000 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/42-freeopcua.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env bash - -############################################################################# -## -## Copyright (C) 2016 The Qt Company Ltd. -## Contact: http://www.qt.io/licensing/ -## -## This file is part of the test suite of the Qt Toolkit. -## -## $QT_BEGIN_LICENSE:LGPL21$ -## Commercial License Usage -## Licensees holding valid commercial Qt licenses may use this file in -## accordance with the commercial license agreement provided with the -## Software or, alternatively, in accordance with the terms contained in -## a written agreement between you and The Qt Company. For licensing terms -## and conditions see http://www.qt.io/terms-conditions. For further -## information use the contact form at http://www.qt.io/contact-us. -## -## GNU Lesser General Public License Usage -## Alternatively, this file may be used under the terms of the GNU Lesser -## General Public License version 2.1 or version 3 as published by the Free -## Software Foundation and appearing in the file LICENSE.LGPLv21 and -## LICENSE.LGPLv3 included in the packaging of this file. Please review the -## following information to ensure the GNU Lesser General Public License -## requirements will be met: https://www.gnu.org/licenses/lgpl.html and -## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -## -## As a special exception, The Qt Company gives you certain additional -## rights. These rights are described in The Qt Company LGPL Exception -## version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -## -## $QT_END_LICENSE$ -## -############################################################################# - -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 - -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 diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh new file mode 100755 index 00000000..90c3a7eb --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/80-docker.sh @@ -0,0 +1,52 @@ +#!/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 + +# 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-Ubuntu-18.04-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/01-systemsetup.sh new file mode 100755 index 00000000..96bf23f8 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/01-systemsetup.sh @@ -0,0 +1,70 @@ +#!/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$ +## +############################################################################# + +# This script modifies system settings for automated use + +set -ex + +# shellcheck source=../common/unix/check_and_set_proxy.sh +source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" + +NTS_IP=10.212.2.216 + +echo "Set timezone to UTC." +sudo timedatectl set-timezone Etc/UTC +echo "Timeout for blanking the screen (0 = never)" +gsettings set org.gnome.desktop.session idle-delay 0 +echo "Prevents screen lock when screesaver goes active." +gsettings set org.gnome.desktop.screensaver lock-enabled false +echo "Set grub timeout to 0" +sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub +sudo update-grub + +# https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1624320 +echo "Setting up workaround for Ubuntu systemd resolve bug" +sudo rm -f /etc/resolv.conf +sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf + +echo "Set Network Test Server address to $NTS_IP in /etc/hosts" +echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts + +echo 'LC_ALL=en_US.UTF8' | sudo tee /etc/default/locale + +if [ "$http_proxy" != "" ]; then + echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf +fi + +# This script diverts qtlogging.ini file so we don't get debugging related auto-test failures. +sudo dpkg-divert --divert /etc/xdg/QtProject/qtlogging.ini.foo --rename /etc/xdg/QtProject/qtlogging.ini diff --git a/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh new file mode 100755 index 00000000..ff2f1dac --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh @@ -0,0 +1,152 @@ +#!/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$ +## +############################################################################# + +# Install required packages with APT + +# shellcheck source=../common/linux/apt_wait_loop.sh +source "${BASH_SOURCE%/*}/../common/linux/apt_wait_loop.sh" + +echo "Disabling auto update" +sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic +for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do + sudo systemctl stop $service + sudo systemctl disable $service +done +# Git is not needed by builds themselves, but is nice to have +# immediately as one starts debugging +installPackages+=(git) +# 7zip is a needed decompressing tool +installPackages+=(p7zip-full) +# To be able to mount yocto-cache during builds +installPackages+=(nfs-common) +# libssl-dev provides headers for OpenSSL +installPackages+=(libssl-dev) +# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git +installPackages+=("^libxcb.*") +installPackages+=(libxkbcommon-dev) +installPackages+=(libxkbcommon-x11-dev) +installPackages+=(libx11-xcb-dev) +installPackages+=(libglu1-mesa-dev) +installPackages+=(libxrender-dev) +installPackages+=(libxi-dev) +# Enable linking to system dbus +installPackages+=(libdbus-1-dev) +# Needed libraries for WebEngine +installPackages+=(libudev-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libxss-dev) +# Common event loop handling +installPackages+=(libglib2.0-dev) +# MySQL support +installPackages+=(libmysqlclient-dev) +# PostgreSQL support +installPackages+=(libpq-dev) +# SQLite support +installPackages+=(libsqlite3-dev) +# ODBC support +installPackages+=(unixodbc-dev) +# Support for FreeType font engine +installPackages+=(libfreetype6-dev) +# Enable the usage of system jpeg libraries +installPackages+=(libjpeg-dev) +# Enable support for printer driver +installPackages+=(libcups2-dev) +# Install libraries needed for QtMultimedia to be able to support all plugins +installPackages+=(libasound2-dev) +installPackages+=(libgstreamer1.0-dev) +installPackages+=(libgstreamer-plugins-base1.0-dev) +installPackages+=(libgstreamer-plugins-good1.0-dev) +installPackages+=(libgstreamer-plugins-bad1.0-dev) +# Support for cross-building to x86 (needed by WebEngine boot2qt builds) +installPackages+=(g++-multilib) +# python3 development package +installPackages+=(python3-dev) +installPackages+=(python3-pip) +installPackages+=(python3-virtualenv) +# python2 development package +installPackages+=(python-dev) +# Automates interactive applications (Needed by RTA to automate configure testing) +installPackages+=(expect) +installPackages+=(mesa-common-dev) +installPackages+=(libgl1-mesa-glx) +installPackages+=(libgl1-mesa-dev) +installPackages+=(libegl1-mesa-dev) +installPackages+=(curl) +installPackages+=(libicu-dev) +installPackages+=(zlib1g-dev) +installPackages+=(zlib1g) +installPackages+=(openjdk-8-jdk) +installPackages+=(libgtk-3-dev) +installPackages+=(ninja-build) +installPackages+=(libssl-dev) +installPackages+=(libxcursor-dev) +installPackages+=(libxcomposite-dev) +installPackages+=(libxdamage-dev) +installPackages+=(libxrandr-dev) +installPackages+=(libfontconfig1-dev) +installPackages+=(libxss-dev) +installPackages+=(libsrtp0-dev) +installPackages+=(libwebp-dev) +installPackages+=(libjsoncpp-dev) +installPackages+=(libopus-dev) +installPackages+=(libminizip-dev) +installPackages+=(libavutil-dev) +installPackages+=(libavformat-dev) +installPackages+=(libavcodec-dev) +installPackages+=(libevent-dev) +installPackages+=(bison) +installPackages+=(flex) +installPackages+=(gperf) +installPackages+=(libasound2-dev) +installPackages+=(libpulse-dev) +installPackages+=(libxtst-dev) +installPackages+=(libnspr4-dev) +installPackages+=(libnss3-dev) +installPackages+=(libnss3) +installPackages+=(libopenal-dev) +installPackages+=(libbluetooth-dev) +#VirtualBox for RTA +installPackages+=(virtualbox) +installPackages+=(dkms) +# Needed for qtspeech +installPackages+=(libspeechd-dev) + +echo "Installing packages" +waitLoop +sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" +echo "Running update for apt" +waitLoop +sudo apt-get update diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-disable-ntp.sh index 89806892..89806892 100755 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/02-disable-ntp.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-disable-ntp.sh diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/03-qemu.sh index b2057b21..e3faa20e 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/03-qemu.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/03-qemu.sh @@ -45,8 +45,82 @@ cd "$tempDir" #latest commit from the master proven to work git checkout c7f1cf01b8245762ca5864e835d84f6677ae8b1f +git cherry-pick 75e5b70e6b5dcc4f2219992d7cffa462aa406af0 +git cherry-pick 04b33e21866412689f18b7ad6daf0a54d8f959a7 git submodule update --init pixman -./configure --target-list=arm-linux-user,aarch64-linux-user --static + +patch -p1 <<EOT +From aad6a8f17dc7ad3681d2d98a01e474a8904a129b Mon Sep 17 00:00:00 2001 +From: Simon Hausmann <simon.hausmann@qt.io> +Date: Fri, 24 Aug 2018 10:38:29 +0200 +Subject: [PATCH] linux-user: add support for MADV_DONTNEED + +Most flags to madvise() are just hints, so typically ignoring the +syscall and returning okay is fine. However applications exist that do +rely on MADV_DONTNEED behavior to guarantee that upon subsequent access +the mapping is refreshed from the backing file or zero for anonymous +mappings. +--- + linux-user/mmap.c | 18 ++++++++++++++++++ + linux-user/qemu.h | 1 + + linux-user/syscall.c | 6 +----- + 3 files changed, 20 insertions(+), 5 deletions(-) + +diff --git a/linux-user/mmap.c b/linux-user/mmap.c +index 61685bf79e..cb3069f27e 100644 +--- a/linux-user/mmap.c ++++ b/linux-user/mmap.c +@@ -764,3 +764,16 @@ int target_msync(abi_ulong start, abi_ulong len, int flags) + start &= qemu_host_page_mask; + return msync(g2h(start), end - start, flags); + } ++ ++int target_madvise(abi_ulong start, abi_ulong len, int flags) ++{ ++ /* A straight passthrough may not be safe because qemu sometimes ++ turns private file-backed mappings into anonymous mappings. ++ Most flags are hints, except for MADV_DONTNEED that applications ++ may rely on to zero out pages, so we pass that through. ++ Otherwise returning success is ok. */ ++ if (flags & MADV_DONTNEED) { ++ return madvise(g2h(start), len, MADV_DONTNEED); ++ } ++ return 0; ++} +diff --git a/linux-user/qemu.h b/linux-user/qemu.h +index 4edd7d0c08..3c975909a1 100644 +--- a/linux-user/qemu.h ++++ b/linux-user/qemu.h +@@ -429,6 +429,7 @@ int target_munmap(abi_ulong start, abi_ulong len); + abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size, + abi_ulong new_size, unsigned long flags, + abi_ulong new_addr); ++int target_madvise(abi_ulong start, abi_ulong len, int flags); + int target_msync(abi_ulong start, abi_ulong len, int flags); + extern unsigned long last_brk; + extern abi_ulong mmap_next_start; +diff --git a/linux-user/syscall.c b/linux-user/syscall.c +index 11a311f9db..94d8abc745 100644 +--- a/linux-user/syscall.c ++++ b/linux-user/syscall.c +@@ -11148,11 +11148,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, + + #ifdef TARGET_NR_madvise + case TARGET_NR_madvise: +- /* A straight passthrough may not be safe because qemu sometimes +- turns private file-backed mappings into anonymous mappings. +- This will break MADV_DONTNEED. +- This is a hint, so ignoring and returning success is ok. */ +- ret = get_errno(0); ++ ret = get_errno(target_madvise(arg1, arg2, arg3)); + break; + #endif + #if TARGET_ABI_BITS == 32 +-- +2.17.1 +EOT + +./configure --target-list=arm-linux-user,aarch64-linux-user --static --disable-werror make sudo make install rm -rf "$tempDir" diff --git a/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-libclang.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-libclang.sh new file mode 100755 index 00000000..0d18dbcf --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-libclang.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/unix/libclang.sh" diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-yocto.sh index cc799702..fbe669d9 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/04-yocto.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/04-yocto.sh @@ -42,11 +42,11 @@ source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh" echo "Installing Yocto toolchain for 32-bit b2qt..." -versionARM="2.3.1" -package="b2qt-x86_64-meta-toolchain-b2qt-embedded-sdk-qemuarmv7-41b0b46.sh" +versionARM="2.3.4" +package="b2qt-x86_64-meta-toolchain-b2qt-embedded-sdk-qemuarmv7-7608ebe.sh" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/boot2qt/pyro/$package" AltUrl="http://download.qt.io/development_releases/prebuilt/boot2qt/pyro/$package" -SHA1="f17cce550c9d2148f11ae5c760f43a67e9813a45" +SHA1="db7a0f4f9ddd5992a563d5348889021a7ceb1c56" yoctoInstaller="/tmp/yocto-toolchain-ARMv7.sh" yoctoLocationARMv7="/opt/yocto-armv7" sysrootARMv7="sysroots/armv7ahf-neon-poky-linux-gnueabi" @@ -60,11 +60,11 @@ rm -rf "$yoctoInstaller" echo "Installing Yocto toolchain for 64-bit b2qt..." -versionARM64="2.3.1" -package="b2qt-x86_64-meta-toolchain-b2qt-embedded-sdk-qemuarm64-41b0b46.sh" +versionARM64="2.3.4" +package="b2qt-x86_64-meta-toolchain-b2qt-embedded-sdk-qemuarm64-7608ebe.sh" PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/boot2qt/pyro/$package" AltUrl="http://download.qt.io/development_releases/prebuilt/boot2qt/pyro/$package" -SHA1="b49d7ec8a6339dda5a82815dc31fed1fae00851d" +SHA1="5dcae7c6cbc266798ba49a9e51fff1f06790729d" yoctoInstaller="/tmp/yocto-toolchain-ARM64.sh" yoctoLocationARM64="/opt/yocto-arm64" sysrootARM64="sysroots/aarch64-poky-linux" diff --git a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/10-openssl_for_android_linux.sh index 0f89e72c..0f89e72c 100755 --- a/coin/provisioning/qtci-linux-Ubuntu-16.04-x86_64/10-openssl_for_android_linux.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/10-openssl_for_android_linux.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/01-system_updates.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/30-fbx.sh index 94b53309..d8df4375 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/01-system_updates.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/30-fbx.sh @@ -3,4 +3,4 @@ set -ex BASEDIR=$(dirname "$0") -$BASEDIR/../common/macos/system_updates.sh +"$BASEDIR/../common/linux/fbx_linux.sh" diff --git a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/40-android_linux.sh index 505374c5..0527fe85 100755 --- a/coin/provisioning/qtci-linux-RHEL-6.6-x86_64/22-mqtt_broker.sh +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/40-android_linux.sh @@ -1,11 +1,11 @@ -#!/usr/bin/env bash +#!/bin/bash ############################################################################# ## ## 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,7 @@ ## ############################################################################# -# shellcheck source=../common/unix/mqtt_broker.sh -source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh" +set -ex + +# shellcheck source=../common/linux/android_linux.sh +source "${BASH_SOURCE%/*}/../common/linux/android_linux.sh" diff --git a/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/40-cmake.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/40-cmake.sh new file mode 100755 index 00000000..db8a3ff5 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/40-cmake.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +BASEDIR=$(dirname "$0") +"$BASEDIR/../common/linux/cmake_linux.sh" + diff --git a/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/90-squish.sh b/coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/90-squish.sh new file mode 100755 index 00000000..e4281588 --- /dev/null +++ b/coin/provisioning/qtci-linux-Ubuntu-18.04-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-linux-openSUSE-42.3-x86_64/01-systemsetup.sh b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh index 0e677642..61c19510 100755 --- a/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh +++ b/coin/provisioning/qtci-linux-openSUSE-42.3-x86_64/01-systemsetup.sh @@ -10,15 +10,24 @@ source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh" sed -i '$ a\[Daemon\]\nAutolock=false\nLockOnResume=false' ~/.config/kscreenlockerrc +sudo sed -i 's|GRUB_TIMEOUT=8|GRUB_TIMEOUT=0|g' /etc/default/grub +sudo grub2-mkconfig -o /boot/grub2/grub.cfg + echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts" echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts echo "Set DISPLAY" echo 'export DISPLAY=":0"' >> ~/.bashrc echo "Disabling file indexing." sudo balooctl disable -echo "Disable update notifications" + +while sudo fuser /usr/lib/packagekitd >/dev/null 2>&1 ; do + echo "Waiting for PackageKit to finish..." + sleep 0.5 +done +echo "Disabling update notifications" sudo zypper -nq remove plasma5-pk-updates + # shellcheck disable=SC2031 if [ "$http_proxy" != "" ]; then sudo sed -i 's/PROXY_ENABLED=\"no\"/PROXY_ENABLED=\"yes\"/' /etc/sysconfig/proxy 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/06-disable_spotlight.sh b/coin/provisioning/qtci-macos-10.12-x86_64/06-disable_spotlight.sh new file mode 100755 index 00000000..d991e6c0 --- /dev/null +++ b/coin/provisioning/qtci-macos-10.12-x86_64/06-disable_spotlight.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +$(dirname "$0")/../common/macos/disable_spotlight.sh 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-macos-10.13-x86_64/01-sha1sum-compatibility.sh b/coin/provisioning/qtci-macos-10.13-x86_64/01-sha1sum-compatibility.sh new file mode 100755 index 00000000..c3936499 --- /dev/null +++ b/coin/provisioning/qtci-macos-10.13-x86_64/01-sha1sum-compatibility.sh @@ -0,0 +1,50 @@ +#!/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$ +## +############################################################################# + +# 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 + +[ -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-osx-10.11-x86_64/02-disable-ntp.sh b/coin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh index 32528873..32528873 100644..100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/02-disable-ntp.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/02-disable-ntp.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/03-bashprofile.sh b/coin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh index 2c3e45f3..2c3e45f3 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/03-bashprofile.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/03-bashprofile.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh b/coin/provisioning/qtci-macos-10.13-x86_64/05-systemsetup.sh index 4a631b4f..4737b8e9 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/05-systemsetup.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/05-systemsetup.sh @@ -2,7 +2,7 @@ ############################################################################# ## -## 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,10 +33,10 @@ ## ############################################################################# -# This script modified system settings for automated use - set -ex +# This script modified system settings for automated use + VNCPassword=qt NTS_IP=10.212.2.216 @@ -87,4 +87,3 @@ sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resourc 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-osx-10.11-x86_64/01-crashreporter.sh b/coin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh index 8461c656..8461c656 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/01-crashreporter.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/06-crashreporter.sh diff --git a/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_spotlight.sh b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_spotlight.sh new file mode 100755 index 00000000..d991e6c0 --- /dev/null +++ b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_spotlight.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +$(dirname "$0")/../common/macos/disable_spotlight.sh diff --git a/coin/provisioning/qtci-osx-10.10-x86_64/06-disable_update_downloads.sh b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh index 3c11214d..3c11214d 100755 --- a/coin/provisioning/qtci-osx-10.10-x86_64/06-disable_update_downloads.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/06-disable_update_downloads.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh b/coin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh index 610f7a8e..6e7c796a 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/07-SSL_keychain.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/07-SSL_keychain.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh set -ex @@ -7,4 +7,3 @@ 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-osx-10.11-x86_64/15-xz.sh b/coin/provisioning/qtci-macos-10.13-x86_64/15-xz.sh index 13b05040..06437ee1 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/15-xz.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/15-xz.sh @@ -2,7 +2,7 @@ ############################################################################# ## -## 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. @@ -39,10 +39,10 @@ set -ex -# shellcheck source=../common/macos/InstallPKGFromURL.sh +# shellcheck source=../common/macos/InstallPKGFromURL source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh" -PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/XZ.pkg" +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="/" diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/30-java.sh b/coin/provisioning/qtci-macos-10.13-x86_64/20-java.sh index 8877c40b..8877c40b 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/30-java.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/20-java.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh b/coin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh index a067f637..edcb2345 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/20-xcode.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/20-xcode.sh @@ -2,7 +2,7 @@ ############################################################################# ## -## 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. @@ -35,16 +35,19 @@ # This script installs Xcode # Prerequisites: Have Xcode prefetched to local cache as xz compressed. -# This can be achieved by fetching Xcode_8.xip from Apple Store. -# Uncompress it with 'xar -xf Xcode_8.xip' +# 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 a file called "Content.part00.cpio.xz" that -# can be renamed to Xcode_8.xz for this script. +# 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_8.2.xz 8.2 +InstallXCode /net/ci-files01-hki.intra.qt.io/hdd/www/input/mac/Xcode_9.4.1.tar.gz 9.4.1 diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/21-install-commandlinetools.sh b/coin/provisioning/qtci-macos-10.13-x86_64/21-install-commandlinetools.sh index cb7dcfc6..ecd1bee4 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/21-install-commandlinetools.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/21-install-commandlinetools.sh @@ -2,10 +2,10 @@ ############################################################################# ## -## 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 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 @@ -37,10 +37,10 @@ set -ex source "${BASH_SOURCE%/*}/../common/macos/install-commandlinetools.sh" -version="8.2" -packageName="Command_Line_Tools_macOS_10.11_for_Xcode_$version.dmg" -url="http://ci-files01-hki.intra.qt.io/input/mac/$packageName" -sha1="4df615ca765ac1a1e681ddcbca79fc15990e3b25" +version="9.4.1" +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="efe51c11c2c99a5f1a98bbd3772dc3fa3ce78904" InstallCommandLineTools $url $url $sha1 $packageName $version diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-cmake.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh index e5dd1910..e5dd1910 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-cmake.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-cmake.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-homebrew.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh index 0ead5a58..0ead5a58 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-homebrew.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-homebrew.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-mysql.sh index 1908c79b..d873499c 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-mysql.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-mysql.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 @@ -44,7 +44,7 @@ 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/osx_10.11_el_capitan/mysql-5.7.15-osx10.11-x86_64.tar.gz" +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="" @@ -55,6 +55,4 @@ 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-osx-10.11-x86_64/25-postgresql.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh index 7fedb4a2..e59f0f03 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-postgresql.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-postgresql.sh @@ -2,7 +2,7 @@ ############################################################################# ## -## 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. @@ -44,14 +44,14 @@ 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/osx_10.11_el_capitan/Postgres-9.6.0.zip" -AltUrl="https://github.com/PostgresApp/PostgresApp/releases/download/9.6.0/Postgres-9.6.0.zip" +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 = 9.6.0" >> ~/versions.txt - +echo "PostgreSQL = $psqlVersion" >> ~/versions.txt diff --git a/coin/provisioning/qtci-osx-10.10-x86_64/25-python2.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh index ef65edad..ef65edad 100755 --- a/coin/provisioning/qtci-osx-10.10-x86_64/25-python2.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-python2.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-python3.sh b/coin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh index 92b05bf3..92b05bf3 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-python3.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/25-python3.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/26-p7zip.sh b/coin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh index 15511332..15511332 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/26-p7zip.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/26-p7zip.sh 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/03-install-rhel-epel.sh b/coin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh index 21a45506..a5547972 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/40-qnx700.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/bin/bash ############################################################################# ## @@ -33,17 +33,25 @@ ## ############################################################################# -# shellcheck source=../common/unix/DownloadURL.sh -source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh" +# This script installs QNX 7. -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" +targetFolder="/opt/" +sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip" +folderName="qnx700" -DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile" +sudo mkdir -p "$targetFolder" -sudo rpm -ivh "$targetFile" -rm "$targetFile" +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-osx-10.11-x86_64/90-squish.sh b/coin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh index 27ff15c3..27ff15c3 100755 --- a/coin/provisioning/qtci-osx-10.11-x86_64/90-squish.sh +++ b/coin/provisioning/qtci-macos-10.13-x86_64/90-squish.sh diff --git a/coin/provisioning/qtci-osx-10.10-x86_64/01-sha1sum-compatibility.sh b/coin/provisioning/qtci-osx-10.10-x86_64/01-sha1sum-compatibility.sh deleted file mode 120000 index 58a40af4..00000000 --- a/coin/provisioning/qtci-osx-10.10-x86_64/01-sha1sum-compatibility.sh +++ /dev/null @@ -1 +0,0 @@ -../common/macos/sha1sum-compatibility.sh
\ No newline at end of file diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/01-sha1sum-compatibility.sh b/coin/provisioning/qtci-osx-10.11-x86_64/01-sha1sum-compatibility.sh deleted file mode 120000 index 58a40af4..00000000 --- a/coin/provisioning/qtci-osx-10.11-x86_64/01-sha1sum-compatibility.sh +++ /dev/null @@ -1 +0,0 @@ -../common/macos/sha1sum-compatibility.sh
\ No newline at end of file diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/06-disable_update_downloads.sh b/coin/provisioning/qtci-osx-10.11-x86_64/06-disable_update_downloads.sh deleted file mode 100755 index 3c11214d..00000000 --- a/coin/provisioning/qtci-osx-10.11-x86_64/06-disable_update_downloads.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -ex -BASEDIR=$(dirname "$0") -"$BASEDIR"/../common/macos/disable_update_downloads.sh diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/25-python2.sh b/coin/provisioning/qtci-osx-10.11-x86_64/25-python2.sh deleted file mode 100755 index ef65edad..00000000 --- a/coin/provisioning/qtci-osx-10.11-x86_64/25-python2.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash -set -ex - -source "${BASH_SOURCE%/*}/../common/macos/python2.sh" diff --git a/coin/provisioning/qtci-osx-10.11-x86_64/27-libclang.sh b/coin/provisioning/qtci-osx-10.11-x86_64/27-libclang.sh deleted file mode 100755 index 91872201..00000000 --- a/coin/provisioning/qtci-osx-10.11-x86_64/27-libclang.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -set -ex - -BASEDIR=$(dirname "$0") -# There is only one mac package -# shellcheck source=../common/unix/libclang.sh -"$BASEDIR/../common/unix/libclang.sh" diff --git a/coin/provisioning/qtci-windows-10-x86/90-vclibs_debug.ps1 b/coin/provisioning/qtci-windows-10-x86/90-vclibs_debug.ps1 new file mode 100644 index 00000000..56ecb97b --- /dev/null +++ b/coin/provisioning/qtci-windows-10-x86/90-vclibs_debug.ps1 @@ -0,0 +1,3 @@ +. "$PSScriptRoot\..\common\windows\vclibs_debug.ps1" + +Install-VCLibsDebug X86 diff --git a/coin/provisioning/qtci-windows-10-x86_64/01-remove-ms-zune.ps1 b/coin/provisioning/qtci-windows-10-x86_64/01-remove-ms-zune.ps1 new file mode 100644 index 00000000..6a398725 --- /dev/null +++ b/coin/provisioning/qtci-windows-10-x86_64/01-remove-ms-zune.ps1 @@ -0,0 +1,2 @@ +Remove-AppxPackage Microsoft.ZuneVideo_10.17092.13511.0_x64__8wekyb3d8bbwe +Remove-AppxPackage Microsoft.ZuneMusic_10.17083.18321.0_x64__8wekyb3d8bbwe 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-10-x86_64/90-vclibs_debug.ps1 b/coin/provisioning/qtci-windows-10-x86_64/90-vclibs_debug.ps1 new file mode 100644 index 00000000..49148017 --- /dev/null +++ b/coin/provisioning/qtci-windows-10-x86_64/90-vclibs_debug.ps1 @@ -0,0 +1,3 @@ +. "$PSScriptRoot\..\common\windows\vclibs_debug.ps1" + +Install-VCLibsDebug X64 diff --git a/coin/provisioning/qtci-windows-7-x86/09-install-mingw530.ps1 b/coin/provisioning/qtci-windows-7-x86/09-install-mingw530.ps1 deleted file mode 100644 index 684816f0..00000000 --- a/coin/provisioning/qtci-windows-7-x86/09-install-mingw530.ps1 +++ /dev/null @@ -1,10 +0,0 @@ -. "$PSScriptRoot\..\common\windows\install-mingw.ps1" - -# This script will install MinGW 5.3.0 - -$release = "i686-5.3.0-release-posix-dwarf-rt_v4-rev0" -$sha1 = "D4F21D25F3454F8EFDADA50E5AD799A0A9E07C6A" - -InstallMinGW $release $sha1 - - diff --git a/coin/provisioning/qtci-windows-7-x86/09-install-mingw730.ps1 b/coin/provisioning/qtci-windows-7-x86/09-install-mingw730.ps1 new file mode 100644 index 00000000..c893926e --- /dev/null +++ b/coin/provisioning/qtci-windows-7-x86/09-install-mingw730.ps1 @@ -0,0 +1,10 @@ +. "$PSScriptRoot\..\common\windows\install-mingw.ps1" + +# This script will install MinGW 7.3.0 + +$release = "i686-7.3.0-release-posix-dwarf-rt_v5-rev0" +$sha1 = "96e11c754b379c093e1cb3133f71db5b9f3e0532" + +InstallMinGW $release $sha1 + + 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..85bfb98c --- /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 mingw730 diff --git a/qt3d b/qt3d -Subproject 42a466e0c77e4ef209a51bfa04ee6ca2bcae99a +Subproject e6f312aab5cdf8bc9c9c2e55931757d6d29c72c diff --git a/qtactiveqt b/qtactiveqt -Subproject b09610e10592af6224b64507f1d6d209d4baf6c +Subproject 37edb4464e5f05d239cff4e53c5552fc851960a diff --git a/qtandroidextras b/qtandroidextras -Subproject 82fc3412c648d17ce99aecf7b46b273f72a4dbd +Subproject 6711472d14d8f675160d559978acee96c1fb25c diff --git a/qtbase b/qtbase -Subproject bd42e2f0cebb2fe8de77a054e9d30aa803749a6 +Subproject 546eb7b9473ee78a9ec4167a4f710eb7998f53e diff --git a/qtcanvas3d b/qtcanvas3d -Subproject c8ca99e24e6ec57d961050ebe31da2109208c72 +Subproject fb5394ce6d38d06c13b01574cf00d4fe98025c5 diff --git a/qtcharts b/qtcharts -Subproject cf3255b18b488c7bb1802a9447f7b0ed0a2a443 +Subproject 79888d87ad08ec120fc170c7d450c5ac1067ce8 diff --git a/qtconnectivity b/qtconnectivity -Subproject 0c2b6dc44351352e8a88248b98e1d45c0403e01 +Subproject 77c3c1427d240c9d17534583218b850f73352b1 diff --git a/qtdatavis3d b/qtdatavis3d -Subproject d4ef709d16b6a22ee024069c19aba2a9311f8f9 +Subproject eea291d2a53ed1e390baa9ed1ca59fb764b8b4a diff --git a/qtdeclarative b/qtdeclarative -Subproject 9dee534836092787d774be7face029b5cf53e54 +Subproject 6e2fc84646987135c96755fbe1c2af20fc722e3 diff --git a/qtdoc b/qtdoc -Subproject 95f0ad632ba1551974d4eacbd9ae08012a460e4 +Subproject 1c9da7439d1d4664a91c0dd43162b47a2203b02 diff --git a/qtenginio b/qtenginio deleted file mode 160000 -Subproject b0ad5907f480307853f7ac951bacfaa61dcbd94 diff --git a/qtgamepad b/qtgamepad -Subproject 7d1b726d0c338162be5e388bc594a52714d20f1 +Subproject c24058f3a4f208915b14da5d07d707fddac126d diff --git a/qtgraphicaleffects b/qtgraphicaleffects -Subproject 76191bb1df602aa4a2bf99a3a0b21bb081a5269 +Subproject 69dddc6190800b56b88f3322c231e67a5b86fdd diff --git a/qtimageformats b/qtimageformats -Subproject 7cfe47a8fe2f987fb2a066a696fb3d9d0afe4d6 +Subproject 2842212e88afb200a0fcfda7d306c4e8eee2640 diff --git a/qtlocation b/qtlocation -Subproject 571126c3d63f899a67b896886aaec8cf4f0acb1 +Subproject a011969f842d662b593e6b33c09dedd90c82de9 diff --git a/qtmacextras b/qtmacextras -Subproject 61df18dac61bab1bc9fbc971ac9a6107734e2ee +Subproject ff8a3384726a9e54fb7cd815e10235b9351cd28 diff --git a/qtmultimedia b/qtmultimedia -Subproject c1ca9510af3c3c4134b717f1863651783e338a9 +Subproject ec597d89320dd312382457a711ebddb085b16a5 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 1876c17c354cf60160f408950bb6e5cc4a4f879 +Subproject d19f782a887e4a8c87ceee42ad8405a0b12388d diff --git a/qtremoteobjects b/qtremoteobjects -Subproject d292f1d93ffef611a0a6e9f393251785e1e9b77 +Subproject 854217d60da9ab54795fb39896a053f30122284 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 23a4f70d26ac2c74e695a0138eb1d766918973b +Subproject 9f5b14b06775e91ac65dc3c0b0ea3a54235a93a diff --git a/qtserialport b/qtserialport -Subproject e0bd3949c30ce9c1988a6d6a3c0850d16a1fb33 +Subproject d4b48a8ef81b7a3912ccee387ceb976d67a8b87 diff --git a/qtspeech b/qtspeech -Subproject 34a26b6773f1d9a5592ecb02e08209a0b74fa92 +Subproject 35d8b9ea60b41d1798ccd2e63db50c895213eff diff --git a/qtsvg b/qtsvg -Subproject 1262e6dc979d0624307897980be27b8310fe34a +Subproject 907c2db46915eedac02f2a5a26291d2ce19282f diff --git a/qttools b/qttools -Subproject 6edf63144df8662bb3ff787553b183584a533f5 +Subproject 78df61b51b9bf52364681ccedc82c8eb6aba546 diff --git a/qttranslations b/qttranslations -Subproject 60de15a0e0121096239cf6031250d2862e77971 +Subproject bb5f0ac724b7179df25c7d7442991eceea1fd58 diff --git a/qtvirtualkeyboard b/qtvirtualkeyboard -Subproject 30479f9771e60938dc0f6e325e3b16fb5266379 +Subproject b253a3f14af12588966687d66cfa8829e3b1758 diff --git a/qtwayland b/qtwayland -Subproject 53dff95bfbe9070c4cd17045f3d5147f29710c5 +Subproject aa341afd9b428f5ad2d0bc1c16d9cda64a4b04f diff --git a/qtwebchannel b/qtwebchannel -Subproject b4277bf9bf30f1fc8cba1d6c7185e991e83e6e1 +Subproject 0880c04eec2653b94ac58f0e20a2215243fd1c6 diff --git a/qtwebengine b/qtwebengine -Subproject dab4814dc4187db345a53b234c4cdd4cbdcf4bc +Subproject 1a3135eb5ddef1fa93e72c3e867de0be08a1bd4 diff --git a/qtwebglplugin b/qtwebglplugin -Subproject e87065b17b9797aaeb0405a9c4b6191d1745d50 +Subproject 90bb25e2132aded600cf68337f2390e3eb7d7a0 diff --git a/qtwebsockets b/qtwebsockets -Subproject cf41cd16a1f156d68f9cb4a84dd77230f29d739 +Subproject 4321fd13ac58e5bebe4d564431e9c18b627598b diff --git a/qtwebview b/qtwebview -Subproject c95d904fa11b925a1617e4b5b2a87915079d864 +Subproject 4ff9794dbbbddef604cafa10524a873a2b99a23 diff --git a/qtwinextras b/qtwinextras -Subproject da2c33386d4c55638c5d2d797ea416562e98d3c +Subproject 44a28955dc8090dc8e9fa59e57c664e78d24be5 diff --git a/qtx11extras b/qtx11extras -Subproject acebfcd63f34123e9a57d4ab76526eb0dd8ceff +Subproject ce110b084c74aa4d5d59a06dd049a12eee6aa5b diff --git a/qtxmlpatterns b/qtxmlpatterns -Subproject dbc1311af757c5acdca034d3632dca3bf1f81af +Subproject 8c6e24329ecd65f364654b1ca2b6a273f0826a8 |