This change adds a hash for the VS 2017 RTM toolchain download in depot
tools. This allows Googlers to use VS 2017 to build Chrome without
needing to install it, and lets build machines use VS 2017 (although
they continue to default to VS 2015.

The package was created on a Windows Server 2016 VM. One would hope that
the OS used wouldn't matter, but ...? Previous installs of VS 2015 or
the platform SDK are likely to leave files lying around that will alter
the hash so a clean VM is needed. Then follow these steps:

Install VS 2017 Professional RTM, selecting the "Desktop development with
C++" component, and add the MFC and ATL support option.

After this is done you need to install the debugger packages from the
Windows 10 SDK. Go to:
https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk
and be sure to check the Debugging Tools option. Once the installers
have downloaded you can find the x86 and x64 debugger installers in the
download directory in "Windows Kits\10\StandaloneSDK\Installers" - run
them both.

Then run the packaging script, like this:
> python depot_tools\win_toolchain\package_from_installed.py 2017

Note that this packages the 10.0.14393.0 SDK, but this is not the same
10.0.14393.0 SDK that was used in the previous VS 2015 packaging. The
SDK was updated without changing the version number. Most of the changes
should not matter, but be aware.

To use this package set these two environment variables:
    DEPOT_TOOLS_WIN_TOOLCHAIN=1
    GYP_MSVS_VERSION=2017

Then run "gclient runhooks" to download the new package. The .ninja
files will not automatically update so you may need to run gn gen on
your output directories.

The 'chrome' target should build cleanly without warnings. However
VS 2017 is not yet a supported toolchain so warnings may appear. You
may want to use the treat_warnings_as_errors = false build flag.

To run VS 2017 tests on the buildbots you need to change the
CURRENT_DEFAULT_TOOLCHAIN_VERSION in build\vs_toolchain.py to '2017'
and you need to add a landmine to force a rebuild.

The build process was tested on two separate VMs to ensure that the
results were consistent. They were.

BUG=683729

Review-Url: https://codereview.chromium.org/2777643002
Cr-Original-Commit-Position: refs/heads/master@{#459593}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 560bb951d9a6625633fcad4e4168fb7054bb4dfa
This commit is contained in:
brucedawson 2017-03-24 16:10:01 -07:00 коммит произвёл Commit bot
Родитель 3fc61c9b14
Коммит e176b47d66
1 изменённых файлов: 3 добавлений и 0 удалений

Просмотреть файл

@ -352,6 +352,9 @@ def _GetDesiredVsToolchainHashes():
if env_version == '2015':
# Update 3 final with patches with 10.0.14393.0 SDK.
return ['d3cb0e37bdd120ad0ac4650b674b09e81be45616']
if env_version == '2017':
# VS 2017 RTM with 10.0.14393.0 SDK.
return ['716b3fda0f857c3dc24d795d1a4d74e1e740face']
raise Exception('Unsupported VS version %s' % env_version)