Compare commits

..

10 Commits

Author SHA1 Message Date
Qt Submodule Update Bot
4fabcfd5d1 Update submodules on '5.9.5' in qt5
Change-Id: Ic65ec06baa9db9f59521b6ade093e4b41427577d
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-04-10 19:13:49 +00:00
Qt Submodule Update Bot
e5d5e2aacb Update submodules on '5.9.5' in qt5
Change-Id: I31ba0df4dd95538fbe9893288c99b2a4df7b5e7c
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-05 04:14:52 +00:00
Qt Submodule Update Bot
6bc4d562c8 Update submodules on '5.9.5' in qt5
Change-Id: Ia5cb367e95fbb26756c1fa00b20e5638e62d5b5b
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-15 05:30:23 +00:00
Liang Qi
015b9cb53a Merge remote-tracking branch 'origin/5.9' into 5.9.5
Change-Id: If1ad190a0a4688d0f85dcd334396c7012937851b
2018-03-14 21:57:09 +01:00
Qt Submodule Update Bot
a63aa1647c Update submodules on '5.9' in qt5
Change-Id: I00a05444ff7e4b0eaaf8de653222e9cf3eff525a
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-13 13:34:45 +00:00
Tony Sarajärvi
07a4522087 Move MSVC2017 x86 builds to 64bit host OS
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit b85b272c26)
Change-Id: I0bd874ac3c7f216f0fccd4141964c630cd8f6e10
2018-03-12 12:55:07 +00:00
Kari Oikarinen
ef2315af73 Install libusbx-devel for QDB on RHEL 7.4
On previous RHEL version the package was libusb1-devel. That package doesn't
seem to be there anymore, which presumably means why the package to install was
changed to libusb-devel. Unfortunately libusb-devel provides a compatibility
package for the old 0.1 API version and doesn't work with QDB. libusbx-devel
seems to be the new name for the 1.0 API version of libusb on RHEL.

(cherry picked from commit 140c6479b5)
Change-Id: I978e9842b3f0ec3a355cd1724934c99a531903ef
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2018-03-01 14:32:38 +00:00
Oswald Buddenhagen
2644bebe4b Adjust submodule branches
Change-Id: If02707c6644b429ebc019ea0309b9cd8e17e9ff7
2018-03-01 12:15:06 +01:00
Qt Submodule Update Bot
137ed3408d Update submodules on '5.9' in qt5
Change-Id: I803674e2f243ccc2c084519c4b8a6cc77174aef5
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-02-25 06:40:58 +00:00
Qt Submodule Update Bot
ac53509b31 Update submodules on '5.9' in qt5
Change-Id: Ic1f670ffa7196580a22f0fb893d06230bed42c21
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-02-23 06:31:30 +00:00
290 changed files with 2199 additions and 2926 deletions

95
.gitmodules vendored
View File

@@ -1,66 +1,66 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
branch = 5.11.1
branch = 5.9.5
status = essential
[submodule "qtsvg"]
depends = qtbase
path = qtsvg
url = ../qtsvg.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtdeclarative"]
depends = qtbase
recommends = qtsvg qtxmlpatterns
path = qtdeclarative
url = ../qtdeclarative.git
branch = 5.11.1
branch = 5.9.5
status = essential
[submodule "qtactiveqt"]
depends = qtbase
path = qtactiveqt
url = ../qtactiveqt.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtscript"]
depends = qtbase
recommends = qttools
path = qtscript
url = ../qtscript.git
branch = 5.11.1
branch = 5.9.5
status = deprecated
[submodule "qtmultimedia"]
depends = qtbase
recommends = qtdeclarative
path = qtmultimedia
url = ../qtmultimedia.git
branch = 5.11.1
branch = 5.9.5
status = essential
[submodule "qttools"]
depends = qtbase
recommends = qtdeclarative qtactiveqt
path = qttools
url = ../qttools.git
branch = 5.11.1
branch = 5.9.5
status = essential
[submodule "qtxmlpatterns"]
depends = qtbase
path = qtxmlpatterns
url = ../qtxmlpatterns.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qttranslations"]
depends = qttools
path = qttranslations
url = ../qttranslations.git
branch = 5.11.1
branch = 5.9.5
status = essential
priority = 30
[submodule "qtdoc"]
depends = qtdeclarative
path = qtdoc
url = ../qtdoc.git
branch = 5.11.1
branch = 5.9.5
status = essential
priority = 40
[submodule "qtrepotools"]
@@ -81,14 +81,14 @@
recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport
path = qtlocation
url = ../qtlocation.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtsensors"]
depends = qtbase
recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtsystems"]
depends = qtbase
@@ -121,27 +121,27 @@
recommends = qtdeclarative qtandroidextras
path = qtconnectivity
url = ../qtconnectivity.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtwayland"]
depends = qtbase
recommends = qtdeclarative
path = qtwayland
url = ../qtwayland.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qt3d"]
depends = qtbase
recommends = qtdeclarative qtimageformats qtgamepad
path = qt3d
url = ../qt3d.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtimageformats"]
depends = qtbase
path = qtimageformats
url = ../qtimageformats.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtquick1"]
depends = qtscript
@@ -154,51 +154,51 @@
depends = qtdeclarative
path = qtgraphicaleffects
url = ../qtgraphicaleffects.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtquickcontrols"]
depends = qtdeclarative
recommends = qtgraphicaleffects
path = qtquickcontrols
url = ../qtquickcontrols.git
branch = 5.11.1
branch = 5.9.5
status = essential
[submodule "qtserialbus"]
depends = qtserialport
path = qtserialbus
url = ../qtserialbus.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtserialport"]
depends = qtbase
path = qtserialport
url = ../qtserialport.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtx11extras"]
depends = qtbase
path = qtx11extras
url = ../qtx11extras.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtmacextras"]
depends = qtbase
path = qtmacextras
url = ../qtmacextras.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtwinextras"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtwinextras
url = ../qtwinextras.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtandroidextras"]
depends = qtbase
path = qtandroidextras
url = ../qtandroidextras.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtenginio"]
depends = qtdeclarative
@@ -211,108 +211,101 @@
recommends = qtdeclarative
path = qtwebsockets
url = ../qtwebsockets.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtwebchannel"]
depends = qtbase
recommends = qtdeclarative qtwebsockets
path = qtwebchannel
url = ../qtwebchannel.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtwebengine"]
depends = qtquickcontrols qtwebchannel
recommends = qtlocation qttools
path = qtwebengine
url = ../qtwebengine.git
branch = 5.11.1
branch = 5.9.5
status = addon
priority = 10
[submodule "qtcanvas3d"]
depends = qtdeclarative
path = qtcanvas3d
url = ../qtcanvas3d.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtquickcontrols2"]
depends = qtgraphicaleffects
recommends = qtimageformats
path = qtquickcontrols2
url = ../qtquickcontrols2.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtpurchasing"]
depends = qtbase
recommends = qtdeclarative qtandroidextras
depends = qtbase qtandroidextras
recommends = qtdeclarative
path = qtpurchasing
url = ../qtpurchasing.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtcharts"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtcharts
url = ../qtcharts.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtdatavis3d"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtdatavis3d
url = ../qtdatavis3d.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtvirtualkeyboard"]
depends = qtbase qtdeclarative qtsvg
recommends = qtmultimedia qtquickcontrols
path = qtvirtualkeyboard
url = ../qtvirtualkeyboard.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtgamepad"]
depends = qtbase
recommends = qtdeclarative
path = qtgamepad
url = ../qtgamepad.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
url = ../qtscxml.git
branch = 5.11.1
branch = 5.9.5
status = addon
[submodule "qtspeech"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtspeech
url = ../qtspeech.git
branch = 5.11.1
status = addon
branch = 5.9.5
status = preview
[submodule "qtnetworkauth"]
depends = qtbase
recommends = qtwebview
path = qtnetworkauth
url = ../qtnetworkauth.git
branch = 5.11.1
status = addon
branch = 5.9.5
status = preview
[submodule "qtremoteobjects"]
depends = qtbase
recommends = qtdeclarative
path = qtremoteobjects
url = ../qtremoteobjects.git
branch = 5.11.1
status = preview
[submodule "qtwebglplugin"]
depends = qtbase qtwebsockets
recommends = qtdeclarative
path = qtwebglplugin
url = ../qtwebglplugin.git
branch = 5.11.1
branch = 5.9.5
status = preview

View File

@@ -1,27 +1,25 @@
Template Target OS Target arch Compiler Features
----------------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-8.1-x86_64 MSVC2013 DeveloperBuild Release DisableTests
qtci-windows-10-x86_64-10 MSVC2015 DeveloperBuild Release QtNamespace QtLibInfix BuildExamples
qtci-windows-7-x86-3 Mingw53 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-openSUSE-42.3-x86_64 GCC DeveloperBuild NoPch
qtci-linux-openSUSE-42.3-x86_64 ICC_18 DeveloperBuild NoPch DisableTests SystemSQLite
qtci-linux-openSUSE-42.3-x86_64 ICC_18 DeveloperBuild NoPch DisableTests
qtci-linux-RHEL-6.6-x86_64 GCC Release ForceDebugInfo
qtci-linux-RHEL-7.4-x86_64 GCC Packaging Release NoUseGoldLinker ForceDebugInfo SeparateDebugInfo
qtci-linux-RHEL-7.4-x86_64 GCC Packaging Release NoUseGoldLinker
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 Release DisableTests Static
qtci-macos-10.12-x86_64-8 TvOS_ANY multi Clang Release DisableTests
qtci-macos-10.12-x86_64-8 WatchOS_ANY multi Clang Release DisableTests
qtci-osx-10.10-x86_64 Clang Release NoFramework DisableTests
qtci-macos-10.12-x86_64-8 IOS_ANY x86_64 Clang Release DisableTests Static
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-linux-RHEL-6.6-x86_64 QNX_660 armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
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

View File

@@ -1,10 +1,12 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-8.1-x86_64 x86 MSVC2013 DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-8.1-x86_64 MSVC2013 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
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 MSVC2017 Packaging 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-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
@@ -12,12 +14,11 @@ qtci-windows-7-x86-3 Android_ANY armv7 Mingw53 Packagin
qtci-windows-7-x86-3 Android_ANY x86 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-macos-10.12-x86_64-8 Android_ANY armv7 GCC Packaging Release DisableTests OpenGLES2
qtci-macos-10.12-x86_64-8 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2
qtci-macos-10.12-x86_64-8 QNX_700 x86 GCC Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-RHEL-6.6-x86_64 QNX_660 x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-macos-10.12-x86_64-8 IOS_ANY multi Clang Packaging DebugAndRelease DisableTests Static
qtci-macos-10.12-x86_64-8 TvOS_ANY multi Clang DebugAndRelease DisableTests
qtci-macos-10.12-x86_64-8 WatchOS_ANY multi Clang DebugAndRelease DisableTests
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-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
qtci-windows-10-x86_64-10 QNX_700 armv7 Mingw53 Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_700 x86 Mingw53 Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_660 armv7 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_660 x86 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-linux-RHEL-7.4-x86_64 QNX_700 x86 GCC Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-RHEL-7.4-x86_64 QNX_700 armv7 GCC Release DisableTests OpenGLES2 NoUseGoldLinker

View File

@@ -1,4 +1,5 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-10-x86_64-10 x86 MSVC2017 DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86_64-10 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-7-x86-3 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic DisableTests

View File

@@ -1,6 +0,0 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-7-x86_64-4 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-8.1-x86_64 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86-3 MSVC2017 Release ForceDebugInfo OpenGLDynamic

View File

@@ -37,11 +37,9 @@
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/android"
@@ -64,45 +62,75 @@ toolsSourceFile="$basePath/$toolsFile"
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile"
DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder"
rm "$ndkTargetFile"
rm "$toolsTargetFile"
ExceptionDownload=99
ExceptionUnzipTools=100
ExceptionUnzipNdk=101
ExceptionRmTools=102
ExceptionRmNdk=103
ExceptionSdkManager=104
echo "Changing ownership of Android files."
if uname -a |grep -q "el6\|el7"; then
sudo chown -R qt:wheel "$targetFolder"
else
sudo chown -R qt:users "$targetFolder"
fi
try
(
(DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile") || throw $ExceptionDownload
(DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile") || throw $ExceptionDownload
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkTargetFile" -d "$targetFolder" || throw $ExceptionUnzipNdk
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
rm "$ndkTargetFile" || throw $ExceptionRmNdk
rm "$toolsTargetFile" || throw $ExceptionRmTools
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
# shellcheck disable=SC2031
if [ "$http_proxy" != "" ]; then
proxy_host=$(echo "$proxy" | cut -d'/' -f3 | cut -d':' -f1)
proxy_port=$(echo "$proxy" | cut -d':' -f3)
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host="$proxy_host" --proxy_port="$proxy_port" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
fi
echo "Changing ownership of Android files."
if uname -a |grep -q "el6\|el7"; then
sudo chown -R qt:wheel "$targetFolder"
else
sudo chown -R qt:users "$targetFolder"
fi
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
if [ "$http_proxy" != "" ]; then
proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1)
proxy_port=$(echo $proxy | cut -d':' -f3)
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
fi
# shellcheck disable=SC2129
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
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "linux-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
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionUnzipTools)
echo "Failed to unzip Android SDK Tools."
exit 1;
;;
$ExceptionUnzipNdk)
echo "Failed to unzip Android NDK."
exit 1;
;;
$ExceptionRmTools)
echo "Failed to remove temporary tools package '$toolsTargetFile'."
exit 1;
;;
$ExceptionRmNdk)
echo "Failed to remove temporary NDK package '$ndkTargetFile'."
exit 1;
;;
$ExceptionSdkManager)
echo "Failed to run sdkmanager."
exit 1;
;;
esac
}
cd "$sdkTargetFolder/tools/bin"
echo "y" | ./sdkmanager --install "system-images;android-21;google_apis;x86"
echo "no" | ./avdmanager create avd -n x86emulator -k "system-images;android-21;google_apis;x86" -c 2048M -f
# Purely informative, show the list of avd devices
./avdmanager list avd

View File

@@ -37,9 +37,7 @@
# CMake is needed for autotests that verify that Qt can be built with CMake
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="3.6.2"
@@ -52,6 +50,3 @@ appPrefix="cmake-$version-Linux-x86_64"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
SetEnvVar "PATH" "$targetFolder/bin:\$PATH"
echo "CMake = $version" >> ~/versions.txt

View File

@@ -40,5 +40,5 @@ echo "Disable Network Time Protocol (NTP)"
if uname -a |grep -q "Ubuntu"; then
sudo timedatectl set-ntp false
else
(systemctl &>/dev/null && sudo systemctl disable ntpd) || sudo /sbin/chkconfig ntpd off
systemctl &>/dev/null && sudo systemctl disable ntpd || sudo /sbin/chkconfig ntpd off
fi

View File

@@ -1,5 +1,3 @@
#!/usr/bin/env bash
# We need to disable selinux while we are overwriting some binaries
# required by it. If this is not done, ICU provisioning will create
# template that is not booting.

View File

@@ -34,10 +34,7 @@
#############################################################################
# This script installs FBX SDK
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
set -e

View File

@@ -35,9 +35,7 @@
# This script installs INTEGRITY
# shellcheck source=../unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="11.4.4"

View File

@@ -1,73 +0,0 @@
#!/bin/env 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.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
set +e
# shellcheck disable=SC1090
# We need to source to be able to use cmake in the shell
if uname -a |grep -q "Ubuntu"; then
source ~/.profile
else
source ~/.bashrc
fi
set -ex
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
TEMPDIR=$(mktemp --directory) || echo "Failed to create temporary directory"
# shellcheck disable=SC2064
trap "sudo rm -fr $TEMPDIR" EXIT
cd "$TEMPDIR"
sudo pip install --upgrade pip
sudo pip install six
git clone https://github.com/open62541/open62541.git open62541
cd open62541
git checkout 8845e493d7751fd4eee3917b540e5346646b9cf7
mkdir build
cd build
cmake -DUA_ENABLE_AMALGAMATION=ON -DUA_ENABLE_METHODCALLS=ON -DCMAKE_INSTALL_PREFIX:PATH=/usr/local -DLIB_INSTALL_DIR:PATH=/usr/local/lib/open62541 ..
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"

View File

@@ -36,32 +36,52 @@
# This script install OpenSSL from sources.
# Requires GCC and Perl to be in PATH.
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
version="1.0.2o"
version="1.0.2g"
officialUrl="https://www.openssl.org/source/openssl-$version.tar.gz"
cachedUrl="http://ci-files01-hki.intra.qt.io/input/openssl/openssl-$version.tar.gz"
targetFile="/tmp/openssl-$version.tar.gz"
installFolder="/home/qt/"
sha="a47faaca57b47a0d9d5fb085545857cc92062691"
sha="36af23887402a5ea4ebef91df8e61654906f58f2"
# Until every VM doing Linux Android builds have provisioned the env variable
# OPENSSL_ANDROID_HOME, we can't change the hard coded path that's currently in Coin.
# QTQAINFRA-1436
opensslHome="${installFolder}openssl-1.0.2"
DownloadURL "$cachedUrl" "$officialUrl" "$sha" "$targetFile"
ExceptionDownload=99
ExceptionTar=100
ExceptionConfig=101
tar -xzf "$targetFile" -C "$installFolder"
# This rename should be removed once hard coded path from Coin is fixed. (QTQAINFRA-1436)
mv "${opensslHome}o" "${opensslHome}"
pushd "$opensslHome"
try
(
(DownloadURL "$cachedUrl" "$officialUrl" "$sha" "$targetFile") || throw $ExceptionDownload
echo "Running configure"
perl Configure shared android
tar -xzf "$targetFile" -C "$installFolder" || throw $ExceptionTar
# This rename should be removed once hard coded path from Coin is fixed. (QTQAINFRA-1436)
mv "${opensslHome}g" "${opensslHome}"
pushd "$opensslHome"
perl Configure shared android || throw $ExceptionConfig
SetEnvVar "OPENSSL_ANDROID_HOME" "$opensslHome"
SetEnvVar "OPENSSL_ANDROID_HOME" "$opensslHome"
echo "OpenSSL for Android = $version" >> ~/versions.txt
echo "OpenSSL for Android = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionTar)
echo "Failed to extract $targetFile"
exit 1;
;;
$ExceptionConfig)
echo "Failed to run 'config'."
exit 1;
;;
esac
}

View File

@@ -1,66 +0,0 @@
#!/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 installs QNX 6.6.0.
set -ex
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/"
sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/linux/qnx660.tar.gz"
sha1="E292CCAEF447AC1AA4DAD7802D604A5531ACD8D0"
folderName="qnx660"
targetFile="qnx660.tar.gz"
wget --tries=5 --waitretry=5 --progress=dot:giga --output-document="$targetFile" "$sourceFile"
echo "$sha1 $targetFile" | sha1sum --check
if [ ! -d "$targetFolder" ]; then
mkdir -p $targetFolder
fi
sudo tar -C $targetFolder -xvzf $targetFile
sudo chown -R qt:users "$targetFolder"/"$folderName"
# Verify that we have last file in tar
if [ ! -f $targetFolder/$folderName/qnx660-env.sh ]; then
echo "Installation failed!"
exit -1
fi
rm -rf $targetFile
# Set env variables
SetEnvVar "QNX_660" "$targetFolder$folderName"
echo "QNX SDP = 6.6.0" >> ~/versions.txt

View File

@@ -37,7 +37,6 @@
set -ex
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/"
@@ -45,7 +44,7 @@ sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/qnx700.tar.xz"
sha1="949a87c5f00d0756956cb4b1b3b213ecaeee9113"
folderName="qnx700"
targetFile="qnx700.tar.xz"
wget --tries=5 --waitretry=5 --progress=dot:giga --output-document="$targetFile" "$sourceFile"
wget --tries=5 --waitretry=5 --output-document="$targetFile" "$sourceFile"
echo "$sha1 $targetFile" | sha1sum --check
if [ ! -d "$targetFolder" ]; then
mkdir -p $targetFolder
@@ -60,7 +59,6 @@ if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
fi
rm -rf $targetFile
# Set env variables
SetEnvVar "QNX_700" "$targetFolder$folderName"

View File

@@ -37,11 +37,21 @@
# uncompresses it and installs it by default
# to /Applications/. This can be overridden by a target parameter.
set -ex
# shellcheck source=../unix/DownloadURL.sh
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
# shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallAppFromCompressedFileFromURL {
url=$1
url_alt=$2
@@ -53,39 +63,74 @@ function InstallAppFromCompressedFileFromURL {
target="/Applications/"
fi
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
extension="tar.gz"
fi
try
(
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
extension="tar.gz"
fi
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension")
# macOS 10.10 mktemp does require prefix
if [[ $OSTYPE == "darwin14" ]]; then
targetDirectory=$(mktemp -d -t '10.10')
else
targetDirectory=$(mktemp -d)
fi
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile")
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory"
;;
"zip")
unzip -q "$targetFile" -d "$targetDirectory"
;;
*)
exit 1
;;
esac
echo "Moving app to '$target'"
sudo mv "$targetDirectory/$appPrefix/"* "$target"
echo "Removing file '$targetFile'"
rm "$targetFile"
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory"
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile
# macOS 10.10 mktemp does require prefix
if [[ $OSTYPE == "darwin14" ]]; then
targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory
else
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
fi
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
;;
"zip")
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
;;
*)
throw $ExceptionUnknownFormat
;;
esac
echo "Moving app to '$target'"
sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to '$target'."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
}

View File

@@ -33,7 +33,16 @@
##
#############################################################################
set -ex
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
ExceptionCreateTmpFile=100
ExceptionDownloadPrimaryUrl=101
ExceptionDownloadAltUrl=102
ExceptionSHA1=103
ExceptionInstallerPKG=104
ExceptionDeleteTmpFile=105
function InstallPKGFromURL {
url=$1
@@ -41,19 +50,55 @@ function InstallPKGFromURL {
expectedSha1=$3
targetDirectory=$4
echo "Creating temporary file"
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg")
echo "Downloading PKG from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
echo "Failed to download '$url' multiple times"
echo "Downloading PKG from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
try
(
echo "Creating temporary file"
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") || trow $ExceptionCreateTmpFile
try
(
echo "Downloading PKG from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading PKG from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
/usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1
echo "Run installer on PKG"
sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
)
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > "$targetFile.sha1"
/usr/bin/shasum --check "$targetFile.sha1"
echo "Run installer on PKG"
sudo installer -package "$targetFile" -target "$targetDirectory"
echo "Removing file '$targetFile'"
rm "$targetFile"
catch || {
case $ex_code in
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionDownloadAltUrl)
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed to check sha1sum."
exit 1;
;;
$ExceptionInstallerPKG)
echo "Failed running installer on PKG."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
esac
}
}

View File

@@ -1,3 +0,0 @@
#!/usr/bin/env bash
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean FALSE

View File

@@ -34,8 +34,8 @@
# This script installs FBX SDK
set -ex
# shellcheck source=./../unix/try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -48,18 +48,29 @@ targetFolder="/tmp"
targetFile="$targetFolder/$fileName"
installer="$targetFolder/fbx20161_2_fbxsdk_clang_macos.pkg"
echo "Extracting '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || (
echo "Failed to uncompress from '$cachedUrl'"
echo "Downloading from '$officialUrl'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl"
echo "Checking SHA1 on PKG '$targetFile'"
echo "$sha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1
echo "Extracting '$targetFile'"
tar -xzf "$targetFile" -C "$targetFolder"
)
ExceptionExtractPrimaryUrl=100
try
(
echo "Extracting '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || throw $ExceptionExtractPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionExtractPrimaryUrl)
set -e
echo "Failed to uncompress from '$cachedUrl'"
echo "Downloading from '$officialUrl'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" || exit 1;
echo "Checking SHA1 on PKG '$targetFile'"
echo "$sha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1
echo "Extracting '$targetFile'"
tar -xzf "$targetFile" -C "$targetFolder" || exit 1;
;;
esac
}
set -e
rm -rf "$targetFile"
echo "Running installer for '$installer'"
sudo installer -pkg "$installer" -target "/"

View File

@@ -32,32 +32,57 @@
## $QT_END_LICENSE$
##
#############################################################################
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
set -ex
# Command line tools is need by homebrew
function InstallCommandLineTools {
ExceptionMount=101
ExceptionInstall=102
ExceptionUnmount=103
url=$1
url_alt=$2
expectedSha1=$3
packageName=$4
version=$5
DownloadURL "$url" "$url_alt" "$expectedSha1" "/tmp/$packageName"
echo "Mounting $packageName"
hdiutil attach "/tmp/$packageName"
cd "/Volumes/Command Line Developer Tools"
echo "Installing"
sudo installer -verbose -pkg ./*.pkg -target /
cd /
# Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted
sleep 3
echo "Unmounting"
umount /Volumes/Command\ Line\ Developer\ Tools/
echo "Removing $packageName"
rm "/tmp/$packageName"
try
(
DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName
echo "Mounting $packageName"
hdiutil attach /tmp/$packageName || throw $ExceptionMount
cd "/Volumes/Command Line Developer Tools"
echo "Installing"
sudo installer -verbose -pkg *.pkg -target / || throw $ExceptionInstall
cd /
# Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted
sleep 3
echo "Unmounting"
umount /Volumes/Command\ Line\ Developer\ Tools/ || throw $ExceptionUnmount
echo "Removing $packageName"
rm /tmp/$packageName
echo "Command Line Tools = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionMount)
echo "Failed to mount"
exit 1;
;;
$ExceptionInstall)
echo "Failed to install"
exit 1;
;;
$ExceptionUnmount)
echo "Failed to unmount"
exit 1;
esac
}
echo "Command Line Tools = $version" >> ~/versions.txt
}

View File

@@ -44,18 +44,48 @@
function InstallXCode() {
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
function InstallXCode()
{
ExceptionCPIO=103
ExceptionAcceptLicense=105
ExceptionDeveloperMode=113
sourceFile=$1
version=$2
echo "Uncompressing and installing '$sourceFile'"
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
try
(
echo "Uncompressing and installing '$sourceFile'"
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi) || throw $ExceptionCPIO
echo "Accept license"
sudo xcodebuild -license accept
echo "Accept license"
sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
sudo /usr/sbin/DevToolsSecurity -enable
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
sudo /usr/sbin/DevToolsSecurity -enable || throw $ExceptionDeveloperMode
echo "Xcode = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionCPIO)
echo "Failed to unarchive .cpio."
exit 1;
;;
$ExceptionDeveloperMode)
echo "Failed to enable developer mode."
exit 1;
;;
$ExceptionAcceptLicense)
echo "Failed to accept license."
exit 1;
;;
esac
}
echo "Xcode = $version" >> ~/versions.txt
}

View File

@@ -1,63 +0,0 @@
#!/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 installs JDK
set -ex
echo "Installing Java Development Kit"
targetFile=jdk-8u102-macosx-x64.dmg
url=ci-files01-hki.intra.qt.io:/hdd/www/input/mac
# url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg
echo "Mounting $targetFile"
sudo mount "$url" /Volumes
sudo cp "/Volumes/$targetFile" /tmp
sudo umount /Volumes
sudo hdiutil attach "/tmp/$targetFile"
echo Installing JDK
cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /
echo "Unmounting $targetFile"
sudo hdiutil unmount /Volumes/JDK\ 8\ Update\ 102/ -force
echo "Disable auto update"
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
echo "JDK Version = 8 update 102" >> ~/versions.txt

View File

@@ -1,11 +1,5 @@
#!/usr/bin/env bash
function InstallPip {
python=$1
# Will install pip utility for python
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo "$python" get-pip.py
rm get-pip.py
}
# Will install pip utility for python
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python get-pip.py
rm get-pip.py

View File

@@ -35,12 +35,8 @@
# This script installs python2
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-2.7.14-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/2.7.14/python-2.7.14-macosx10.6.pkg"
@@ -49,11 +45,8 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
InstallPip python2.7
/Library/Frameworks/Python.framework/Versions/2.7/bin/pip install virtualenv
SetEnvVar "PATH" "/Library/Frameworks/Python.framework/Versions/2.7/bin/:\$PATH"
echo "python2 = 2.7.14" >> ~/versions.txt

View File

@@ -36,12 +36,8 @@
# This script installs python3
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-3.6.1-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/3.6.1/python-3.6.1-macosx10.6.pkg"
@@ -50,12 +46,9 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
InstallPip python3.6
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv
SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
echo "python3 = 3.6.1" >> ~/versions.txt

View File

@@ -1,50 +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 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

View File

@@ -1,2 +0,0 @@
proxy=http://proxy.intra.qt.io:3128

View File

@@ -1 +1 @@
libclang_version="6.0"
libclang_version="4.0"

View File

@@ -40,22 +40,51 @@
# If called directly from another script, it will exit the parent script
# as well, if not called in its own subshell with parentheses.
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/try_catch.sh"
ExceptionDownloadPrimaryUrl=100
ExceptionDownloadAltUrl=101
ExceptionSHA1=102
function DownloadURL {
url=$1
url_alt=$2
expectedSha1=$3
targetFile=$4
echo "Downloading from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
echo "Failed to download '$url' multiple times"
echo "Downloading from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
try
(
try
(
echo "Downloading from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading tar.gz from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1 || throw $ExceptionSHA1
)
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > "$targetFile.sha1"
sha1sum --check "$targetFile.sha1"
rm -f "$targetFile.sha1"
catch || {
case $ex_code in
$ExceptionDownloadAltUrl)
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed checksum on $targetFile."
exit 1;
;;
esac
}
}

View File

@@ -33,11 +33,21 @@
##
#############################################################################
set -ex
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/try_catch.sh"
# shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallFromCompressedFileFromURL {
url=$1
url_alt=$2
@@ -45,35 +55,70 @@ function InstallFromCompressedFileFromURL {
installDirectory=$4
appPrefix=$5
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
extension="tar.gz"
fi
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension")
targetDirectory=$(mktemp -d)
DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory"
;;
"zip")
unzip "$targetFile" -d "$targetDirectory"
;;
*)
exit 1
;;
esac
echo "Moving app to $installDirectory"
sudo mkdir -p "$installDirectory"
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory"
echo "Removing file '$targetFile'"
rm "$targetFile"
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory"
try
(
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
extension="tar.gz"
fi
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension") || throw $ExceptionCreateTmpFile
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
;;
"zip")
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
;;
*)
throw $ExceptionUnknownFormat
;;
esac
echo "Moving app to $installDirectory"
sudo mkdir -p "$installDirectory"
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to target location."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
}

View File

@@ -32,9 +32,19 @@
##
#############################################################################
set -ex
source "${BASH_SOURCE%/*}/try_catch.sh"
source "${BASH_SOURCE%/*}/http_proxy.txt"
# shellcheck source=../shared/http_proxy.txt
source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
try
(
wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io
)
if [ $? -eq 0 ]; then
echo "Setting http_proxy to $proxy"
export http_proxy=$proxy
else
echo "Proxy not detected at $proxy"
fi
(wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io && echo "Setting http_proxy to $proxy" && export http_proxy=$proxy) || echo "Proxy not detected at $proxy"

View File

@@ -0,0 +1,2 @@
proxy="http://proxy.intra.qt.io:3128"

View File

@@ -40,13 +40,10 @@
# In case of Linux, we expect to get the values as args
set -e
# shellcheck source=./check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/check_and_set_proxy.sh"
source "${BASH_SOURCE%/*}/SetEnvVar.sh"
BASEDIR=$(dirname "$0")
# shellcheck source=../shared/sw_versions.txt
. "$BASEDIR/../shared/sw_versions.txt"
. $BASEDIR/../shared/sw_versions.txt
url=$1
sha1=$2
version=$3
@@ -56,24 +53,23 @@ if [ $# -eq 0 ]
echo "Using macOS defaults"
version=$libclang_version
url="https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_${version//\./}-mac.7z"
sha1="10e48167b61726b20517172f8aff80fa1d9a379b"
sha1="4781d154b274b2aec99b878c364f0ea80ff00a80"
fi
zip="libclang.7z"
destination="/usr/local/libclang-$version"
curl --fail -L --retry 5 --retry-delay 5 -o "$zip" "$url"
echo "$sha1 $zip" | sha1sum --check
7z x "$zip" -o/tmp/
rm -rf "$zip"
_shasum=sha1sum
if [[ "$OSTYPE" == "darwin"* ]]; then
echo "DARWIN"
_shasum=/usr/bin/shasum
fi
echo "$sha1 $zip" | $_shasum --check
7z x $zip -o/tmp/
rm -rf $zip
sudo mv /tmp/libclang "$destination"
sudo mv /tmp/libclang $destination
echo "export LLVM_INSTALL_DIR=$destination" >> ~/.bash_profile
echo "libClang = $version" >> ~/versions.txt
if [ "$version" == "6.0" ]; then
# This is a hacked static build of libclang which requires special
# handling on the qdoc side.
SetEnvVar "QDOC_USE_STATIC_LIBCLANG" "1"
fi

View File

@@ -1,55 +0,0 @@
#!/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.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# This script installs paho testing broker
# shellcheck source=./InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/InstallFromCompressedFileFromURL.sh"
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
CommitSHA="c342c09dadc7a664d0a8befad1ca031f5a0b0bc0"
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="532fe145096cdd8d679f425cbfd883289150c968"
targetFolder="/opt/paho_broker"
appPrefix="paho.mqtt.testing-$CommitSHA"
sudo rm -fr "$targetFolder"
InstallFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$targetFolder" "$appPrefix"
echo "Adding MQTT broker path to environment"
SetEnvVar "MQTT_TEST_BROKER_LOCATION" "$targetFolder/interoperability/startbroker.py"
echo "MQTT_BROKER = $CommitSHA" >> ~/versions.txt

View File

@@ -33,6 +33,8 @@
##
#############################################################################
source "${BASH_SOURCE%/*}/try_catch.sh"
set -ex
# This script will install squish package for Linux and Mac.
@@ -51,9 +53,6 @@ fi
squishLicenseUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/"
squishLicenseFile=".squish-3-license.tar.gz"
testSuite="suite_test_squish"
testSuiteUrl="ci-files01-hki.intra.qt.io:/hdd/www/input/squish/coin/"
# These checks can be removed when Vanilla OS for all linux and Mac are in
if [ -d "$squishFolder" ]; then
echo "Move old squish to /tmp"
@@ -66,7 +65,18 @@ if [ -f "/etc/profile.d/squish_env.sh" ]; then
export SQUISH_LICENSEKEY_DIR=$HOME
fi
ExceptionMount=100
ExceptionCreateFolder=101
ExceptionUncompress=102
ExceptionUnknownFormat=103
ExceptionCopy=104
ExceptionUmount=105
ExceptionHdiutilAttach=106
ExceptionInstallSquish=107
ExceptionChangeOwnership=108
function MountAndInstall {
url=$1
targetDirectory=$2
targetFile=$3
@@ -92,61 +102,106 @@ function MountAndInstall {
targetFileMount="$mountFolder"/"$targetFile"
echo "Mounting $url to $mountFolder"
sudo mount "$url" "$mountFolder"
echo "Create $targetDirectory if needed"
if [ ! -d "/opt" ]; then
sudo mkdir "/opt"
fi
if [ ! -d "$targetDirectory" ]; then
sudo mkdir "$targetDirectory"
fi
echo "Uncompress $targetFile"
if [[ $targetFile == *.tar.gz ]]; then
if [[ $targetFile == .squish-3-license.* ]]; then
target="$squishLicenseDir"
# Squish license need to be exists also in users home directory, because squish check it before it starts running tests
sudo tar -xzf "$targetFileMount" --directory "$HOME"
try
(
echo "Mounting $url to $mountFolder"
sudo mount "$url" $mountFolder || throw $ExceptionMount
echo "Create $targetDirectory if needed"
if [ ! -d "/opt" ]; then
sudo mkdir "/opt" || throw $ExceptionCreateFolder
fi
if [ ! -d "$targetDirectory" ]; then
sudo mkdir "$targetDirectory" || throw $ExceptionCreateFolder
fi
echo "Uncompress $targetFile"
if [[ $targetFile == *.tar.gz ]]; then
if [[ $targetFile == .squish-3-license.* ]]; then
target="$squishLicenseDir"
# Squish license need to be exists also in users home directory, because squish check it before it starts running tests
sudo tar -xzf "$targetFileMount" --directory "$HOME" || throw $ExceptionUncompress
else
target="$targetDirectory"
fi
sudo tar -xzf "$targetFileMount" --directory "$target" || throw $ExceptionUncompress
echo "Unmounting $mountFolder"
sudo umount $mountFolder || throw $ExceptionUmount
elif [[ $targetFile == *.dmg ]]; then
echo "'dmg-file', no need to uncompress"
sudo cp $targetFileMount /tmp || throw $ExceptionCopy
sudo umount $mountFolder || throw $ExceptionUmount
sudo hdiutil attach "/tmp/$targetFile" || throw $ExceptionHdiutilAttach
sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" || throw $ExceptionInstallSquish
sudo hdiutil unmount /Volumes/froglogic\ Squish/
elif [[ $targetFile == *.run ]]; then
echo "'run-file', no need to uncompress"
sudo cp $targetFileMount $targetDirectory || throw $ExceptionCopy
sudo umount $mountFolder || throw $ExceptionUmount
sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1 || throw $ExceptionInstallSquish
sudo rm -fr "$targetDirectory/$targetFile"
if uname -a |grep -q "Ubuntu"; then
sudo mkdir /usr/lib/tcl8.6 || throw $ExceptionCreateFolder
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/ || throw $ExceptionCopy
fi
else
target="$targetDirectory"
throw $ExceptionUnknownFormat
fi
sudo tar -xzf "$targetFileMount" --directory "$target"
echo "Unmounting $mountFolder"
sudo umount "$mountFolder"
elif [[ $targetFile == *.dmg ]]; then
echo "'dmg-file', no need to uncompress"
sudo cp "$targetFileMount" /tmp
sudo umount "$mountFolder"
sudo hdiutil attach "/tmp/$targetFile"
sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory"
sudo hdiutil unmount /Volumes/froglogic\ Squish/
elif [[ $targetFile == *.run ]]; then
echo "'run-file', no need to uncompress"
sudo cp "$targetFileMount" "$targetDirectory"
sudo umount "$mountFolder"
sudo "$targetDirectory/$targetFile" unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1
sudo rm -fr "$targetDirectory/$targetFile"
if uname -a |grep -q "Ubuntu"; then
sudo mkdir /usr/lib/tcl8.6
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/
fi
else
exit 1
fi
echo "Changing ownerships"
sudo chown -R qt:$usersGroup "$targetDirectory"
sudo chown qt:$usersGroup "$HOME/.squish-3-license"
echo "Changing ownerships"
sudo chown -R qt:$usersGroup "$targetDirectory" || throw $ExceptionChangeOwnership
sudo chown qt:$usersGroup "$HOME/.squish-3-license"
)
catch || {
case $ex_code in
$ExceptionMount)
echo "Failed to mount $url to $mountFolder."
exit 1;
;;
$ExceptionCreateFolder)
echo "Failed to create folder"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
$ExceptionCopy)
echo "Failed to copy"
exit 1;
;;
$ExceptionUmount)
echo "Failed to unmount $mountFolder."
exit 1;
;;
$ExceptionHdiutilAttach)
echo "Failed to hdituli attach $mountFolder/$targetFile."
exit 1;
;;
$ExceptionInstallSquish)
echo "Failed to install squish"
exit 1;
;;
$ExceptionChangeOwnership)
echo "Failed to change ownership of $targetDirectory."
exit 1;
;;
esac
}
}
echo "Set commands for environment variables in .bashrc"
if uname -a |grep -q "Ubuntu"; then
echo "export SQUISH_PATH=$squishFolder/package" >> ~/.profile
echo "export PATH=\$PATH:$squishFolder/squish-$version/bin" >> ~/.profile
echo "export PATH=\$PATH:$quishFolder/squish-$version/bin" >> ~/.profile
else
echo "export SQUISH_PATH=$squishFolder/package" >> ~/.bashrc
echo "export PATH=\$PATH:$squishFolder/squish-$version/bin" >> ~/.bashrc
echo "export PATH=\$PATH:$quishFolder/squish-$version/bin" >> ~/.bashrc
fi
echo "Installing squish license to home directory.."
@@ -154,14 +209,3 @@ MountAndInstall "$squishLicenseUrl" "$squishFolder" "$squishLicenseFile"
echo "Installing squish $version.."
MountAndInstall "$squishUrl" "$squishFolder" "$squishFile"
echo "Installing test suite for squish"
MountAndInstall "$testSuiteUrl" "$squishFolder" "$testSuite.tar.gz"
echo "Verifying Squish Installation"
if "$squishFolder/package/bin/squishrunner" --testsuite "$squishFolder/$testSuite" | grep "Squish test run successfully" ; then
echo "Squish installation tested successfully"
else
echo "Squish test failed! Package wasn't installed correctly."
exit 1
fi

View File

@@ -33,5 +33,32 @@
##
#############################################################################
# shellcheck source=../common/unix/mqtt_broker.sh
source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"
echo "Sourcing try_catch.sh"
function try()
{
[[ $- = *e* ]]; SAVED_OPT_E=$?
set +e
}
function throw()
{
exit "$1"
}
function catch()
{
export ex_code=$?
(( SAVED_OPT_E )) && set +e
return $ex_code
}
function throwErrors()
{
set -e
}
function ignoreErrors()
{
set +e
}

View File

@@ -2,12 +2,18 @@
$scriptsPath = "C:\Python27\Scripts"
Run-Executable "$scriptsPath\pip.exe" "install --upgrade conan==0.24.0"
& "$scriptsPath\pip.exe" install --upgrade conan==0.24.0
# Use Qt Project repository by default
Run-Executable "$scriptsPath\conan.exe" "remote add qtproject https://api.bintray.com/conan/qtproject/conan --insert"
& "$scriptsPath\conan.exe" remote add qtproject https://api.bintray.com/conan/qtproject/conan --insert
Set-EnvironmentVariable "CI_CONAN_BUILDINFO_DIR" "C:\Utils\conanbuildinfos"
[Environment]::SetEnvironmentVariable("CI_CONAN_BUILDINFO_DIR", "C:\Utils\conanbuildinfos", "Machine")
function Start-Process-Logged
{
Write-Host "Start-Process", $args
Start-Process @args
}
function Run-Conan-Install
{
@@ -37,24 +43,20 @@ function Run-Conan-Install
$outpwd = "C:\Utils\conanbuildinfos\$($BuildinfoDir)\$($_.BaseName)"
New-Item $outpwd -Type directory -Force
for ($i = 1; $i -le 5; $i++) {
try {
Push-Location $outpwd
Run-Executable "$scriptsPath\conan.exe" "install -f $conanfile --no-imports --verify $manifestsDir", `
'-s', ('compiler="' + $Compiler + '"'), `
"-s os=Windows -s arch=$Arch -s compiler.version=$CompilerVersion $extraArgs" `
break;
} catch {
if ($i -eq 5) {
throw "Could not install conan content"
}
} finally {
Pop-Location
}
$process = Start-Process-Logged `
"$scriptsPath\conan.exe" `
-WorkingDirectory $outpwd `
-ArgumentList "install -f $conanfile --no-imports --verify $manifestsDir", `
'-s', ('compiler="' + $Compiler + '"'), `
"-s os=Windows -s arch=$Arch -s compiler.version=$CompilerVersion $extraArgs" `
-NoNewWindow -Wait -Verbose `
-PassThru # Return process object
if ($process.ExitCode -ne 0) {
Write-Host "conan exited with code $($process.ExitCode)"
Exit(1)
}
Copy-Item -Path $conanfile -Destination "$outpwd\conanfile.txt"
}
}
Write-Output "Conan = 0.24.0" >> ~\versions.txt

View File

@@ -1,12 +1,10 @@
. "$PSScriptRoot\helpers.ps1"
$zip = Get-DownloadLocation "Qt3DStudio-3rdparty-win64-CI.zip"
$zip = "c:\users\qt\downloads\Qt3DStudio-3rdparty-win64-CI.zip"
$url = "http://ci-files01-hki.intra.qt.io/input/3rdparty/Qt3DStudio-3rdparty-win64-CI.zip"
Download $url $url $zip
Invoke-WebRequest -UseBasicParsing http://ci-files01-hki.intra.qt.io/input/3rdparty/Qt3DStudio-3rdparty-win64-CI.zip -OutFile $zip
Verify-Checksum $zip "08D740D2EFB4CBCDE7D012908B89AA48DE5CD4E1"
Extract-7Zip $zip C:\Utils\Qt3DStudio3rdparty
Remove-Item -Path $zip
Extract-Zip $zip C:\Utils\Qt3DStudio3rdparty
Remove-Item $zip
Set-EnvironmentVariable "QT3DSTUDIO_3RDPARTY_DIR" "C:/Utils/Qt3DStudio3rdparty"
[Environment]::SetEnvironmentVariable("QT3DSTUDIO_3RDPARTY_DIR", "C:/Utils/Qt3DStudio3rdparty", "Machine")

View File

@@ -30,8 +30,7 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script allows the Windows Remote Desktop Access
Run-Executable "reg.exe" "add `"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server`" /v fDenyTSConnections /t REG_DWORD /d 0 /f"
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

View File

@@ -39,33 +39,31 @@
# Msys need to be installed to target machine
# More info and building instructions can be found from http://doc.qt.io/qt-5/opensslsupport.html
$version = "1.0.2o"
$zip = Get-DownloadLocation ("openssl-$version.tar.gz")
$sha1 = "a47faaca57b47a0d9d5fb085545857cc92062691"
$version = "1.0.2j"
$zip = "c:\users\qt\downloads\openssl-$version.tar.gz"
$sha1 = "bdfbdb416942f666865fa48fe13c2d0e588df54f"
$destination = "C:\Utils\openssl-android-master"
Download https://www.openssl.org/source/openssl-$version.tar.gz \\ci-files01-hki.intra.qt.io\provisioning\openssl\openssl-$version.tar.gz $zip
Verify-Checksum $zip $sha1
Extract-7Zip $zip C:\Utils
Extract-7Zip C:\Utils\openssl-$version.tar C:\Utils
C:\Utils\sevenzip\7z.exe x $zip -oC:\Utils
C:\Utils\sevenzip\7z.exe x C:\Utils\openssl-$version.tar -oC:\Utils
Rename-Item C:\Utils\openssl-$version $destination
Remove-Item -Path $zip
Remove-Item $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 CC=C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc
set AR=C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-ar
set ANDROID_DEV=C:\utils\android-ndk-r10e\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"
Write-Host "Configuring OpenSSL $version for Android..."
Push-Location $destination
Run-Executable "C:\msys\1.0\bin\bash.exe" "-c `"c:/strawberry/perl/bin/perl Configure shared android`""
Pop-Location
echo "Configuring OpenSSL $version for Android..."
pushd $destination
C:\msys\1.0\bin\bash.exe -c "c:/strawberry/perl/bin/perl Configure shared android"
popd
# Following command is needed when using version 1.1.0. With version 1.1.0 msys is not needed.
# C:\mingw530\bin\mingw32-make.exe include\openssl\opensslconf.h
Write-Output "Android OpenSSL = $version" >> ~/versions.txt

View File

@@ -66,23 +66,27 @@ function Install($1, $2, $3, $4) {
Download $offcialUrl $cacheUrl $zip
Verify-Checksum $zip "$checksum"
Extract-7Zip $zip C:\Utils
Extract-Zip $zip C:\Utils
}
function SdkUpdate ($1, $2) {
Write-Host "Running Android SDK update for $1..."
echo "Running Android SDK update for $1..."
cmd /c "echo y |$1\tools\android update sdk --no-ui --all --filter $2"
}
Write-Host "Installing Android ndk $nkdVersion"
echo "Installing Android ndk $nkdVersion"
Install $ndkCachedUrl $ndkZip $ndkChecksum $ndkOfficialUrl
Set-EnvironmentVariable "ANDROID_NDK_HOME" $ndkFolder
Set-EnvironmentVariable "ANDROID_NDK_ROOT" $ndkFolder
echo "Set environment variable ANDROID_NDK_HOME=$ndkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_NDK_HOME", $ndkFolder, "Machine")
echo "Set environment variable ANDROID_NDK_ROOT=$ndkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_NDK_ROOT", $ndkFolder, "Machine")
#Write-Host "Installing Android sdk $sdkVersion"
#echo "Installing Android sdk $sdkVersion"
Install $sdkCachedUrl $sdkZip $sdkChecksum $sdkOfficialUrl
Set-EnvironmentVariable "ANDROID_SDK_HOME" $sdkFolder
Set-EnvironmentVariable "ANDROID_API_VERSION" $sdkApiLevel
echo "Set environment variable ANDROID_SDK_HOME=$sdkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_SDK_HOME", $sdkFolder, "Machine")
echo "Set environment variable ANDROID_API_VERSION $sdkApiLevel"
[Environment]::SetEnvironmentVariable("ANDROID_API_VERSION", $sdkApiLevel, "Machine")
# SDK update
SdkUpdate $sdkFolder $sdkApiLevel
@@ -90,17 +94,5 @@ SdkUpdate $sdkFolder tools
SdkUpdate $sdkFolder platform-tools
SdkUpdate $sdkFolder build-tools-$sdkBuildToolsVersion
# kill adb. This process prevents provisioning to continue
$p = Get-Process -Name "adb" -ErrorAction:SilentlyContinue
if ($p -ne $null) {
Write-Host "Stopping adb.exe"
Stop-Process -Force $p
} else {
Write-Host "adb.exe not running"
}
Write-Output "Android SDK tools= $sdkVersion" >> ~/versions.txt
Write-Output "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
Write-Output "Android SDK Api Level = $sdkApiLevel" >> ~/versions.txt
Write-Output "Android NDK = $ndkVersion" >> ~/versions.txt
# kill adb. This process prevent's provisioning to continue
taskkill /im adb.exe /f

View File

@@ -36,21 +36,21 @@
$majorminorversion = "3.6"
$version = "3.6.2"
$zip = Get-DownloadLocation ("cmake-" + $version + "-win32-x86.zip")
$zip = "c:\users\qt\downloads\cmake-" + $version + "-win32-x86.zip"
$officialurl = "https://cmake.org/files/v" + $majorminorversion + "/cmake-" + $version + "-win32-x86.zip"
$cachedurl = "\\ci-files01-hki.intra.qt.io\provisioning\cmake\cmake-" + $version + "-win32-x86.zip"
Write-Host "Removing old cmake"
echo "Removing old cmake"
Remove-Item "C:\CMake" -Force -Recurse -ErrorAction SilentlyContinue
Download $officialurl $cachedurl $zip
Verify-Checksum $zip "541F6E7EFD228E46770B8631FFE57097576E4D4E"
Extract-7Zip $zip C:
Extract-Zip $zip C:
$defaultinstallfolder = "C:\cmake-" + $version + "-win32-x86"
Rename-Item $defaultinstallfolder C:\CMake
Add-Path "C:\CMake\bin"
Write-Output "CMake = $version" >> ~\versions.txt
echo "CMake = $version" >> ~\versions.txt

View File

@@ -1,4 +1,2 @@
. "$PSScriptRoot\helpers.ps1"
# Disable the NTP from syncing
Run-Executable "w32tm.exe" "/config /syncfromflags:NO"
w32tm /config /syncfromflags:NO

View File

@@ -30,11 +30,10 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script prevents Windows from going to sleep
Run-Executable "powercfg.exe" "-change -monitor-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -standby-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -disk-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -hibernate-timeout-ac 0"
powercfg -change -monitor-timeout-ac 0
powercfg -change -standby-timeout-ac 0
powercfg -change -disk-timeout-ac 0
powercfg -change -hibernate-timeout-ac 0

View File

@@ -30,8 +30,7 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script disables the Windows UAC
Run-Executable "reg.exe" "ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f"
C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f

View File

@@ -2,7 +2,4 @@
#
# If disabled manually, windows will automatically enable it after
# some period of time. Disabling it speeds up the builds.
. "$PSScriptRoot\helpers.ps1"
Run-Executable "reg.exe" "ADD `"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender`" /V DisableAntiSpyware /T REG_dWORD /D 1 /F"
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /V DisableAntiSpyware /T REG_dWORD /D 1 /F

View File

@@ -43,7 +43,7 @@ if ($service.Status -eq "Stopped") {
Write-Host "Windows Update service already stopped."
} else {
Write-Host "Stopping Windows Update service."
Stop-Service -Name "wuauserv" -Force
stop-service wuauserv
}
$startup = Get-WmiObject Win32_Service | Where-Object {$_.Name -eq "wuauserv"} | Select -ExpandProperty "StartMode"

View File

@@ -11,9 +11,9 @@ $exe = "C:\Windows\Temp\$package"
Download $officialUrl $cachedUrl $exe
Write-Host "Installing DirectX SDK"
Run-Executable $exe "/u"
echo "Installing DirectX SDK"
cmd /c "$exe /u"
Remove-Item -Path $exe
Remove-Item $exe
Write-Output "DirectX SDK = 9.29.1962 (Jun 10)" >> ~\versions.txt
echo "DirectX SDK = 9.29.1962 (Jun 10)" >> ~\versions.txt

View File

@@ -1,39 +0,0 @@
#############################################################################
##
## 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$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
Start-Process -NoNewWindow -FilePath "C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\ngen.exe" -ArgumentList ExecuteQueuedItems -Wait
if( (is64bitWinHost) -eq 1 ) {
Start-Process -NoNewWindow -FilePath "C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\ngen.exe" -ArgumentList ExecuteQueuedItems -Wait
}

View File

@@ -51,16 +51,18 @@ $sha1 = "3690400625672bef6369bcf90dcde4d78b493b24"
#$targetFile = "C:\Windows\Temp\$packageName"
$targetFolder = "C:\Program Files\"
#Write-Host "Downloading '$installerName'"
#echo "Downloading '$installerName'"
#Download $officialUrl $cacheUrl $targetFile
#Verify-Checksum $targetFile $sha1
Write-Host "Extracting '$cacheUrl'"
Extract-7Zip $cacheUrl $targetFolder
echo "Extracting '$cacheUrl'"
#Extract-7Zip $cacheUrl $targetFolder
Start-Process -FilePath "C:\Utils\sevenzip\7z.exe" -ArgumentList "x -y `"$cacheUrl`" -o`"$targetFolder`"" -Wait
#Remove-Item -Recurse -Force "$packageName"
Set-EnvironmentVariable "FBXSDK" "$targetFolder\Autodesk\FBX\FBX SDK\2016.1.2"
echo "Adding environment variables."
[Environment]::SetEnvironmentVariable("FBXSDK", "$targetFolder\Autodesk\FBX\FBX SDK\2016.1.2", [EnvironmentVariableTarget]::Machine)
Write-Output "FBX SDK = $version" >> ~\versions.txt
echo "FBX SDK = $version" >> ~\versions.txt

View File

@@ -5,32 +5,13 @@ function Verify-Checksum
[string]$Expected=$(throw("Checksum required")),
[ValidateSet("sha1","md5")][string]$Algorithm="sha1"
)
Write-Host "Verifying checksum of $File"
$fs = new-object System.IO.FileStream $File, "Open"
$algo = [type]"System.Security.Cryptography.$Algorithm"
$crypto = $algo::Create()
$hash = [BitConverter]::ToString($crypto.ComputeHash($fs)).Replace("-", "")
$fs.Close()
if ($hash -ne $Expected) {
throw "Checksum verification failed, got: '$hash' expected: '$Expected'"
}
}
function Run-Executable
{
Param (
[string]$Executable=$(throw("You must specify a program to run.")),
[string[]]$Arguments
)
if ([string]::IsNullOrEmpty($Arguments)) {
Write-Host "Running `"$Executable`""
$p = Start-Process -FilePath "$Executable" -Wait -PassThru
} else {
Write-Host "Running `"$Executable`" with arguments `"$Arguments`""
$p = Start-Process -FilePath "$Executable" -ArgumentList $Arguments -Wait -PassThru
}
if ($p.ExitCode -ne 0) {
throw "Process $($Executable) exited with exit code $($p.ExitCode)"
Write-Error "Checksum verification failed, got: '$hash' expected: '$Expected'"
}
}
@@ -38,27 +19,66 @@ function Extract-7Zip
{
Param (
[string]$Source,
[string]$Destination,
[string]$Filter
[string]$Destination
)
Write-Host "Extracting '$Source' to '$Destination'..."
echo "Extracting '$Source' to '$Destination'..."
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'
$zipExe = join-path (${env:ProgramFiles(x86)}, ${env:ProgramFiles} -ne $null)[0] '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
$zipExe = "C:\Utils\sevenzip\7z.exe"
$zipExe = join-path ${env:ProgramW6432} '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
throw "Could not find 7-zip."
$zipExe = "C:\Utils\sevenzip\7z.exe"
if (-not (test-path $zipExe)) {
throw "Could not find 7-zip."
}
}
}
} else {
$zipExe = "7z.exe"
}
if ([string]::IsNullOrEmpty($Filter)) {
Run-Executable "$zipExe" "x -y `"-o$Destination`" `"$Source`""
} else {
Run-Executable "$zipExe" "x -y -aoa `"-o$Destination`" `"$Source`" $Filter"
& $zipExe x $Source "-o$Destination" -y
}
function Extract-Zip
{
Param (
[string]$Source,
[string]$Destination
)
echo "Extracting '$Source' to '$Destination'..."
New-Item -ItemType Directory -Force -Path $Destination
$shell = new-object -com shell.application
$zipfile = $shell.Namespace($Source)
$destinationFolder = $shell.Namespace($Destination)
$destinationFolder.CopyHere($zipfile.Items(), 16)
}
function Extract-Dev-Folders-From-Zip
{
Param (
[string]$package,
[string]$zipDir,
[string]$installPath
)
$shell = new-object -com shell.application
echo "Extracting contents of $package"
foreach ($subDir in "lib", "include", "bin", "share") {
$zip = $shell.Namespace($package + "\" + $zipDir + "\" + $subDir)
if ($zip) {
Write-Host "Extracting $subDir from zip archive"
} else {
Write-Host "$subDir is missing from zip archive - skipping"
continue
}
$destDir = $installPath + "\" + $subdir
New-Item $destDir -type directory
$destinationFolder = $shell.Namespace($destDir)
$destinationFolder.CopyHere($zip.Items(), 16)
}
}
@@ -68,17 +88,6 @@ function BadParam
throw("You must specify $Description")
}
function Get-DefaultDownloadLocation
{
return $env:USERPROFILE + "\downloads\"
}
function Get-DownloadLocation
{
Param ([string]$TargetName = $(BadParam("a target filename")))
return (Get-DefaultDownloadLocation) + $TargetName
}
function Download
{
Param (
@@ -88,14 +97,12 @@ function Download
)
$ProgressPreference = 'SilentlyContinue'
try {
Write-Host "Downloading from cached location ($CachedUrl) to $Destination"
if ($CachedUrl.StartsWith("http")) {
Invoke-WebRequest -UseBasicParsing $CachedUrl -OutFile $Destination
} else {
Copy-Item $CachedUrl $Destination
}
} catch {
Write-Host "Cached download failed: Downloading from official location: $OfficialUrl"
Invoke-WebRequest -UseBasicParsing $OfficialUrl -OutFile $Destination
}
}
@@ -105,33 +112,34 @@ function Add-Path
Param (
[string]$Path
)
Write-Host "Adding $Path to Path"
echo "Adding $Path to Path"
$oldPath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
[Environment]::SetEnvironmentVariable("Path", $oldPath + ";$Path", [EnvironmentVariableTarget]::Machine)
$Env:PATH = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
}
function Set-EnvironmentVariable
function is64bitWinHost
{
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64")) {
return 1
}
else {
return 0
}
}
Function Execute-Command
{
Param (
[string]$Key = $(BadParam("a key")),
[string]$Value = $(BadParam("a value."))
[string]$command
)
Write-Host "Setting environment variable `"$($Key)`" to `"$($Value)`""
[Environment]::SetEnvironmentVariable($Key, $Value, [EnvironmentVariableTarget]::Machine)
}
function Is64BitWinHost
{
return [environment]::Is64BitOperatingSystem
}
function IsProxyEnabled {
return (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyEnable
}
function Get-Proxy {
return (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyServer
Try {
echo "Executing command '$command'..."
$process = Start-Process -FilePath "cmd" -ArgumentList "/c $command" -PassThru -Wait -WindowStyle Hidden
if ($process.ExitCode) {throw "Error running command: '$command'"}
}
Catch {
$_.Exception.Message
exit 1
}
}

View File

@@ -37,11 +37,53 @@
$version = "53_1"
if (Is64BitWinHost) {
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64")) {
$url_official_2013 = "http://download.qt.io/development_releases/prebuilt/icu/prebuilt/msvc2013/icu_" + $version + "_msvc_2013_64_devel.7z"
$url_cache_2013 = "\\ci-files01-hki.intra.qt.io/provisioning/windows/icu_" + $version + "_msvc_2013_64_devel.7z"
$sha1_2013 = "7267CF8C5BD39C4218F2CCFE31ECA81B7644ED6F"
$icuPackage_msvc2013_64 = "C:\Windows\Temp\icu-$version-msvc2013_64.7z"
if (!(Test-Path C:\Utils\icu_"$version"_msvc_2013_64_devel\)) {
echo "Fetching from URL ..."
Download $url_official_2013 $url_cache_2013 $icuPackage_msvc2013_64
Verify-Checksum $icuPackage_msvc2013_64 $sha1_2013
Get-ChildItem $icuPackage_msvc2013_64 | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o""C:\Utils\icu_"$version"_msvc_2013_64_devel\""}
echo "Cleaning $icuPackage_msvc2013_64..."
Remove-Item -Recurse -Force $icuPackage_msvc2013_64
echo "ICU MSVC2013 = $version" >> ~\versions.txt
}
# FIXME: do we really want to have it per MSVC version? What about MSVC2015?
[Environment]::SetEnvironmentVariable("CI_ICU_PATH_MSVC2013", "C:\\Utils\\icu_53_1_msvc_2013_64_devel\\icu53_1", "Machine")
# FIXME: do we really want to use the 4.8.2 ICU build?
Set-EnvironmentVariable "CI_ICU_PATH_Mingw49" "C:\Utils\icu_53_1_Mingw_builds_4_8_2_posix_seh_64_devel\icu53_1"
[Environment]::SetEnvironmentVariable("CI_ICU_PATH_Mingw49", "C:\Utils\icu_53_1_Mingw_builds_4_8_2_posix_seh_64_devel\icu53_1", "Machine")
} else {
$url_official_2013_32 = "http://download.qt.io/development_releases/prebuilt/icu/prebuilt/msvc2013/icu_" + $version + "_msvc_2013_32_devel.7z"
$url_cache_2013_32 = "\\ci-files01-hki.intra.qt.io/provisioning/windows/icu_" + $version + "_msvc_2013_32_devel.7z"
$sha1_2013_32 = "D745A5F0F6A3817AE989501A01A5A0BA53FDB800"
$icuPackage_msvc2013_32 = "C:\Windows\Temp\icu-$version-msvc2013_32.7z"
if (!(Test-Path C:\Utils\icu_"$version"_msvc_2013_32_devel\)) {
echo "Fetching from URL ..."
Download $url_official_2013_32 $url_cache_2013_32 $icuPackage_msvc2013_32
Verify-Checksum $icuPackage_msvc2013_32 $sha1_2013_32
Get-ChildItem $icuPackage_msvc2013_32 | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o""C:\Utils\icu_"$version"_msvc_2013_32_devel\""}
echo "Cleaning $icuPackage_msvc2013_32..."
Remove-Item -Recurse -Force $icuPackage_msvc2013_32
echo "ICU MSVC2013 = $version" >> ~\versions.txt
}
# FIXME: do we really want to have it per MSVC version? What about MSVC2015?
[Environment]::SetEnvironmentVariable("CI_ICU_PATH_MSVC2013", "C:\\Utils\\icu_53_1_msvc_2013_32_devel\\icu53_1", "Machine")
}
Write-Output "ICU = $version" >> ~\versions.txt

View File

@@ -36,10 +36,11 @@
# This script will install Dependency Walker 2.2.6000
$version = "2.2.6000"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "_x64"
$sha1 = "4831D2A8376D64110FF9CD18799FE6C69509D3EA"
} else {
}
else {
$arch = "_x86"
$sha1 = "bfec714057e8449b0246051be99ba46a7760bab9"
}
@@ -48,15 +49,15 @@ $url_official = "http://www.dependencywalker.com/depends22" + $arch + ".zip"
$dependsPackage = "C:\Windows\Temp\depends-$version.zip"
$TARGETDIR = "C:\Utils\dependencywalker"
if (!(Test-Path -Path $TARGETDIR )) {
if(!(Test-Path -Path $TARGETDIR )){
New-Item -ItemType directory -Path $TARGETDIR
}
Download $url_official $url_cache $dependsPackage
Verify-Checksum $dependsPackage $sha1
Extract-7Zip $dependsPackage $TARGETDIR
Get-ChildItem $dependsPackage | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname "-o$TARGETDIR"}
Write-Host "Cleaning $dependsPackage.."
Remove-Item -Recurse -Force -Path "$dependsPackage"
echo "Cleaning $dependsPackage.."
Remove-Item -Recurse -Force "$dependsPackage"
Write-Output "Dependency Walker = $version" >> ~\versions.txt
echo "Dependency Walker = $version" >> ~\versions.txt

View File

@@ -35,10 +35,11 @@
# Install Git version 2.13.0
$version = "2.13.0"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "-64-bit"
$sha1 = "E1D7C6E5E16ACAF3C108064A2ED158F604FA29A7"
} else {
}
else {
$arch = "-32-bit"
$sha1 = "03c7df2e4ef61ea6b6f9c0eb7e6d5151d9682aec"
}
@@ -46,11 +47,11 @@ $gitPackage = "C:\Windows\Temp\Git-" + $version + $arch + ".exe"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\Git-" + $version + $arch + ".exe"
$url_official = "https://github.com/git-for-windows/git/releases/download/v" + $version + ".windows.1/Git-" + $version + $arch + ".exe"
Write-Host "Fetching Git $version..."
echo "Fetching Git $version..."
Download $url_official $url_cache $gitPackage
Verify-Checksum $gitPackage $sha1
Write-Host "Installing Git $version..."
Run-Executable "$gitPackage" "/SILENT /COMPONENTS=`"icons,ext\reg\shellhere,assoc,assoc_sh`""
Remove-Item -Path $gitPackage
echo "Installing Git $version..."
cmd /c "$gitPackage /SILENT /COMPONENTS="icons,ext\reg\shellhere,assoc,assoc_sh""
remove-item $gitPackage
Write-Output "Git = $version" >> ~\versions.txt
echo "Git = $version" >> ~\versions.txt

View File

@@ -38,10 +38,11 @@
$installdir = "C:\Program Files\Java\jdk1.8.0_144"
$version = "8u144"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "x64"
$sha1 = "adb03bc3f4b40bcb3227687860798981d58e1858"
} else {
}
else {
$arch = "i586"
$sha1 = "3b9ab95914514eaefd72b815c5d9dd84c8e216fc"
}
@@ -50,31 +51,28 @@ $url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\jdk-" + $version
$official_url = "http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-" + $version + "-windows-" + $arch + ".exe"
$javaPackage = "C:\Windows\Temp\jdk-$version.exe"
Write-Host "Fetching Java SE $version..."
echo "Fetching Java SE $version..."
$ProgressPreference = 'SilentlyContinue'
try {
Write-Host "...from local cache"
Download $url_cache $url_cache $javaPackage
echo "...from local cache"
Invoke-WebRequest -UseBasicParsing $url_cache -OutFile $javaPackage
} catch {
Write-Host "...from oracle.com"
echo "...from oracle.com"
$client = new-object System.Net.WebClient
$cookie = "oraclelicense=accept-securebackup-cookie"
$client.Headers.Add("Cookie", $cookie)
$client.DownloadFile($official_url, $javaPackage)
Download $official_url $official_url $javaPackage
Invoke-WebRequest -UseBasicParsing $official_url -OutFile $javaPackage
}
Verify-Checksum $javaPackage $sha1
Run-Executable "$javaPackage" "/s SPONSORS=0"
Write-Host "Cleaning $javaPackage.."
Remove-Item -Recurse -Force -Path "$javaPackage"
cmd /c "$javaPackage /s SPONSORS=0"
echo "Cleaning $javaPackage.."
Remove-Item -Recurse -Force "$javaPackage"
Write-Host "Remove Java update from startup"
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run" /v SunJavaUpdateSched /f
Set-EnvironmentVariable "JAVA_HOME" "$installdir"
[Environment]::SetEnvironmentVariable("JAVA_HOME", "$installdir", [EnvironmentVariableTarget]::Machine)
Add-Path "$installdir\bin"
Write-Output "Java SE = $version $arch" >> ~\versions.txt
echo "Java SE = $version $arch" >> ~\versions.txt

View File

@@ -55,13 +55,14 @@ function InstallMinGW
Download $url_official $url_cache $mingwPackage
Verify-Checksum $mingwPackage $sha1
Extract-7Zip $mingwPackage $TARGETDIR
Get-ChildItem $mingwPackage | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname "-o$TARGETDIR"}
Set-EnvironmentVariable "$envvar" ("$targetdir\mingw" + $win_arch.Substring($win_arch.get_Length()-2))
echo "Adding MinGW environment variable."
[Environment]::SetEnvironmentVariable("$envvar", "$targetdir\mingw32", [EnvironmentVariableTarget]::Machine)
Write-Host "Cleaning $mingwPackage.."
Remove-Item -Recurse -Force -Path "$mingwPackage"
echo "Cleaning $mingwPackage.."
Remove-Item -Recurse -Force "$mingwPackage"
Write-Output "MinGW = $version $release" >> ~\versions.txt
echo "MinGW = $version $release" >> ~\versions.txt
}

View File

@@ -36,10 +36,11 @@
# This script will install Notepad++
$version = "7.3"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = ".x64"
$sha1 = "E7306DF1D6E81801FB4BE0868610DB70E979B0AA"
} else {
}
else {
$arch = ""
$sha1 = "d4c403675a21cc381f640b92e596bae3ef958dc6"
}
@@ -49,12 +50,13 @@ $nppPackage = "C:\Windows\Temp\npp-$version.exe"
Download $url_official $url_cache $nppPackage
Verify-Checksum $nppPackage $sha1
Run-Executable "$nppPackage" "/S"
cmd /c "$nppPackage /S"
Write-Host "Cleaning $nppPackage.."
Remove-Item -Recurse -Force -Path "$nppPackage"
echo "Cleaning $nppPackage.."
Remove-Item -Recurse -Force "$nppPackage"
Write-Output "Notepad++ = $version" >> ~\versions.txt
echo "Notepad++ = $version" >> ~\versions.txt
Write-Host "Disabling auto updates."
Rename-Item -Path "C:\Program Files\Notepad++\updater" -NewName "updater_disabled"
echo "Auto-updating disabled."

View File

@@ -30,6 +30,17 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
Get-WmiObject Win32_OSRecoveryConfiguration -EnableAllPrivileges | Set-WmiInstance -Arguments @{ AutoReboot=$False }
# This script will install QNX 6.6.0
$version = "6.6.0"
$nondottedversion = $version -replace '[.]',''
$targetFolder = "c:"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\qnx" + $nondottedversion + ".zip"
Get-ChildItem $url_cache | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o"C:\"}
[Environment]::SetEnvironmentVariable("QNX_660", "$targetFolder", "Machine")
echo "QNX = $version" >> ~\versions.txt

View File

@@ -36,10 +36,11 @@
# This script will install Ruby
$version = "2.4.2-2"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "-x64"
$sha1 = "c961c2752a183487bc42ed24beb7e931230fa7d5"
} else {
}
else {
$arch = "-x86"
$sha1 = "2639a481c3b5ad11f57d5523cc41ca884286089e"
}
@@ -49,9 +50,9 @@ $rubyPackage = "C:\Windows\Temp\rubyinstaller-$version.exe"
Download $url_official $url_cache $rubyPackage
Verify-Checksum $rubyPackage $sha1
Run-Executable $rubyPackage "/dir=C:\Ruby-$version$arch /tasks=modpath /verysilent"
Start-Process -FilePath $rubyPackage -ArgumentList "/dir=C:\Ruby-$version$arch /tasks=modpath /verysilent" -Wait
Write-Host "Cleaning $rubyPackage.."
Remove-Item -Recurse -Force -Path "$rubyPackage"
echo "Cleaning $rubyPackage.."
Remove-Item -Recurse -Force "$rubyPackage"
Write-Output "Ruby = $version" >> ~\versions.txt
echo "Ruby = $version" >> ~\versions.txt

View File

@@ -38,10 +38,11 @@
$version = "16.04"
$nonDottedVersion = "1604"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "-x64"
$sha1 = "338A5CC5200E98EDD644FC21807FDBE59910C4D0"
} else {
}
else {
$arch = ""
$sha1 = "dd1cb1163c5572951c9cd27f5a8dd550b33c58a4"
}
@@ -53,11 +54,11 @@ $7zTargetLocation = "C:\Utils\sevenzip\"
Download $url_official $url_cache $7zPackage
Verify-Checksum $7zPackage $sha1
Run-Executable $7zPackage "/S","/D=$7zTargetLocation"
Start-Process -FilePath $7zPackage -ArgumentList "/S","/D=$7zTargetLocation" -Wait
Write-Host "Cleaning $7zPackage.."
Remove-Item -Recurse -Force -Path "$7zPackage"
echo "Cleaning $7zPackage.."
Remove-Item -Recurse -Force "$7zPackage"
Add-Path $7zTargetLocation
Write-Output "7-Zip = $version" >> ~\versions.txt
echo "7-Zip = $version" >> ~\versions.txt

View File

@@ -36,23 +36,23 @@
# This script installs Strawberry Perl
$version = "5.26.0.1"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$arch = "-64bit"
$sha1 = "2AE2EDA36A190701399130CBFEE04D00E9BA036D"
} else {
}
else {
$arch = "-32bit"
$sha1 = "b50b688a879f33941433774b2813bfd4b917e4ee"
}
$installer_name = "strawberry-perl-" + $version + $arch + ".msi"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\" + $installer_name
$url_official = "http://strawberryperl.com/download/" + $version + "/" + $installer_name
$strawberryPackage = "C:\Windows\Temp\" + $installer_name
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\strawberry-perl-" + $version + $arch + ".msi"
$url_official = "http://strawberryperl.com/download/" + $version + "/strawberry-perl-" + $version + $arch + ".msi"
$strawberryPackage = "C:\Windows\Temp\strawberry-installer-$version.msi"
Download $url_official $url_cache $strawberryPackage
Verify-Checksum $strawberryPackage $sha1
Run-Executable "$strawberryPackage" "/QB INSTALLDIR=C:\strawberry REBOOT=REALLYSUPPRESS"
cmd /c "$strawberryPackage /QB INSTALLDIR=C:\strawberry REBOOT=REALLYSUPPRESS"
Write-Host "Cleaning $strawberryPackage.."
Remove-Item -Recurse -Force -Path "$strawberryPackage"
echo "Cleaning $strawberryPackage.."
Remove-Item -Recurse -Force "$strawberryPackage"
Write-Output "strawberry = $version" >> ~\versions.txt
echo "strawberry = $version" >> ~\versions.txt

View File

@@ -1,11 +1,9 @@
. "$PSScriptRoot\helpers.ps1"
$zip = Get-DownloadLocation "jom_1_1_2.zip"
$zip = "c:\users\qt\downloads\jom_1_1_2.zip"
Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/jom_1_1_2.zip -OutFile $zip
Verify-Checksum $zip "80EE5678E714DE99DDAF5F7593AB04DB1C7928E4"
Extract-7Zip $zip C:\Utils\Jom
Extract-Zip $zip C:\Utils\Jom
Set-EnvironmentVariable "CI_JOM_PATH" "C:\Utils\Jom"
Write-Output "Jom = 1.1.2" >> ~/versions.txt
[Environment]::SetEnvironmentVariable("CI_JOM_PATH", "C:\Utils\Jom", "Machine")

View File

@@ -1,94 +1,32 @@
param(
[Int32]$archVer=32,
[string]$toolchain="vs2015",
[bool]$setDefault=$true
)
param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# PySide versions following 5.6 use a C++ parser based on Clang (http://clang.org/).
# The Clang library (C-bindings), version 3.9 or higher is required for building.
# Starting from Qt 5.11 QDoc requires Clang to parse C++
Get-Content "$PSScriptRoot\..\shared\sw_versions.txt" | Foreach-Object {
$var = $_.Split('=')
New-Variable -Name $var[0] -Value $var[1] -Force
New-Variable -Name $var[0] -Value $var[1]
$libclang_version = $libclang_version -replace '["."]'
}
$zip = Get-DownloadLocation "libclang.7z"
$baseDestination = "C:\Utils\libclang-" + $libclang_version + "-" + $toolchain
function setURL() {
$script:url = "https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_$libclang_version-windows-$toolchain`_$archVer.7z"
if ( $archVer -eq 64 ) {
$sha1 = "dc42beb0efff130c4d7dfef3c97adf26f1ab04e0"
$url = "https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_$libclang_version-windows-vs2015_64.7z"
} else {
$sha1 = "64e826c00ae632fbb28655e6e1fa9194980e1205"
$url = "https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_$libclang_version-windows-vs2015_32.7z"
}
$toolchainSuffix = ""
$zip = "c:\users\qt\downloads\libclang.7z"
$destination = "C:\Utils\libclang-" + $libclang_version
if ( $toolchain -eq "vs2015" ) {
if ( $archVer -eq 64 ) {
$sha1 = "37afa18d243a50c05bee5c6e16b409ed526ec17a"
$destination = $baseDestination + "-64"
Download $url $url $zip
Verify-Checksum $zip $sha1
setURL
Download $url $url $zip
Verify-Checksum $zip $sha1
C:\Utils\sevenzip\7z.exe x $zip -oC:\Utils\
Rename-Item C:\Utils\libclang $destination
Extract-7Zip $zip C:\Utils\
Rename-Item C:\Utils\libclang $destination
Remove-Item -Force -Path $zip
}
$archVer=32
$sha1 = "812b6089c6da99ced9ebebbd42923bd96590519d"
$destination = $baseDestination + "-32"
setURL
Download $url $url $zip
Verify-Checksum $zip $sha1
Extract-7Zip $zip C:\Utils\
Rename-Item C:\Utils\libclang $destination
Remove-Item -Force -Path $zip
$toolchainSuffix = "msvc"
}
if ( $toolchain -eq "mingw" ) {
if ( $archVer -eq 64 ) {
$sha1 = "1233e6c008b90d89483df0291a597a0bac426d29"
$destination = $baseDestination + "-64"
setURL
Download $url $url $zip
Verify-Checksum $zip $sha1
Extract-7Zip $zip C:\Utils\
Rename-Item C:\Utils\libclang $destination
Remove-Item -Force -Path $zip
}
$archVer=32
$sha1 = "2d6ceab0e1a05e2b19fe615c57b64d36977b4933"
$destination = $baseDestination + "-32"
setURL
Download $url $url $zip
Verify-Checksum $zip $sha1
Extract-7Zip $zip C:\Utils\
Rename-Item C:\Utils\libclang $destination
Remove-Item -Force -Path $zip
$toolchainSuffix = "mingw"
}
if ( $setDefault ) {
Set-EnvironmentVariable "LLVM_INSTALL_DIR" ($baseDestination + "-_ARCH_")
}
Set-EnvironmentVariable ("LLVM_INSTALL_DIR_" + $toolchainSuffix) ($baseDestination + "-_ARCH_")
Write-Output "libClang = $libclang_version" >> ~/versions.txt
if ( $libclang_version -eq "60" ) {
# This is a hacked static build of libclang which requires special
# handling on the qdoc side.
Set-EnvironmentVariable "QDOC_USE_STATIC_LIBCLANG" "1"
}
[Environment]::SetEnvironmentVariable("LLVM_INSTALL_DIR", $destination, [EnvironmentVariableTarget]::Machine)
del $zip
echo "libClang = $libclang_version" >> ~/versions.txt

View File

@@ -35,7 +35,7 @@
. "$PSScriptRoot\helpers.ps1"
$archive = Get-DownloadLocation "libusb-1.0.21-ife3db79196-msvc2015.7z"
$archive = "C:\users\qt\downloads\libusb-1.0.21-ife3db79196-msvc2015.7z"
$libusb_location = "C:\Utils\libusb-1.0"
Copy-Item \\ci-files01-hki.intra.qt.io\provisioning\libusb-1.0\libusb-1.0.21-ife3db79196-msvc2015.7z $archive
@@ -44,6 +44,4 @@ Verify-Checksum $archive "396a3224c306480f24a583850d923d06aa4377c1"
Extract-7Zip $archive $libusb_location
# Tell qt-apps/qdb build system where to find libusb
Set-EnvironmentVariable "LIBUSB_PATH" $libusb_location
Write-Output "libusb = libusb-1.0.21" >> ~/versions.txt
[Environment]::SetEnvironmentVariable("LIBUSB_PATH", $libusb_location, "Machine")

View File

@@ -1,3 +1,3 @@
# This is needed e.g. for Android NDK installation for Windows 7 x86
Write-Host "Increase value of MaxMemoryPerShellMB to avoid 'out of memory' exception"
echo "Increase value of MaxMemoryPerShellMB to avoid 'out of memory' exception"
set-item wsman:localhost\Shell\MaxMemoryPerShellMB 2048

View File

@@ -47,19 +47,17 @@ function Extract-Mesa
[string]$targetFolder
)
Write-Host "Installing Mesa from $downloadUrl to $targetFolder"
Write-Host "Downloading $downloadUrl to $package"
Invoke-WebRequest -UseBasicParsing $downloadUrl -OutFile $package
Verify-Checksum $package $sha1
Extract-7Zip $package $targetFolder
Write-Host "Removing $package"
Remove-Item -Path $package
$localArchivePath = "C:\Windows\temp\opengl32sw.7z"
Invoke-WebRequest -UseBasicParsing $downloadUrl -OutFile $localArchivePath
Verify-Checksum $localArchivePath $sha1
Get-ChildItem $package | % {& "C:\Utils\sevenzip\7z.exe" "x" "-y" $_.fullname "-o$targetFolder"}
Remove-Item $localArchivePath
}
if (Is64BitWinHost) {
if ( Test-Path C:\Windows\SysWOW64 ) {
Extract-Mesa $mesaOpenglUrl_64 $mesaOpenglSha1_64 "C:\Windows\System32"
Extract-Mesa $mesaOpenglUrl_32 $mesaOpenglSha1_32 "C:\Windows\SysWOW64"
} else {
Extract-Mesa $mesaOpenglUrl_32 $mesaOpenglSha1_32 "C:\Windows\system32"
}
Write-Output "Mesa llvmpipe = $version" >> ~/versions.txt

View File

@@ -1,50 +0,0 @@
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# Install Visual Studio 2013 update 5
$version = "2013 Update 5 (KB2829760)"
$package = "C:\Windows\Temp\vs12-kb2829760.exe"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\VS2013.5.exe"
Write-Host "Fetching patch for Visual Studio $version..."
Copy-Item $url_cache $package
Write-Host "Installing Update 5 for Visual Studio $version..."
Run-Executable "$package" "/norestart /passive"
Write-Host "Removing $package ..."
Remove-Item $package
Write-Output "Visual Studio = $version" >> ~\versions.txt

View File

@@ -36,32 +36,25 @@
# Original download page: https://msdn.microsoft.com/en-us/library/mt752379.aspx
$version = "2015 update3 (KB3165756)"
$packagePath = "C:\Windows\Temp"
$package = $packagePath + "\vs14-kb3165756.exe"
$package = "C:\Windows\Temp\vs14-kb3165756.exe"
$url_cache = "http://ci-files01-hki.intra.qt.io/input/windows/vs14-kb3165756.exe"
$url_official = "http://go.microsoft.com/fwlink/?LinkID=816878"
$sha1 = "6a21d9b291ca75d44baad95e278fdc0d05d84c02"
$preparedPackage = "\\ci-files01-hki.intra.qt.io\provisioning\windows\vs14-kb3165756-update"
$preparedPackage="\\ci-files01-hki.intra.qt.io\provisioning\windows\vs14-kb3165756-update"
if (Test-Path $preparedPackage) {
# The prepared package contains updated packages so that not everything has to be downloaded
Write-Host "Using prepared package"
Copy-Item -Recurse $preparedPackage $packagePath
# Remove the whole downloaded folder
$toRemove = $packagePath + "\vs14-kb3165756-update"
$executable = "$toRemove\vs14-kb3165756.exe"
echo "Using prepared package"
pushd $preparedPackage
$commandLine = "$preparedPackage\vs14-kb3165756.exe"
} else {
Write-Host "Fetching patch for Visual Studio $version..."
echo "Fetching patch for Visual Studio $version..."
Download $url_official $url_cache $package
$executable = $package
# Remove the downloaded executable
$toRemove = $executable
Verify-Checksum $package $sha1
$commandLine = $package
}
echo "Installing patch for Visual Studio $version..."
. $commandLine /norestart /passive
Verify-Checksum $executable $sha1
Write-Host "Installing patch for Visual Studio $version..."
Run-Executable $executable "/norestart /passive"
Remove-Item -Force -Recurse -Path $toRemove
Write-Output "Visual Studio = $version" >> ~\versions.txt
if ($commandLine.StartsWith("C:\Windows")) {
remove-item $package
}

View File

@@ -37,11 +37,8 @@
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
$version = "5.6.11"
$baseNameX64 = "mysql-$version-winx64"
$packagex64 = "C:\Windows\temp\$baseNameX64.zip"
$baseNameX86 = "mysql-$version-win32"
$packagex86 = "C:\Windows\temp\$baseNameX86.zip"
$installFolder = "C:\Utils\my_sql"
$packagex64 = "C:\Windows\temp\mysql-$version-winx64.zip"
$packagex86 = "C:\Windows\temp\mysql-$version-win32.zip"
function DownloadAndInstall
{
@@ -51,33 +48,43 @@ function DownloadAndInstall
[string]$installPath
)
Write-Host "Fetching from URL ..."
echo "Fetching from URL ..."
Copy-Item $internalUrl $package
$zipDir = [io.path]::GetFileNameWithoutExtension($package)
Extract-7Zip $package $installPath "$zipDir\lib $zipDir\bin $zipDir\share $zipDir\include"
Extract-Dev-Folders-From-Zip $package $zipDir $installPath
Remove-Item -Path $package
Remove-Item $package
}
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
# Install x64 bit version
$architecture = "x64"
$installFolder = "C:\Utils\my_sql\my_sql"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-winx64.zip"
DownloadAndInstall $internalUrl $packagex64 $installFolder
Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\$baseNameX64\include"
Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\$baseNameX64\lib"
echo "Set environment variables ..."
[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("MYSQL_LIB_x64", "$installFolder\lib", "Machine")
}
# Install x86 bit version
$architecture = "x86"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-win32.zip"
if( (is64bitWinHost) -eq 1 ) {
$installFolder = "C:\Utils\my_sql\my_sql$architecture"
}
else {
$installFolder = "C:\Utils\my_sql\my_sql"
}
DownloadAndInstall $internalUrl $packagex86 $installFolder
Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\$baseNameX86\include"
Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\$baseNameX86\lib"
echo "Set environment variables ..."
[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("MYSQL_LIB_x86", "$installFolder\lib", "Machine")
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "MySQL = $version" >> ~/versions.txt
echo "MySQL = $version" >> ~/versions.txt

View File

@@ -1,13 +1,11 @@
. "$PSScriptRoot\helpers.ps1"
$zip = Get-DownloadLocation "ninja-1.6.0-win-x86.zip"
$zip = "c:\users\qt\downloads\ninja-1.6.0-win-x86.zip"
Download https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-win.zip \\ci-files01-hki.intra.qt.io\provisioning\ninja\ninja-1.6.0-win-x86.zip $zip
Verify-Checksum $zip "E01093F6533818425F8EFB0843CED7DCAABEA3B2"
Extract-7Zip $zip C:\Utils\Ninja
Remove-Item -Path $zip
Extract-Zip $zip C:\Utils\Ninja
Remove-Item $zip
Add-Path "C:\Utils\Ninja"
Write-Output "Ninja = 1.6.0" >> ~/versions.txt

View File

@@ -36,37 +36,38 @@
# This script installs OpenSSL $version.
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
$version = "1_0_2o"
$version = "1_0_2j"
$packagex64 = "C:\Windows\Temp\Win64OpenSSL-$version.exe"
$packagex86 = "C:\Windows\Temp\Win32OpenSSL-$version.exe"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
# Install x64 bit version
$architecture = "x64"
$installFolder = "C:\openssl"
$externalUrl = "https://slproweb.com/download/Win64OpenSSL-$version.exe"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\openssl\Win64OpenSSL-$version.exe"
$sha1 = "86c71a28eda53fa406b957dd37491d616344b464"
$sha1 = "b1660dbdcc77e1b3d81d780c7167be1c75384d44"
Write-Host "Fetching from URL ..."
echo "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex64
Verify-Checksum $packagex64 $sha1
Write-Host "Installing $packagex64 ..."
Run-Executable "$packagex64" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
echo "Installing $packagex64 ..."
cmd /c "$packagex64 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
Write-Host "Remove downloaded $packagex64 ..."
Remove-Item -Path $packagex64
echo "Remove downloaded $packagex64 ..."
Remove-Item $packagex64
Set-EnvironmentVariable "OPENSSL_CONF_x64" "$installFolder\bin\openssl.cfg"
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64" "$installFolder\include"
Set-EnvironmentVariable "OPENSSL_LIB_x64" "$installFolder\lib"
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x64", "$installFolder\bin\openssl.cfg", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x64", "$installFolder\lib", "Machine")
}
# Install x86 bit version
$architecture = "x86"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
$installFolder = "C:\openssl$architecture"
} else {
$installFolder = "C:\openssl"
@@ -74,20 +75,21 @@ if (Is64BitWinHost) {
$externalUrl = "https://slproweb.com/download/Win32OpenSSL-$version.exe"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\openssl\Win32OpenSSL-$version.exe"
$sha1 = "bfc14fc03bd1d4dd03bf5459f62969d6b0ee96fe"
$sha1 = "29b31d20545214ab4e4c57afb20be2338c317cc3"
Write-Host "Fetching from URL ..."
echo "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex86
Verify-Checksum $packagex86 $sha1
Write-Host "Installing $packagex86 ..."
Run-Executable "$packagex86" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
echo "Installing $packagex86 ..."
cmd /c "$packagex86 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
Write-Host "Remove downloaded $packagex86 ..."
Remove-Item -Path $packagex86
echo "Remove downloaded $packagex86 ..."
Remove-Item $packagex86
Set-EnvironmentVariable "OPENSSL_CONF_x86" "$installFolder\bin\openssl.cfg"
Set-EnvironmentVariable "OPENSSL_INCLUDE_x86" "$installFolder\include"
Set-EnvironmentVariable "OPENSSL_LIB_x86" "$installFolder\lib"
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x86", "$installFolder\bin\openssl.cfg", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x86", "$installFolder\lib", "Machine")
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "OpenSSL = $version" >> ~/versions.txt
echo "OpenSSL = $version" >> ~/versions.txt

View File

@@ -1,6 +1,6 @@
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## 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.
@@ -31,19 +31,21 @@
##
#############################################################################
# Patch QNX SDK due to issues in the standard library.
# The patches are available here:
# http://www.qnx.com/download/feature.html?programid=27555
# A copy of the patch must be in the root of the Coin path in
# provisioning/qnx/patch-660-4367-RS6069_cpp-headers.zip
. "$PSScriptRoot\helpers.ps1"
Write-Host "MQTT: Downloading Paho test broker..."
$zip = Get-DownloadLocation "pahotest.zip"
$externalUrl = "http://ci-files01-hki.ci.local/input/mqtt_broker/paho.mqtt.testing-c342c09dadc7a664d0a8befad1ca031f5a0b0bc0.zip"
$internalUrl = "https://github.com/eclipse/paho.mqtt.testing/archive/c342c09dadc7a664d0a8befad1ca031f5a0b0bc0.zip"
$sha1 = "532fe145096cdd8d679f425cbfd883289150c968"
$zip = "c:\users\qt\downloads\patch-660-4367-RS6069_cpp-headers.zip"
$sha1 = "57A11FFE4434AD567B3C36F7B828DBB468A9E565"
$tempDir = "C:\temp\qnx_path"
Download $externalUrl $internalUrl $zip
Invoke-WebRequest -UseBasicParsing http://ci-files01-hki.intra.qt.io/input/qnx/patch-660-4367-RS6069_cpp-headers.zip -OutFile $zip
Verify-Checksum $zip $sha1
Write-Host "MQTT: Installing $zip..."
Extract-7Zip $zip C:\Utils
Remove-Item -Path $zip
Set-EnvironmentVariable "MQTT_TEST_BROKER_LOCATION" "C:\Utils\paho.mqtt.testing-c342c09dadc7a664d0a8befad1ca031f5a0b0bc0\interoperability\startbroker.py"
Extract-Zip $zip $tempDir
Copy-Item $tempDir\patches\660-4367\target\* C:\qnx660\target\ -recurse -force
Remove-Item $tempDir -recurse

View File

@@ -40,25 +40,26 @@ $version = "9.1.9-1"
$packagex64 = "C:\Windows\temp\postgresql-$version-windows-x64-binaries.zip"
$packagex86 = "C:\Windows\temp\postgresql-$version-windows-binaries.zip"
if (Is64BitWinHost) {
if( (is64bitWinHost) -eq 1 ) {
# Install x64 bit versions
$architecture = "x64"
$installFolder = "C:\Utils\postgresql"
$installFolder = "C:\Utils\postgresql\pgsql"
$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-x64-binaries.zip"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-x64-binaries.zip"
$sha1 = "4da0453cdfda335e064d4437cf5bb9d356054cfd"
Write-Host "Fetching from URL ..."
echo "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex64
Verify-Checksum $packagex64 $sha1
Write-Host "Installing $packagex64 ..."
Extract-7Zip $packagex64 $installFolder "pgsql\lib pgsql\bin pgsql\share pgsql\include"
echo "Installing $packagex64 ..."
Extract-Dev-Folders-From-Zip $packagex64 "pgsql" $installFolder
Write-Host "Remove downloaded $packagex64 ..."
Remove-Item -Path $packagex64
echo "Remove downloaded $packagex64 ..."
Remove-Item $packagex64
Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x64" "$installFolder\pgsql\include"
Set-EnvironmentVariable "POSTGRESQL_LIB_x64" "$installFolder\pgsql\lib"
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x64", "$installFolder\lib", "Machine")
}
# Install x86 bit version
@@ -66,24 +67,26 @@ $architecture = "x86"
$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-binaries.zip"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-binaries.zip"
$sha1 = "eb4f01845e1592800edbb74f60944b6c0aca51a9"
if (Is64BitWinHost) {
$installFolder = "C:\Utils\postgresql$architecture"
} else {
$installFolder = "C:\Utils\postgresql"
if( (is64bitWinHost) -eq 1 ) {
$installFolder = "C:\Utils\postgresql$architecture\pgsql"
}
else {
$installFolder = "C:\Utils\postgresql\pgsql"
}
Write-Host "Fetching from URL..."
echo "Fetching from URL..."
Download $externalUrl $internalUrl $packagex86
Verify-Checksum $packagex86 $sha1
Write-Host "Installing $packagex86 ..."
Extract-7Zip $packagex86 $installFolder "pgsql\lib pgsql\bin pgsql\share pgsql\include"
echo "Installing $packagex86 ..."
Extract-Dev-Folders-From-Zip $packagex86 "pgsql" $installFolder
Write-Host "Remove downloaded $packagex86 ..."
Remove-Item -Path $packagex86
echo "Remove downloaded $packagex86 ..."
Remove-Item $packagex86
Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x86" "$installFolder\pgsql\include"
Set-EnvironmentVariable "POSTGRESQL_LIB_x86" "$installFolder\pgsql\lib"
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x86", "$installFolder\lib", "Machine")
# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "PostgreSQL = $version" >> ~/versions.txt
echo "PostgreSQL = $version" >> ~/versions.txt

View File

@@ -30,20 +30,17 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script installs Python $version.
# Python is required for building Qt 5 from source.
param(
[Int32]$archVer=32,
[string]$targetDir="C:\Python27"
)
. "$PSScriptRoot\helpers.ps1"
$version = "2.7.13"
if ( $archVer -eq 64 ) {
if( (is64bitWinHost) -eq 1 ) {
$arch = ".amd64"
$sha1 = "d9113142bae8829365c595735e1ad1f9f5e2894c"
} else {
}
else {
$arch = ""
$sha1 = "7e3b54236dbdbea8fe2458db501176578a4d59c0"
}
@@ -51,36 +48,19 @@ $package = "C:\Windows\temp\python-$version.msi"
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version" + $arch + ".msi"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\python-$version" + $arch + ".msi"
Write-Host "Fetching from URL..."
echo "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
Write-Host "Installing $package..."
Run-Executable "msiexec" "/passive /i $package TARGETDIR=$targetDir ALLUSERS=1"
echo "Installing $package..."
cmd /c "msiexec /passive /i $package ALLUSERS=1"
# We need to change allowZip64 from 'False' to 'True' to be able to create ZIP files that use the ZIP64 extensions when the zipfile is larger than 2 GB
Write-Host "Changing allowZip64 value to 'True'..."
(Get-Content $targetDir\lib\zipfile.py) | ForEach-Object { $_ -replace "allowZip64=False", "allowZip64=True" } | Set-Content $targetDir\lib\zipfile.py
Write-Host "Remove $package..."
Remove-Item -Path $package
echo "Chancing allowZip64 value to 'True'..."
(Get-Content C:\Python27\lib\zipfile.py) | ForEach-Object { $_ -replace "allowZip64=False", "allowZip64=True" } | Set-Content C:\Python27\lib\zipfile.py
echo "Remove $package..."
del $package
# When installing 32 bit python to 64 bit host, we want to keep only default python in path
# For cross-compilation we export some helper env variable
if (($archVer -eq 32) -And (Is64BitWinHost)) {
Set-EnvironmentVariable "PYTHON2_32_PATH" "$targetDir"
Set-EnvironmentVariable "PIP2_32_PATH" "$targetDir\Scripts"
} else {
Add-Path "$targetDir;$targetDir\Scripts"
}
Run-Executable "$targetDir\python.exe" "-m ensurepip"
Add-Path "C:\Python27;C:\Python27\Scripts"
C:\Python27\python.exe -m ensurepip
# Install python virtual env
if (IsProxyEnabled) {
$proxy = Get-Proxy
Write-Host "Using proxy ($proxy) with pip"
$pip_args = "--proxy=$proxy"
}
Run-Executable "$targetDir\Scripts\pip.exe" "$pip_args install virtualenv"
Write-Output "Python-$archVer = $version" >> ~/versions.txt
C:\Python27\Scripts\pip.exe install virtualenv

View File

@@ -32,54 +32,39 @@
##
#############################################################################
param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# This script installs Python $version.
# Python3 is required for building some qt modules.
param(
[Int32]$archVer=32,
[string]$install_path = "C:\Python36"
)
. "$PSScriptRoot\helpers.ps1"
$version = "3.6.1"
$package = "C:\Windows\temp\python-$version.exe"
$install_path = "C:\Python36"
# check bit version
if ( $archVer -eq 64 ) {
Write-Host "Installing 64 bit Python"
echo "Running in 64 bit system"
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version-amd64.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/python-$version-amd64.exe"
$sha1 = "bf54252c4065b20f4a111cc39cf5215fb1edccff"
} else {
}
else {
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/python-$version.exe"
$sha1 = "76c50b747237a0974126dd8b32ea036dd77b2ad1"
}
Write-Host "Fetching from URL..."
echo "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
Write-Host "Installing $package..."
Run-Executable "$package" "/q TargetDir=$install_path"
Write-Host "Remove $package..."
Remove-Item -Path $package
# For cross-compilation we export some helper env variable
if (($archVer -eq 32) -And (Is64BitWinHost)) {
Set-EnvironmentVariable "PYTHON3_32_PATH" "$install_path"
Set-EnvironmentVariable "PIP3_32_PATH" "$install_path\Scripts"
} else {
Set-EnvironmentVariable "PYTHON3_PATH" "$install_path"
Set-EnvironmentVariable "PIP3_PATH" "$install_path\Scripts"
}
echo "Installing $package..."
cmd /c "$package /q TargetDir=$install_path"
echo "Remove $package..."
del $package
[Environment]::SetEnvironmentVariable("PYTHON3_PATH", "$install_path", [EnvironmentVariableTarget]::Machine)
[Environment]::SetEnvironmentVariable("PIP3_PATH", "$install_path\Scripts", [EnvironmentVariableTarget]::Machine)
# Install python virtual env
if (IsProxyEnabled) {
$proxy = Get-Proxy
Write-Host "Using proxy ($proxy) with pip"
$pip_args = "--proxy=$proxy"
}
Run-Executable "$install_path\Scripts\pip3.exe" "$pip_args install virtualenv"
Write-Output "Python3-$archVer = $version" >> ~/versions.txt
cmd /c "$install_path\Scripts\pip3.exe install virtualenv"

View File

@@ -1,61 +0,0 @@
#############################################################################
##
## 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$
##
#############################################################################
$n = Get-Content "$PSScriptRoot\..\shared\http_proxy.txt"
$n = $n.Split('=')
New-Variable -Name $n[0] -Value $n[1]
if ([string]::IsNullOrEmpty($proxy)) {
Write-Host "No proxy is defined."
} else {
Write-Host "Checking proxy @ $proxy"
$proxy = $proxy -replace '"', ""
$webclient = New-Object System.Net.WebClient
$proxy_obj = New-Object System.Net.WebProxy($proxy)
$webclient.proxy = $proxy_obj
try {
$webpage = $webclient.DownloadData("http://proxy.intra.qt.io")
} catch {
$ErrorMessage = $_.Exception.Message
$FailedItem = $_.Exception.ItemName
$iserror = $true
}
if ($iserror -eq $true) {
Write-Host "Testing download with proxy does not work: $ErrorMessage, $FailedItem. Not setting proxy."
} else {
Write-Host "Setting proxy to: $proxy"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "$proxy"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyOverride -Value 10.215
}
}

View File

@@ -1,6 +1,6 @@
#############################################################################
##
## Copyright (C) 2018 The Qt Company Ltd.
## 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.
@@ -33,117 +33,131 @@
. "$PSScriptRoot\helpers.ps1"
# This script will install squish package for Windows.
# Squish is need by Release Test Automation (RTA)
# NOTE! Make sure 64bit versions are always installed before 32bit,
# because they use same folder name before a rename
$version = "6.3.0"
# Qt branch without dot (*.*)
$qtBranch = "59x"
# So far Squish built with Qt5.9 works also with 5.10 and 5.11, but we have to be prepared that on some point
# the compatibility breaks, and we may need to have separate Squish packages for different Qt versions.
$targetDir = "C:\Utils\squish"
$squishUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin"
$squishBranchUrl = "$squishUrl\$qtBranch"
$testSuite = "suite_test_squish"
$testSuiteUrl = "\\ci-files01-hki.intra.qt.io\provisioning\squish\coin\$testSuite.7z"
# Squish license
$licensePackage = ".squish-3-license"
$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName
# This can be removed when using vanilla os
if((Test-Path -Path "$targetDir" )){
try {
echo "Renaming old Squish"
echo "Rename-Item -ErrorAction 'Stop' $targetDir $targetDir_deleted"
Rename-Item -ErrorAction 'Stop' "$targetDir" squish_deleted
} catch {}
}
Function DownloadAndInstallSquish {
Param (
[string]$version,
[string]$squishBranchUrl,
[string]$qtBranch,
[string]$bit,
[string]$targetDir,
[string]$squishPackage
)
$SquishUrl = $squishBranchUrl + "\squish-" + $version + "-qt" + $qtBranch + "-" + $bit + "-" + $squishPackage + ".exe"
$SquishInstaller = "$targetDir\$squishPackage.exe"
$SquishParameters = "unattended=1 targetdir=$targetDir\$squishPackage"
$Command = "$SquishInstaller $SquishParameters"
Write-Host "Fetching from URL $squishUrl"
echo "Fetching from URL ..."
Copy-Item "$SquishUrl" "$SquishInstaller"
Write-Host "Installing Squish"
Run-Executable "$SquishInstaller" "$SquishParameters"
Remove-Item -Path $SquishInstaller
if ("$bit" -eq "win64") {
if ($squishPackage.StartsWith("mingw")) {
$squishPackage64bit = "mingw_64"
} else {
$squishPackage64bit = "$squishPackage`_64"
}
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
TestSquish $squishPackage64bit
} else {
if ($squishPackage.StartsWith("mingw")) {
Rename-Item $targetDir\$squishPackage $targetDir\mingw
TestSquish mingw
} else {
TestSquish $squishPackage
}
}
echo "Installing Squish"
Execute-Command $Command
remove-item $SquishInstaller
}
Function DownloadSquishLicence {
Param (
[string]$squishUrl
[string]$licensePackage,
[string]$squishUrl,
[string]$targetDir
)
Write-Host "Installing Squish license to home directory"
# This can be removed when using vanilla os
if ($Env:SQUISH_LICENSEKEY_DIR)
{
echo "Removing SQUISH_LICENSEKEY_DIR env variable"
Remove-Item Env:\SQUISH_LICENSEKEY_DIR
}
echo "Installing Squish license to home directory"
Copy-Item $squishUrl\$licensePackage ~\$licensePackage
}
Function TestSquish {
Param (
[string]$squishPackage
)
Write-Host "Verifying Squish Installation"
if (cmd /c "$targetDir\$squishPackage\bin\squishrunner.exe --testsuite $targetDir\$testSuite" |Select-String -Pattern "Squish test run successfully") {
Write-Host "Squish installation tested successfully!"
} else {
Write-Host "Squish test failed! $squishPackage wasn't installed correctly."
[Environment]::Exit(1)
}
}
Write-Host "Creating $targetDir"
echo "Creating $targetDir"
New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir"
Write-Host "Download and install Test Suite for squish"
Copy-Item $testSuiteUrl $targetDir/$testSuite.7z
Extract-7Zip $targetDir/$testSuite.7z $targetDir
DownloadSquishLicence $licensePackage $squishUrl $targetDir
DownloadSquishLicence $squishUrl
if(($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 8.1 Enterprise"))
{
# Squish for Visual Studio 2015
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if ($OSVersion -eq "Windows 10 Enterprise") {
if (Is64BitWinHost) {
DownloadAndInstallSquish $version win64 msvc14
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage_64"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
DownloadAndInstallSquish $version win32 "mingw_gcc53_posix_dwarf"
DownloadAndInstallSquish $version win32 "msvc14"
} elseif ($OSVersion -eq "Windows 8.1 Enterprise") {
if (Is64BitWinHost) {
DownloadAndInstallSquish $version win64 "msvc12"
DownloadAndInstallSquish $version win64 "msvc14"
}
DownloadAndInstallSquish $version win32 "msvc14"
} elseif ($OSVersion -eq "Windows 7 Enterprise") {
if (Is64BitWinHost) {
DownloadAndInstallSquish $version win64 "msvc12"
DownloadAndInstallSquish $version win64 "msvc14"
}
DownloadAndInstallSquish $version win32 "mingw_gcc53_posix_dwarf"
DownloadAndInstallSquish $version win32 "msvc14"
echo "Installing $squishPackage"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
}
if($OSVersion -eq "Windows 8.1 Enterprise")
{
# Squish for Visual Studio 2013
$squishPackage64bit = "msvc12_64"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage_64"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
else
{
echo "Change secret file to normal one"
attrib -h C:\Users\qt\.squish-3-license
}
}
else
{
# Windows 7
# Squish for MinGW
$squishPackageMingw = "mingw_gcc53_posix_dwarf"
echo "Installing $squishPackageMingw"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackageMingw
mv $targetDir\$squishPackageMingw $targetDir\mingw
# Squish for Visual Studio 2015
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage64bit"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
}

View File

@@ -1,43 +0,0 @@
#############################################################################
##
## 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$
##
#############################################################################
Write-Host "Disabling proxy"
# A bit-mask is needed to disable "Automatically detect settings" from LAN
# settings that disturb and re-enable proxy even after disabling it.
$dcs = (Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections").DefaultConnectionSettings
$dcs[8] = $_ -band 0xF7
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections" -Name DefaultConnectionSettings -Value $dcs
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyOverride

View File

@@ -32,18 +32,21 @@
##
#############################################################################
param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# This script installs Visual C++ Redistributable for Visual Studio 2015
# This is a dependency of the current python3 version
if (Is64BitWinHost) {
Write-Host "Running in 64 bit system"
# check bit version
if ( $archVer -eq 64 ) {
echo "Running in 64 bit system"
$arch = "x64"
$externalUrl = "https://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x64.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/vc_redist.x64.exe"
$sha1 = "3155cb0f146b927fcc30647c1a904cd162548c8c"
} else {
}
else {
$arch = "x86"
$externalUrl = "https://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x86.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/vc_redist.x86.exe"
@@ -52,10 +55,10 @@ if (Is64BitWinHost) {
$package = "C:\Windows\temp\vc_redist.$arch.exe"
Write-Host "Fetching from URL..."
echo "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
Write-Host "Installing $package..."
Run-Executable $package "/q"
Write-Host "Remove $package..."
Remove-Item -Force -Path $package
echo "Installing $package..."
Start-Process -FilePath $package -ArgumentList "/q" -Wait
echo "Remove $package..."
del $package

View File

@@ -1,48 +0,0 @@
############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script will install Vulkan SDK
$version = "1.0.51.0"
$url_cache = "\\ci-files01-hki.ci.local\provisioning\windows\VulkanSDK-" +$version+ "-Installer.exe"
$vulkanPackage = "C:\Windows\Temp\vulkan-installer-$version.exe"
Copy-Item $url_cache $vulkanPackage
Run-Executable $vulkanPackage "/S"
Write-Host "Cleaning $vulkanPackage.."
Remove-Item -Recurse -Force -Path "$vulkanPackage"
Write-Output "Vulkan SDK = $version" >> ~\versions.txt

View File

@@ -1,14 +0,0 @@
# Turning on developer mode.
#
# In order to run auto tests for UWP, we have to enable developer mode on Windows 10 machines.
# https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development
. "$PSScriptRoot\helpers.ps1"
if (Is64BitWinHost) {
$bitness = "/reg:64"
} else {
$bitness = "/reg:32"
}
Run-Executable "reg.exe" "ADD `"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock`" /V AllowDevelopmentWithoutDevLicense /T REG_DWORD /D 1 /F $bitness"

View File

@@ -1,50 +0,0 @@
############################################################################
##
## 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$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script will install Windows 10 SDK
$url_cache = "\\ci-files01-hki.ci.local\provisioning\windows\winsdksetup.exe"
$url_official = "https://download.microsoft.com/download/8/C/3/8C37C5CE-C6B9-4CC8-8B5F-149A9C976035/windowssdk/winsdksetup.exe"
$package = "C:\Windows\Temp\winsdksetup.exe"
$sha1 = "db237323f1779fb143e7cdc558e4345e7004489e"
Copy-Item $url_cache $package
Verify-Checksum $package $sha1
Run-Executable $package "/features + /q"
Write-Host "Cleaning $package.."
Remove-Item -Recurse -Force -Path "$package"
Write-Output "Windows 10 SDK = 10.0.16229.91" >> ~\versions.txt

View File

@@ -1,12 +0,0 @@
. "$PSScriptRoot\helpers.ps1"
$zip = Get-DownloadLocation "winrtrunner.zip"
$url = "http://download.qt.io/development_releases/prebuilt/winrtrunner/winrtrunner_2018-05-24.zip"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\winrtrunner\winrtrunner_2018-05-24.zip"
Download $url $url_cache $zip
Verify-Checksum $zip "b83f2166b5799910a661d1db02771edf94880785"
Extract-7Zip $zip C:\Utils\winrtrunner
Remove-Item -Path $zip
Set-EnvironmentVariable "CI_WINRTRUNNER_PATH" "C:\Utils\winrtrunner"

View File

@@ -1,4 +1,3 @@
. "$PSScriptRoot\helpers.ps1"
# Disable the windows search indexing service
Run-Executable "sc.exe" "config WSearch start= disabled"
sc.exe config WSearch start= disabled

View File

@@ -35,10 +35,8 @@
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

View File

@@ -1,4 +1,3 @@
#!/usr/bin/env bash
# shellcheck source=../common/linux/disable-ntp_linux.sh
source "${BASH_SOURCE%/*}/../common/linux/disable-ntp_linux.sh"

View File

@@ -1,49 +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 provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# shellcheck source=../common/unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
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"
DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile"
sudo rpm -ivh "$targetFile"
rm "$targetFile"

View File

@@ -1,43 +1,11 @@
#!/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$
##
#############################################################################
set -ex
BASEDIR=$(dirname "$0")
# With RHEL 6.6 we are using different lib clang than others
VERSION=4.0
. $BASEDIR/../common/shared/sw_versions.txt
VERSION=$libclang_version
URL="https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_${VERSION//\./}-linux-Rhel6.6-gcc4.9-x86_64.7z"
SHA1="c7466109628418a6aa3db8b3f5825f847f1c4952"
"$BASEDIR/../common/unix/libclang.sh" "$URL" "$SHA1" "$VERSION"
$BASEDIR/../common/unix/libclang.sh "$URL" "$SHA1" "$VERSION"

View File

@@ -7,6 +7,11 @@ set -ex
sudo yum install -y python-devel python-virtualenv
# install the EPEL repository which provides python3
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
sudo rpm -Uvh epel-release-latest-6.noarch.rpm
sudo rm -f epel-release-latest-6.noarch.rpm
# install python3
sudo yum install -y python34-devel

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env bash
set -ex
"$(dirname "$0")/../common/linux/cmake_linux.sh"
$(dirname $0)/../common/linux/cmake_linux.sh

View File

@@ -1,37 +0,0 @@
#!/usr/bin/env 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.
##
## $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/mqtt_broker.sh
source "${BASH_SOURCE%/*}/../common/unix/mqtt_broker.sh"

View File

@@ -45,28 +45,27 @@ function Install7ZPackageFromURL {
expectedSha1=$2
targetDirectory=$3
targetFile=$(mktemp)
wget --tries=5 --waitretry=5 --output-document="$targetFile" "$url"
targetFile=`mktemp`
wget --tries=5 --waitretry=5 --output-document=$targetFile $url
echo "$expectedSha1 $targetFile" | sha1sum --check
sudo /usr/local/bin/7z x -yo"$targetDirectory" "$targetFile"
rm "$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://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64.7z"
Install7ZPackageFromURL "$baseBinaryPackageURL" "$sha1" "/usr/lib64"
Install7ZPackageFromURL $baseBinaryPackageURL $sha1 "/usr/lib64"
echo "Installing custom ICU devel packages on RHEL"
sha1Dev="82f8b216371b848b8d36ecec7fe7b6e9b0dba0df"
develPackageURL="http://master.qt.io/development_releases/prebuilt/icu/prebuilt/$icuVersion/icu-linux-g++-Rhel6.6-x64-devel.7z"
tempDir=$(mktemp -d)
# shellcheck disable=SC2064
tempDir=`mktemp -d`
trap "sudo rm -fr $tempDir" EXIT
Install7ZPackageFromURL "$develPackageURL" "$sha1Dev" "$tempDir"
sudo cp -a "$tempDir/lib"/* /usr/lib64
sudo cp -a "$tempDir"/* /usr/
Install7ZPackageFromURL $develPackageURL $sha1Dev $tempDir
sudo cp -a $tempDir/lib/* /usr/lib64
sudo cp -a $tempDir/* /usr/
sudo /sbin/ldconfig

View File

@@ -33,19 +33,32 @@
##
#############################################################################
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
# Patch QNX SDK due to issues in the standard library.
# The patches are available here:
# http://www.qnx.com/download/feature.html?programid=27555
# A copy of the patch must be in the root of the Coin path in
# provisioning/qnx/patch-660-4367-RS6069_cpp-headers.zip
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
set -ex
sha1="57a11ffe4434ad567b3c36f7b828dbb468a9e565"
function InstallZipPackageFromURL {
url=$1
expectedSha1=$2
targetDirectory=$3
targetFile=`mktemp`
wget --tries=5 --waitretry=5 --output-document=$targetFile $url
echo "$expectedSha1 $targetFile" | sha1sum --check
tempDir=`mktemp -d`
/usr/bin/unzip -o -d $tempDir $targetFile
trap "sudo rm -fr $targetFile $tempDir" EXIT
sudo cp -rafv $tempDir/patches/660-4367/target/* /opt/qnx660/target/
}
echo "Patching QNX"
baseBinaryPackageURL="http://ci-files01-hki.intra.qt.io/input/qnx/patch-660-4367-RS6069_cpp-headers.zip"
InstallZipPackageFromURL $baseBinaryPackageURL $sha1 "/opt/qnx660/target/"

View File

@@ -39,10 +39,9 @@
set -ex
# shellcheck disable=SC2129
echo "*********************************************" >> ~/versions.txt
echo "***** All installed RPM packages *****" >> ~/versions.txt
rpm -q -a | sort >> ~/versions.txt
echo "*********************************************" >> ~/versions.txt
"$(dirname "$0")/../common/linux/version.sh"
$(dirname $0)/../common/linux/version.sh

View File

@@ -36,8 +36,8 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/network_test_server_ip.txt
source "$BASEDIR/../common/shared/network_test_server_ip.txt"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
source $BASEDIR/../common/shared/network_test_server_ip.txt
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
@@ -50,3 +50,7 @@ export DISPLAY=:0
gsettings set org.gnome.desktop.screensaver lock-enabled false
# disable blank screen power saving
gsettings set org.gnome.desktop.session idle-delay 0
if [ "$http_proxy" != "" ]; then
echo "proxy=$proxy" | sudo tee -a /etc/yum.conf
fi

View File

@@ -35,42 +35,4 @@
set -ex
echo "set WritePreparedUpdates=false" | sudo tee -a /etc/PackageKit/PackageKit.conf
sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-7-workstation-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-7-workstation-optional-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-optional-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation - Optional (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-workstation-rhscl-7-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-workstation-rhscl-7-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Workstation
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
sudo yum clean all
# As well as this fetching the repository data, we also get a printout of the used repos
sudo yum repolist
sudo subscription-manager repos --enable rhel-workstation-rhscl-7-rpms

View File

@@ -35,6 +35,7 @@
set -ex
sudo yum-config-manager --enable rhel-server-rhscl7-rpms
sudo yum -y install devtoolset-4
echo "source /opt/rh/devtoolset-4/enable" >> ~/.bashrc

View File

@@ -48,6 +48,7 @@ installPackages+=(mesa-libGL-devel)
installPackages+=(libxkbfile-devel)
# Xinput2
installPackages+=(libXi-devel)
installPackages+=(python-devel)
installPackages+=(mysql-server)
installPackages+=(mysql)
installPackages+=(mysql-devel)
@@ -63,10 +64,8 @@ installPackages+=(gtk3-devel)
installPackages+=(libusbx-devel)
# speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux
installPackages+=(speech-dispatcher-devel)
# Python 2 devel and pip. python-pip requires the EPEL repository to be added
installPackages+=(python-devel python-pip)
# Python 3 with python-devel, pip and virtualenv
installPackages+=(rh-python36)
# Python
installPackages+=(python-devel python-virtualenv)
# WebEngine
installPackages+=(bison)
installPackages+=(flex)
@@ -84,23 +83,6 @@ installPackages+=(perl-Digest-SHA)
installPackages+=(glibc.i686)
# Enable Qt Bluetooth
installPackages+=(bluez-libs-devel)
# QtWebKit
installPackages+=(libxml2-devel)
installPackages+=(libxslt-devel)
# For building Wayland from source
installPackages+=(libffi-devel)
# QtWayland
installPackages+=(mesa-libwayland-egl)
installPackages+=(mesa-libwayland-egl-devel)
installPackages+=(libwayland-client)
installPackages+=(libwayland-cursor)
installPackages+=(libwayland-server)
sudo yum -y update
sudo yum -y install "${installPackages[@]}"
sudo ln -s /opt/rh/rh-python36/root/usr/bin/python3 /usr/local/bin/python3
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

View File

@@ -35,9 +35,21 @@
set -ex
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
name="p7zip"
version="7-11"
package="epel-release-$version.noarch.rpm"
primaryUrl="https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/$package"
cacheUrl="http://ci-files01-hki.intra.qt.io/input/rhel7/$package"
sha1="5512b80e5b71f2370d8419fa16a0bc14c5edf854"
targetFile="/tmp/$package"
DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile"
sudo rpm -ivh "$targetFile"
sudo yum -y install "$name"
sudo rm "$targetFile"
# Link 7za to 7z so we can use existing installation scripts
sudo ln -s /usr/bin/7za /usr/bin/7z

View File

@@ -2,10 +2,9 @@
set -ex
BASEDIR=$(dirname "$0")
# shellcheck source=../common/shared/sw_versions.txt
. "$BASEDIR/../common/shared/sw_versions.txt"
. $BASEDIR/../common/shared/sw_versions.txt
VERSION=$libclang_version
URL="https://download.qt.io/development_releases/prebuilt/libclang/libclang-release_${VERSION//\./}-linux-Rhel7.2-gcc5.3-x86_64.7z"
SHA1="71194c4d6065a62ac1a891123df79fd9da311bf0"
SHA1="bbdbbc0296f42310077539b7247d285386119ef4"
"$BASEDIR/../common/unix/libclang.sh" "$URL" "$SHA1" "$VERSION"
$BASEDIR/../common/unix/libclang.sh "$URL" "$SHA1" "$VERSION"

Some files were not shown because too many files have changed in this diff Show More