From c654e63c87d83577116431e165115e0c6ceb723d Mon Sep 17 00:00:00 2001 From: Heikki Halmet Date: Fri, 7 Sep 2018 09:17:02 +0300 Subject: Update Windows 10, MSVC 2015 and MSVC 2017 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Windows 10 updated to build 1809 msvc2015 update 3 14.0.25431.01 msvc2015 update 3 (KB3165756) msvc2017 5.18.2 4.7.03056 ms-zune is no longer available in the latest Windows 10 version dotnet and msvc 2015 update patch installation moved to pre-provisioning. Msvc 2015 update patch installation seems to be flaky with this windows version. Task-number: QTBUG-68190 Task-number: QTQAINFRA-2255 Task-number: QTBUG-71125 Change-Id: I87defffa488cb75f7de0909020073b35476bea80 Reviewed-by: Tony Sarajärvi --- .../06-msvc_2017_build_tools.ps1 | 2 +- .../qtci-windows-10-x86/msvc2015_update.ps1 | 2 +- .../qtci-windows-10-x86/msvc2017.ps1 | 2 +- .../01-enable-dotnet-framework.ps1 | 22 +++++++ .../06-msvc_2017_build_tools.ps1 | 48 ---------------- .../qtci-windows-10-x86_64/msvc2015_update.ps1 | 39 ++++++------- .../qtci-windows-10-x86_64/msvc2017.ps1 | 64 ++++++++++++++++----- .../msvc_2015_update3_patch.ps1 | 67 ++++++++++++++++++++++ 8 files changed, 159 insertions(+), 87 deletions(-) create mode 100644 coin/pre-provisioning/qtci-windows-10-x86_64/01-enable-dotnet-framework.ps1 delete mode 100644 coin/pre-provisioning/qtci-windows-10-x86_64/06-msvc_2017_build_tools.ps1 create mode 100644 coin/pre-provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1 (limited to 'coin/pre-provisioning') diff --git a/coin/pre-provisioning/qtci-windows-10-x86/06-msvc_2017_build_tools.ps1 b/coin/pre-provisioning/qtci-windows-10-x86/06-msvc_2017_build_tools.ps1 index 0c00ba71..2bb92c22 100644 --- a/coin/pre-provisioning/qtci-windows-10-x86/06-msvc_2017_build_tools.ps1 +++ b/coin/pre-provisioning/qtci-windows-10-x86/06-msvc_2017_build_tools.ps1 @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2017 The Qt Company Ltd. +## Copyright (C) 2018 The Qt Company Ltd. ## Contact: http://www.qt.io/licensing/ ## ## This file is part of the provisioning scripts of the Qt Toolkit. diff --git a/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1 b/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1 index 2ad479c8..35f8dc3f 100644 --- a/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1 +++ b/coin/pre-provisioning/qtci-windows-10-x86/msvc2015_update.ps1 @@ -1,6 +1,6 @@ ############################################################################# ## -## Copyright (C) 2017 The Qt Company Ltd. +## Copyright (C) 2018 The Qt Company Ltd. ## Contact: http://www.qt.io/licensing/ ## ## This file is part of the provisioning scripts of the Qt Toolkit. diff --git a/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1 b/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1 index cf00ee88..052ec9c6 100644 --- a/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1 +++ b/coin/pre-provisioning/qtci-windows-10-x86/msvc2017.ps1 @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2017 The Qt Company Ltd. +## Copyright (C) 2018 The Qt Company Ltd. ## Contact: http://www.qt.io/licensing/ ## ## This file is part of the provisioning scripts of the Qt Toolkit. diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/01-enable-dotnet-framework.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/01-enable-dotnet-framework.ps1 new file mode 100644 index 00000000..e7f4c248 --- /dev/null +++ b/coin/pre-provisioning/qtci-windows-10-x86_64/01-enable-dotnet-framework.ps1 @@ -0,0 +1,22 @@ +# The DirectX SDK installer requires .Net framework 3.5 which isn't installed +# by default + +$netFeature = "NetFx3" +try { + $netFeatureState = (Get-WindowsOptionalFeature -Online -FeatureName "$netFeature").State + if ($netFeatureState -eq "Enabled") { + Write-Host ".Net Framework is already installed" + exit 0 + } +} catch { + Write-Host "Could not find .Net Framework Windows feature." + exit 1 +} + +Write-Host "Installing .Net Framework client" +try { + Enable-WindowsOptionalFeature -Online -FeatureName "$netFeature" -All -NoRestart +} catch { + Write-Host "Could not install .Net framework" + exit 1 +} diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/06-msvc_2017_build_tools.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/06-msvc_2017_build_tools.ps1 deleted file mode 100644 index 0c00ba71..00000000 --- a/coin/pre-provisioning/qtci-windows-10-x86_64/06-msvc_2017_build_tools.ps1 +++ /dev/null @@ -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\..\common\helpers.ps1" - -# This script will install Visual Studio 2017 Build Tools -# https://www.visualstudio.com/downloads/#build-tools-for-visual-studio-2017 - -$version = "2017_version_15.0" -$url_cache = "http://ci-files01-hki.intra.qt.io/input/windows/mu_build_tools_for_visual_studio_" + $version + "_x86_x64_10254482.exe" -$sha1 = "a31e099e5114fef80a21654689e6864afc544a16" -$msvcPackage = "C:\Windows\Temp\$version.exe" - -Download $url_cache $url_cache $msvcPackage -Verify-Checksum $msvcPackage $sha1 -cmd /c "$msvcPackage --all --passive --wait" -echo "Cleaning $msvcPackage.." -Remove-Item -Recurse -Force "$msvcPackage" -echo "Visual Studio Build Tools = $version" >> ~\versions.txt diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1 index 2ad479c8..00f8af72 100644 --- a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1 +++ b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2015_update.ps1 @@ -1,6 +1,6 @@ ############################################################################# ## -## Copyright (C) 2017 The Qt Company Ltd. +## Copyright (C) 2018 The Qt Company Ltd. ## Contact: http://www.qt.io/licensing/ ## ## This file is part of the provisioning scripts of the Qt Toolkit. @@ -30,29 +30,22 @@ ## $QT_END_LICENSE$ ## ############################################################################# -. "$PSScriptRoot\..\..\provisioning\common\helpers.ps1" -# Install Visual Studio $version with $update_version -# Original download page: https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs -$version = "2015" -$update_version = "3" +# Visual Studio $version was installed manually using $installer. +$version = "2015 update 3" +$version_number ="14.0.25431.01" +$installer = "http://ci-files01-hki.intra.qt.io/input/windows/en_visual_studio_professional_2015_with_update_3_x86_x64_web_installer_8922978" -# Only way to install specific Visual studio release is to use feed.xml. -# Visual Studio $version setup will use the feed.xml that was available when $update_version released -> 'https://msdn.microsoft.com/en-us/library/mt653628.aspx' -# These parameters will install Visual Studio Enterprise Update $update_version (the original Update $update_version without any further Update $update_version-era updates) -$parameters = "/OverrideFeedURI http://download.microsoft.com/download/6/B/B/6BBD3561-D764-4F39-AB8E-05356A122545/20160628.2/enu/feed.xml" +# default plus following components were selected: +# * Visual C++ +# * Universal Windows App Development Tools +# - Tools (1.4.1) and Windows SDK (10.0.14393) +# - Windows 10 SDK (10.0.10586) +# - Windows 10 SDK (10.0.10240) +# * Common Tools +# -Visual Studio Extensibility Tools Update 3 -$msvc_web_installer = "vs" + $version + "_" + $update_version -$package = "C:\Windows\temp\$msvc_web_installer.exe" -$url_cache = "http://ci-files01-hki.intra.qt.io/input/windows/$msvc_web_installer.exe" -$url_official = "https://go.microsoft.com/fwlink/?LinkId=691129" -$sha1 = "68abf90424aff604a04d6c61fb52adcd2cab2266" +# NOTE! Windows SDK 10.0.14393 installation failed through visual studio installer so it was installed using $sdk_installer +$sdk_installer = "http://ci-files01-hki.intra.qt.io/input/windows/sdksetup.exe" -echo "Fetching Visual Studio $version update $update_version..." -Download $url_official $url_cache $package -Verify-Checksum $package $sha1 -echo "Installing Visual studio $version update $update_version..." -cmd /c "$package $parameters /norestart /Quiet" -remove-item $package - -echo "Visual Studio = $version update $update_version" >> ~\versions.txt +echo "Visual Studio = $version version $version_number" >> ~\versions.txt diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1 index cf00ee88..cc0dbd85 100644 --- a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1 +++ b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc2017.ps1 @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2017 The Qt Company Ltd. +## Copyright (C) 2018 The Qt Company Ltd. ## Contact: http://www.qt.io/licensing/ ## ## This file is part of the provisioning scripts of the Qt Toolkit. @@ -31,19 +31,57 @@ ## ############################################################################# -. "$PSScriptRoot\..\common\helpers.ps1" - -# This script will install Visual Studio 2017 +# Visual Studio $version version $version_number was installed manually using $installer. $version = "2017" -$url_cache = "http://ci-files01-hki.intra.qt.io/input/windows/mu_visual_studio_professional_" + $version + "_x86_x64_10049787.exe" -$sha1 = "8d678d27735018a99dc22ddb5412e4e6868991ae" -$msvcPackage = "C:\Windows\Temp\$version.exe" +$version_number = "15.8.5" +$installer = "http://ci-files01-hki.ci.local/input/windows/vs_professional__1312218103.1526017942.exe" +# Following components were selected from installer: +# Microsoft.Net.Component.4.5.TargetingPack (.NET Framework 4.5 targeting pack) +# Microsoft.Net.Component.4.6.1.SDK (.NET Framework 4.6.1 SDK) +# Microsoft.Component.NetFX.Native (.NET Native) +# Microsoft.VisualStudio.Component.PortableLibrary (.NET Portable Library targeting pack) +# Microsoft.VisualStudio.Component.SQL.CLR (CLR data types for SQL Server) +# Microsoft.VisualStudio.Component.VisualStudioData (Data sources and service references) +# Microsoft.Component.ClickOnce (ClickOnce Publishing) +# Microsoft.VisualStudio.Component.AppInsights.Tools (Developer Analytics tools) +# Microsoft.VisualStudio.Component.NuGet (NuGet package manager) +# Microsoft.VisualStudio.Component.Static.Analysis.Tools (Static analysis tools) +# Microsoft.VisualStudio.Component.TextTemplating (Text Template Transformation) +# Microsoft.VisualStudio.Component.Roslyn.Compiler (C# and Visual Basic Roslyn compilers) +# Microsoft.Component.MSBuild (MSBuild) +# Microsoft.VisualStudio.Component.VC.Tools.x86.x64 (VC++ 2017 version 15.8 v14.15 latest v141 tools) +# Microsoft.VisualStudio.Component.VC.Redist.14.Latest (Visual C++ 2017 Redistributable Update) +# Microsoft.VisualStudio.Component.VC.Tools.ARM (Visual C++ compilers and libraries for ARM) +# Microsoft.VisualStudio.Component.VC.Tools.ARM64 (Visual C++ compilers and libraries for ARM64) +# Microsoft.VisualStudio.Component.VC.CMake.Project (Visual C++ tools for CMake) +# Microsoft.VisualStudio.Component.DiagnosticTools (.NET profiling tools) +# Microsoft.VisualStudio.Component.VC.DiagnosticTools (C++ profiling tools) +# Microsoft.VisualStudio.Component.JavaScript.Diagnostics (JavaScript diagnostics) +# Microsoft.VisualStudio.Component.Debugger.JustInTime (Just-In-Time debugger) +# Microsoft.VisualStudio.Component.Roslyn.LanguageServices (C# and Visual Basic) +# Microsoft.VisualStudio.Component.JavaScript.TypeScript (JavaScript and TypeScript language support) +# Component.Microsoft.VisualStudio.RazorExtension (Razor Language Services) +# Component.Linux.CMake (Visual C++ tools for CMake and Linux) +# Microsoft.VisualStudio.Component.VC.CoreIde (Visual Studio C++ core features) +# Microsoft.VisualStudio.Component.Graphics.Tools (Graphics debugger and GPU profiler for DirectX) +# Microsoft.VisualStudio.Component.Graphics (Image and 3D model editors) +# Microsoft.VisualStudio.Component.Graphics.Win81 (Graphics Tools Windows 8.1 SDK) +# Microsoft.VisualStudio.Component.TypeScript.2.3 (TypeScript 2.3 SDK) +# Microsoft.VisualStudio.Component.TypeScript.3.0 (TypeScript 3.0 SDK) +# Microsoft.VisualStudio.Component.VC.ATL (Visual C++ ATL for x86 and x64) +# Microsoft.VisualStudio.Component.Windows10SDK.10240 (Windows 10 SDK (10.0.10240.0)) +# Microsoft.VisualStudio.Component.Windows10SDK.10586 (Windows 10 SDK (10.0.10586.0)) +# Microsoft.VisualStudio.Component.Windows10SDK.14393 (Windows 10 SDK (10.0.14393.0)) +# Microsoft.VisualStudio.Component.Windows10SDK.15063.Desktop (Windows 10 SDK (10.0.15063.0) for Desktop C++ [x86 and x64]) +# Microsoft.VisualStudio.Component.Windows10SDK.15063.UWP (Windows 10 SDK (10.0.15063.0) for UWP: C#, VB, JS) +# Microsoft.VisualStudio.Component.Windows10SDK.15063.UWP.Native (Windows 10 SDK (10.0.15063.0) for UWP: C++) +# Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop (Windows 10 SDK (10.0.16299.0) for Desktop C++ [x86 and x64]) +# Microsoft.VisualStudio.Component.Windows10SDK.16299.UWP (Windows 10 SDK (10.0.16299.0) for UWP: C#, VB, JS) +# Microsoft.VisualStudio.Component.Windows10SDK.16299.UWP.Native (Windows 10 SDK (10.0.16299.0) for UWP: C++) +# Microsoft.VisualStudio.Component.Windows10SDK.16299.Desktop.arm (Windows 10 SDK (10.0.16299.0) for Desktop C++ [ARM and ARM64]) +# Microsoft.VisualStudio.Component.Windows10SDK.17134 (Windows 10 SDK (10.0.17134.0)) +# Microsoft.VisualStudio.Component.Windows10SDK.17763 (Windows 10 SDK (10.0.17763.0)) -Download $url_cache $url_cache $msvcPackage -Verify-Checksum $msvcPackage $sha1 -cmd /c "$msvcPackage --all --norestart --quiet --wait --add Microsoft.VisualStudio.Component.VC.Tools.ARM" -echo "Cleaning $msvcPackage.." -Remove-Item -Recurse -Force "$msvcPackage" -echo "Visual Studio = $version" >> ~\versions.txt +echo "Visual Studio = $version version version_number" >> ~\versions.txt diff --git a/coin/pre-provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1 b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1 new file mode 100644 index 00000000..bfbb397a --- /dev/null +++ b/coin/pre-provisioning/qtci-windows-10-x86_64/msvc_2015_update3_patch.ps1 @@ -0,0 +1,67 @@ +############################################################################# +## +## 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 Cumulative Servicing Release Visual Studio 2015 update 3 +# 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" +$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" + +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" +} else { + Write-Host "Fetching patch for Visual Studio $version..." + Download $url_official $url_cache $package + $executable = $package + # Remove the downloaded executable + $toRemove = $executable +} + +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 -- cgit v1.2.3