Граф коммитов

134 Коммитов

Автор SHA1 Сообщение Дата
Bruce Dawson 258f393554 Opt in to the Windows "segment heap"
Adding a SegmentHeap entry to the chrome.exe manifest will tell
recent-enough versions of Windows (20-04 and beyond) to opt chrome.exe
into using the segment heap instead of the legacy heap. Details are in
the bug but it appears that the default Windows heap is tuned for server
workloads where throughput is what matters most, and Chromium
(especially due to its multi-process architecture) also has to care
about memory footprint. Experiments with per-machine opting-in to the
segment heap for chrome.exe suggests that this could save hundreds of MB
in the browser and Network Service utility processes, among others, on
some machines. Actual results will vary widely, with the greatest
savings coming on many-core machines.

In order to avoid build warnings this change depends on switching to
building with the Windows 10.0.19041.0 (20-04) SDK.

The initial investigation of this is in crbug.com/982452.

Bug: 1014701
Change-Id: I217d045ee0d365ac57f7a73b0f5ed456469214c6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2163163
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Ken Rockot <rockot@google.com>
Cr-Commit-Position: refs/heads/master@{#782134}
GitOrigin-RevId: 1a9f684dad2f2620c5b88b3cea41c87143cd3c28
2020-06-25 12:58:50 -07:00
Bruce Dawson 414118826c Reland "Reland "New toolchain for Windows 10 19041 SDK""
This reverts commit ed0697fcf0f958c1bc6643d911d99b1d9b52ed9b.

Reason for revert: crrev.com/c/2255126 fixes the midl.py failures
on Windows 7 class OSes and crrev.com/c/2260933 rolls in a native_client
change that stops preprocessing .S files with cl.exe. With those
changes cl.exe is not used in the build on Windows 7 anymore and that
should let this toolchain land.

This change now locks the SDK version to 10.0.19041.0 for users who
don't use a packaged toolchain which ensures consistency and should
simplify future toolchain upgrades. This change was tested with the
lock as shown and with a lock to a previous SDK version.

Original change's description:
> Revert "Reland "New toolchain for Windows 10 19041 SDK""
>
> This reverts commit 424526a023397ebbe6555ea27b82f66c137e8022.
>
> Reason for revert: win64-chrome build succeeded (progress) but
> win32-chrome builder failed with a previously unseen error, shown
> here:
>
> [170/58214] ACTION //remoting/host/win:remoting_lib_idl_idl_action(//build/toolchain/win:win_clang_x86)
> FAILED: gen/remoting/host/win/chromoting_lib.h gen/remoting/host/win/chromoting_lib.dlldata.c gen/remoting/host/win/chromoting_lib_i.c gen/remoting/host/win/chromoting_lib_p.c gen/remoting/host/win/chromoting_lib.tlb
> c:\b\s\w\ir\cipd_bin_packages\cpython\bin\python.exe ../../build/toolchain/win/midl.py environment.x86 c:/b/s/w/ir/cache/builder/src/third_party/win_build_output/midl/remoting/host/win gen/remoting/host/win 7219b935-4873-533b-9ce1-20c9e9b12def chromoting_lib.tlb chromoting_lib.h chromoting_lib.dlldata.c chromoting_lib_i.c chromoting_lib_p.c gen/remoting/host/win/chromoting_lib.idl /char signed /env win32 /Oicf
> cl : Command line error D8027 : cannot execute 'c:\b\s\w\ir\cache\builder\src\third_party\depot_tools\win_toolchain\vs_files\a687d8e2e4114d9015eb550e1b156af21381faac\win_sdk\bin\..\..\VC\Tools\MSVC\14.26.28801\bin\HostX64\x86\c1.dll'
> midl : command line error MIDL1003 : error returned by the C preprocessor (2)
>
> Original change's description:
> > Reland "New toolchain for Windows 10 19041 SDK"
> >
> > This is a reland of 4a4f53a7f22f9058b2f171fc46bc5657bbe83e45
> >
> > The original patch would fail to build on the mksnapshot step on
> > Windows 7 (and server equivalents). This was due to two APISet DLLs
> > that are required for the new dbghelp.dll. This change copies the two
> > of them during gn gen. In order to have them as part of the isolates
> > for cdb and in order to avoid dangerous ambiguity they are now
> > required, which means that when this change lands the new SDK will be
> > required. This is slightly disruptive for developers who aren't using
> > our toolchain, but it seems unavoidable.
> >
> > Developers who don't have the latest SDK installed will hit this error
> > message during gn gen:
> >
> >  Exception: api-ms-win-downlevel-kernel32-l2-1-0.dll not found in "..."
> >  You must install the "Debugging Tools for Windows" feature from the
> >  Windows 10 SDK, the 10.0.19041.0 version.
> >
> > Original change's description:
> > > New toolchain for Windows 10 19041 SDK
> > >
> > > This change updates the toolchain package used to build Chromium with
> > > the 10.0.19041.0 (2020-04) SDK and VS 16.6.1. The d3dcompiler_47.dll
> > > DLLs for x86 and x64 were swapped out for the 10.0.17134 versions (as
> > > usual).
> > >
> > > The Debuggers directory was not swapped out this time because the
> > > problem with loading dbghelp.dll on Windows 7
> > > (https://crbug.com/1021650) has been resolved.
> > >
> > > The output for the cdb copy step was updated because one additional UCRT
> > > DLL is now copied.
> > >
> > > Packaging was done on a Windows Server 2019 VM, cleanly created for this
> > > purpose.
> > >
> > > The package was created by downloading the VS Professional 2019
> > > installer from https://visualstudio.microsoft.com/downloads/
> > > (free trial, not preview) and then running the installer like this:
> > >
> > > $ PATH_TO_INSTALLER.EXE ^
> > >     --add Microsoft.VisualStudio.Workload.NativeDesktop ^
> > >     --add Microsoft.VisualStudio.Component.VC.ATLMFC ^
> > >     --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 ^
> > >     --add Microsoft.VisualStudio.Component.VC.MFC.ARM64 ^
> > >     --includeRecommended --passive
> > >
> > > Then the latest Windows 10 SDK was downloaded and installed from
> > > https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/
> > >
> > > Then the packaging script was run like this:
> > >
> > >   python3 depot_tools\win_toolchain\package_from_installed.py 2019 -w 10.0.19041.0
> > >
> > > Since the new d3dcompiler_47.dll uses the UCRT and we want to avoid
> > > shipping that (https://crbug.com/920704) the final packaging step was to
> > > unzip the package, copy over the two copies of that DLL from the
> > > previous toolchain's win_sdk\Redist, and then repackage the toolchain
> > > with:
> > >   > python3 package_from_installed.py --repackage=<full-path-to-toolchain-dir>
> > >
> > > UWP and ARM64 support and Python 3 compatibility were previously added
> > > to package_from_installed.py.
> > >
> > > Future changes will require the new SDK, but for now the previous SDK
> > > can also be used to build Chromium.
> > >
> > > The failures on the win*msvc* bots are unrelated. This was proven by
> > > creating crrev.com/c/2245914 which is a NOP toolchain test. The existing
> > > toolchain was repackaged with a single text file added and that caused
> > > identical failures.
> > >
> > > Bug: 920704, 1014701, 1021650, 1089996
> > > Change-Id: Ie496354582458aa8c1292ed4ef63d949ee2eb15d
> > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2225224
> > > Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> > > Reviewed-by: Henrik Andreasson <henrika@chromium.org>
> > > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > > Reviewed-by: Nico Weber <thakis@chromium.org>
> > > Cr-Commit-Position: refs/heads/master@{#778924}
> >
> > Bug: 920704, 1014701, 1021650, 1089996, 1095767
> > Change-Id: I75e7653d57964e2929106e41b3f50594d3969e5f
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2249394
> > Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> > Reviewed-by: Jesse McKenna <jessemckenna@google.com>
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#780431}
>
> TBR=dcheng@chromium.org,henrika@webrtc.org,thakis@chromium.org,brucedawson@chromium.org,henrika@chromium.org,jessemckenna@google.com,jmadill@chromium.org
>
> Change-Id: If00e3865e66d9071189b2aca28f7541ecbdc6486
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: 920704, 1014701, 1021650, 1089996, 1095767
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2255558
> Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#780467}

TBR=dcheng@chromium.org,henrika@webrtc.org,thakis@chromium.org,brucedawson@chromium.org,henrika@chromium.org,jessemckenna@google.com,jmadill@chromium.org

Bug: 920704, 1014701, 1021650, 1089996, 1095767
Change-Id: I68e4c246ee903ba48d59b3bdea913ea3975c49d6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2255527
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Henrik Andreasson <henrika@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#781663}
GitOrigin-RevId: a90d6d8f4ed7c9302f9329d205d0dc585997ab8f
2020-06-25 12:56:46 -07:00
Bruce Dawson 99fe6c973d Revert "Reland "New toolchain for Windows 10 19041 SDK""
This reverts commit 424526a023397ebbe6555ea27b82f66c137e8022.

Reason for revert: win64-chrome build succeeded (progress) but
win32-chrome builder failed with a previously unseen error, shown
here:

[170/58214] ACTION //remoting/host/win:remoting_lib_idl_idl_action(//build/toolchain/win:win_clang_x86)
FAILED: gen/remoting/host/win/chromoting_lib.h gen/remoting/host/win/chromoting_lib.dlldata.c gen/remoting/host/win/chromoting_lib_i.c gen/remoting/host/win/chromoting_lib_p.c gen/remoting/host/win/chromoting_lib.tlb 
c:\b\s\w\ir\cipd_bin_packages\cpython\bin\python.exe ../../build/toolchain/win/midl.py environment.x86 c:/b/s/w/ir/cache/builder/src/third_party/win_build_output/midl/remoting/host/win gen/remoting/host/win 7219b935-4873-533b-9ce1-20c9e9b12def chromoting_lib.tlb chromoting_lib.h chromoting_lib.dlldata.c chromoting_lib_i.c chromoting_lib_p.c gen/remoting/host/win/chromoting_lib.idl /char signed /env win32 /Oicf
cl : Command line error D8027 : cannot execute 'c:\b\s\w\ir\cache\builder\src\third_party\depot_tools\win_toolchain\vs_files\a687d8e2e4114d9015eb550e1b156af21381faac\win_sdk\bin\..\..\VC\Tools\MSVC\14.26.28801\bin\HostX64\x86\c1.dll'
midl : command line error MIDL1003 : error returned by the C preprocessor (2)

Original change's description:
> Reland "New toolchain for Windows 10 19041 SDK"
> 
> This is a reland of 4a4f53a7f22f9058b2f171fc46bc5657bbe83e45
> 
> The original patch would fail to build on the mksnapshot step on
> Windows 7 (and server equivalents). This was due to two APISet DLLs
> that are required for the new dbghelp.dll. This change copies the two
> of them during gn gen. In order to have them as part of the isolates
> for cdb and in order to avoid dangerous ambiguity they are now
> required, which means that when this change lands the new SDK will be
> required. This is slightly disruptive for developers who aren't using
> our toolchain, but it seems unavoidable.
> 
> Developers who don't have the latest SDK installed will hit this error
> message during gn gen:
> 
>  Exception: api-ms-win-downlevel-kernel32-l2-1-0.dll not found in "..."
>  You must install the "Debugging Tools for Windows" feature from the
>  Windows 10 SDK, the 10.0.19041.0 version.
> 
> Original change's description:
> > New toolchain for Windows 10 19041 SDK
> >
> > This change updates the toolchain package used to build Chromium with
> > the 10.0.19041.0 (2020-04) SDK and VS 16.6.1. The d3dcompiler_47.dll
> > DLLs for x86 and x64 were swapped out for the 10.0.17134 versions (as
> > usual).
> >
> > The Debuggers directory was not swapped out this time because the
> > problem with loading dbghelp.dll on Windows 7
> > (https://crbug.com/1021650) has been resolved.
> >
> > The output for the cdb copy step was updated because one additional UCRT
> > DLL is now copied.
> >
> > Packaging was done on a Windows Server 2019 VM, cleanly created for this
> > purpose.
> >
> > The package was created by downloading the VS Professional 2019
> > installer from https://visualstudio.microsoft.com/downloads/
> > (free trial, not preview) and then running the installer like this:
> >
> > $ PATH_TO_INSTALLER.EXE ^
> >     --add Microsoft.VisualStudio.Workload.NativeDesktop ^
> >     --add Microsoft.VisualStudio.Component.VC.ATLMFC ^
> >     --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 ^
> >     --add Microsoft.VisualStudio.Component.VC.MFC.ARM64 ^
> >     --includeRecommended --passive
> >
> > Then the latest Windows 10 SDK was downloaded and installed from
> > https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/
> >
> > Then the packaging script was run like this:
> >
> >   python3 depot_tools\win_toolchain\package_from_installed.py 2019 -w 10.0.19041.0
> >
> > Since the new d3dcompiler_47.dll uses the UCRT and we want to avoid
> > shipping that (https://crbug.com/920704) the final packaging step was to
> > unzip the package, copy over the two copies of that DLL from the
> > previous toolchain's win_sdk\Redist, and then repackage the toolchain
> > with:
> >   > python3 package_from_installed.py --repackage=<full-path-to-toolchain-dir>
> >
> > UWP and ARM64 support and Python 3 compatibility were previously added
> > to package_from_installed.py.
> >
> > Future changes will require the new SDK, but for now the previous SDK
> > can also be used to build Chromium.
> >
> > The failures on the win*msvc* bots are unrelated. This was proven by
> > creating crrev.com/c/2245914 which is a NOP toolchain test. The existing
> > toolchain was repackaged with a single text file added and that caused
> > identical failures.
> >
> > Bug: 920704, 1014701, 1021650, 1089996
> > Change-Id: Ie496354582458aa8c1292ed4ef63d949ee2eb15d
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2225224
> > Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> > Reviewed-by: Henrik Andreasson <henrika@chromium.org>
> > Reviewed-by: Jamie Madill <jmadill@chromium.org>
> > Reviewed-by: Nico Weber <thakis@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#778924}
> 
> Bug: 920704, 1014701, 1021650, 1089996, 1095767
> Change-Id: I75e7653d57964e2929106e41b3f50594d3969e5f
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2249394
> Reviewed-by: Daniel Cheng <dcheng@chromium.org>
> Reviewed-by: Jesse McKenna <jessemckenna@google.com>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#780431}

TBR=dcheng@chromium.org,henrika@webrtc.org,thakis@chromium.org,brucedawson@chromium.org,henrika@chromium.org,jessemckenna@google.com,jmadill@chromium.org

Change-Id: If00e3865e66d9071189b2aca28f7541ecbdc6486
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 920704, 1014701, 1021650, 1089996, 1095767
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2255558
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#780467}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ed0697fcf0f958c1bc6643d911d99b1d9b52ed9b
2020-06-19 22:09:06 +00:00
Bruce Dawson f61607a55e Reland "New toolchain for Windows 10 19041 SDK"
This is a reland of 4a4f53a7f22f9058b2f171fc46bc5657bbe83e45

The original patch would fail to build on the mksnapshot step on
Windows 7 (and server equivalents). This was due to two APISet DLLs
that are required for the new dbghelp.dll. This change copies the two
of them during gn gen. In order to have them as part of the isolates
for cdb and in order to avoid dangerous ambiguity they are now
required, which means that when this change lands the new SDK will be
required. This is slightly disruptive for developers who aren't using
our toolchain, but it seems unavoidable.

Developers who don't have the latest SDK installed will hit this error
message during gn gen:

 Exception: api-ms-win-downlevel-kernel32-l2-1-0.dll not found in "..."
 You must install the "Debugging Tools for Windows" feature from the
 Windows 10 SDK, the 10.0.19041.0 version.

Original change's description:
> New toolchain for Windows 10 19041 SDK
>
> This change updates the toolchain package used to build Chromium with
> the 10.0.19041.0 (2020-04) SDK and VS 16.6.1. The d3dcompiler_47.dll
> DLLs for x86 and x64 were swapped out for the 10.0.17134 versions (as
> usual).
>
> The Debuggers directory was not swapped out this time because the
> problem with loading dbghelp.dll on Windows 7
> (https://crbug.com/1021650) has been resolved.
>
> The output for the cdb copy step was updated because one additional UCRT
> DLL is now copied.
>
> Packaging was done on a Windows Server 2019 VM, cleanly created for this
> purpose.
>
> The package was created by downloading the VS Professional 2019
> installer from https://visualstudio.microsoft.com/downloads/
> (free trial, not preview) and then running the installer like this:
>
> $ PATH_TO_INSTALLER.EXE ^
>     --add Microsoft.VisualStudio.Workload.NativeDesktop ^
>     --add Microsoft.VisualStudio.Component.VC.ATLMFC ^
>     --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 ^
>     --add Microsoft.VisualStudio.Component.VC.MFC.ARM64 ^
>     --includeRecommended --passive
>
> Then the latest Windows 10 SDK was downloaded and installed from
> https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/
>
> Then the packaging script was run like this:
>
>   python3 depot_tools\win_toolchain\package_from_installed.py 2019 -w 10.0.19041.0
>
> Since the new d3dcompiler_47.dll uses the UCRT and we want to avoid
> shipping that (https://crbug.com/920704) the final packaging step was to
> unzip the package, copy over the two copies of that DLL from the
> previous toolchain's win_sdk\Redist, and then repackage the toolchain
> with:
>   > python3 package_from_installed.py --repackage=<full-path-to-toolchain-dir>
>
> UWP and ARM64 support and Python 3 compatibility were previously added
> to package_from_installed.py.
>
> Future changes will require the new SDK, but for now the previous SDK
> can also be used to build Chromium.
>
> The failures on the win*msvc* bots are unrelated. This was proven by
> creating crrev.com/c/2245914 which is a NOP toolchain test. The existing
> toolchain was repackaged with a single text file added and that caused
> identical failures.
>
> Bug: 920704, 1014701, 1021650, 1089996
> Change-Id: Ie496354582458aa8c1292ed4ef63d949ee2eb15d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2225224
> Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Henrik Andreasson <henrika@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@chromium.org>
> Reviewed-by: Nico Weber <thakis@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#778924}

Bug: 920704, 1014701, 1021650, 1089996, 1095767
Change-Id: I75e7653d57964e2929106e41b3f50594d3969e5f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2249394
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Jesse McKenna <jessemckenna@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#780431}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 424526a023397ebbe6555ea27b82f66c137e8022
2020-06-19 21:23:14 +00:00
Bruce Dawson 6176c8d436 Revert "New toolchain for Windows 10 19041 SDK"
This reverts commit 4a4f53a7f22f9058b2f171fc46bc5657bbe83e45.

Reason for revert: Cryptic failure in v8 snapshot step, details in bug:

[28088/52852] ACTION //v8:run_mksnapshot_default(//build/toolchain/win:win_clang_x64)
FAILED: gen/v8/embedded.S snapshot_blob.bin
c:\b\s\w\ir\cipd_bin_packages\cpython\bin\python.exe ../../v8/tools/run.py ./mksnapshot --turbo_instruction_scheduling --target_os=win --target_arch=x64 --embedded_src gen/v8/embedded.S --embedded_variant Default --random-seed 314159265 --startup_blob snapshot_blob.bin --no-native-code-counters

TBR=thakis@chromium.org

No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 1095767
Change-Id: I3ebb7a7e638afd8936b7d0d98c328e53bc411209
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2248077
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#779044}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 308222cda6a3d546d3a75ce1cb488a8adaf0eb08
2020-06-16 22:44:34 +00:00
Bruce Dawson 471bf0b007 New toolchain for Windows 10 19041 SDK
This change updates the toolchain package used to build Chromium with
the 10.0.19041.0 (2020-04) SDK and VS 16.6.1. The d3dcompiler_47.dll
DLLs for x86 and x64 were swapped out for the 10.0.17134 versions (as
usual).

The Debuggers directory was not swapped out this time because the
problem with loading dbghelp.dll on Windows 7
(https://crbug.com/1021650) has been resolved.

The output for the cdb copy step was updated because one additional UCRT
DLL is now copied.

Packaging was done on a Windows Server 2019 VM, cleanly created for this
purpose.

The package was created by downloading the VS Professional 2019
installer from https://visualstudio.microsoft.com/downloads/
(free trial, not preview) and then running the installer like this:

$ PATH_TO_INSTALLER.EXE ^
    --add Microsoft.VisualStudio.Workload.NativeDesktop ^
    --add Microsoft.VisualStudio.Component.VC.ATLMFC ^
    --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 ^
    --add Microsoft.VisualStudio.Component.VC.MFC.ARM64 ^
    --includeRecommended --passive

Then the latest Windows 10 SDK was downloaded and installed from
https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/

Then the packaging script was run like this:

  python3 depot_tools\win_toolchain\package_from_installed.py 2019 -w 10.0.19041.0

Since the new d3dcompiler_47.dll uses the UCRT and we want to avoid
shipping that (https://crbug.com/920704) the final packaging step was to
unzip the package, copy over the two copies of that DLL from the
previous toolchain's win_sdk\Redist, and then repackage the toolchain
with:
  > python3 package_from_installed.py --repackage=<full-path-to-toolchain-dir>

UWP and ARM64 support and Python 3 compatibility were previously added
to package_from_installed.py.

Future changes will require the new SDK, but for now the previous SDK
can also be used to build Chromium.

The failures on the win*msvc* bots are unrelated. This was proven by
creating crrev.com/c/2245914 which is a NOP toolchain test. The existing
toolchain was repackaged with a single text file added and that caused
identical failures.

Bug: 920704, 1014701, 1021650, 1089996
Change-Id: Ie496354582458aa8c1292ed4ef63d949ee2eb15d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2225224
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Henrik Andreasson <henrika@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#778924}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4a4f53a7f22f9058b2f171fc46bc5657bbe83e45
2020-06-16 19:25:52 +00:00
Bruce Dawson 1384eef992 Copy vcruntime140_1*.dll to output directory
In x64 builds there is an extra C runtime DLL called vcruntime140_1.dll
(and it's debug equivalent). This tiny DLL seems to be responsible for
some exception handling work. This DLL has existed for a while but with
the recent attempt to switch to a new toolchain it started being
required - its absence was causing 0xC0000135 failures when running
angle_deqp_egl_tests.exe in a release component build.

This change adds it to the list of CRT DLLs to copy, for x64 builds
only.

Bug: 1089996
Change-Id: I8c1a64864634f40007e5efeaff375bc88d86aefd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2238348
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#776707}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 808ee241dccb66e79264d3b41354ebd5a92215d6
2020-06-09 21:36:30 +00:00
Nico Weber c0085dec90 Remove .croc files
They were apparently used by some old code coverage system long ago.
https://chromium-review.googlesource.com/c/chromium/src/+/764949/
removed tools/code_coverage/croc.py well over 2 years ago, so we
probably don't need these files either.

Bug: 784464
Change-Id: I2cb1c7ee973c26b673a225659967516f5bf922d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2036804
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Auto-Submit: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#742809}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cb3953490314bd66e12023f6bdef8610685b467a
2020-02-19 21:52:31 +00:00
Nico Weber 1ab8b1afa1 Reformat all gn files in /build.
`gn format` recently changed its formatting behavior
for deps, source, and a few other elements when they
are assigned (with =) single-element lists to be consistent
with the formatting of updates (with +=) with single-element.

Now that we've rolled in a GN binary with the change,
reformat all files so that people don't get presubmit
warnings due to this.

This CL was uploaded by git cl split.

R=tikuta@chromium.org

Bug: 1041419
Change-Id: I15bd43c6df0ba87f879e5226e4dbb1af7ba73f03
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1998745
Auto-Submit: Nico Weber <thakis@chromium.org>
Reviewed-by: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#731078}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4782d7368c37ae35cf0c44456ba8307079a4d24e
2020-01-14 04:52:17 +00:00
Bruce Dawson fb0db9a019 Copy all UCRT files to cdb directory
The Windows 10 19013 Preview SDK has an extra UCRT file in the debuggers
directory and this file (api-ms-win-downlevel-kernel32-l2-1-0.dll) is
needed when running cdb.exe on Windows 7.

This change allows the copy_cdb_to_output action to run with 18632 and
later SDKs. Once we require a later SDK we should add the new file to
the list of outputs for this action but this will smooth the otherwise
bumpy transition.

Bug: 1021650
Change-Id: I2304aea73dfcd25258697c37d05b05dc6adff55e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1904873
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#713912}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ff51aa28b262422402784c62eb2787b03b012f36
2019-11-08 19:23:29 +00:00
Hans Wennborg 3fcc9d9ef3 build: Assert that Win cross-builds from Mac are 64-bit.
Bug: 794838
Change-Id: I9bdf48936e28a1ae788fa1277ac664e1eab1d9e4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1844787
Commit-Queue: Hans Wennborg <hans@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#703292}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 193ddf4426c3d31e11365e1081d0b147f3e5cf9b
2019-10-07 14:14:35 +00:00
Raul Tambre 0a5bef5530 build/: Convert uses of has_key
Conversion performed automatically using '2to3 -w -f has_key .'.
This is backwards compatible with Python 2.

Bug: 941669
Change-Id: Ia884751c572c6bbe94cea10831f010e85f9e59fb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1817600
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Raul Tambre <raul@tambre.ee>
Auto-Submit: Raul Tambre <raul@tambre.ee>
Cr-Original-Commit-Position: refs/heads/master@{#699433}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 24e0e0af416e5b0eda21f9718a716a9bae6a836d
2019-09-24 18:54:55 +00:00
Nico Weber cf242b656c win/mac/ios: Don't copy asan runtime around in non-asan sanitizer builds.
From what I can tell, it's not intentional that we keyed this off
using_sanitizer instead of is_asan.

As far as I know, the only sanitizer we currently use on mac and ios is
asan, so this should be a no-op there.

On Windows, we also have experimental CFI bots, and this might help
the 32-bit CFI bots that now no longer build the asan runtime.
(But presumably CFI needs some other runtime that we also no longer
build -- but it'll hopefully move the error a bit further back,
and copying the asan runtimes is needless work.)

TBR=pcc

Bug: 968434
Change-Id: I56528f2e82852d8c3145d657db77833321a6602c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1637032
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#664745}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b0ef5b0ca4d46a34d8d7568fbb07c53f2f5564c2
2019-05-30 15:21:40 +00:00
Raul Tambre 0fdfe6341a //build: Convert print statements to Python 3 style
Ran "2to3 -w -n -f print ./base" and manually added imports.
There are no intended behaviour changes.

Bug: 941669
Change-Id: Ie2830e213eae3a5d7753ce503020e02811b726d1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1585890
Commit-Queue: Raul Tambre <raul@tambre.ee>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Auto-Submit: Raul Tambre <raul@tambre.ee>
Cr-Original-Commit-Position: refs/heads/master@{#658917}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 9e24293bf2459779641201495baa3b2ae9d13cd9
2019-05-12 06:11:07 +00:00
Raul Tambre c16bac596c Make a bytestring explicitly raw due to confusing use of invalid escape sequences
This doesn't change the behaviour, because Python doesn't consider \s nor \S escape sequences.

Change-Id: Iedbb794b36a190262ec0587e5429de410da07ac4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1533883
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#643086}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 599aecee8f84d358ae905838a8f88514590f1845
2019-03-21 20:20:29 +00:00
Raul Tambre d411745b0d Improve Python 3 compatibility of build scripts
These changes allow more of Chromium to be built using Python 3.

The scripts still work with Python 2.
There are no intended behaviour changes.

Bug: 941669
Change-Id: I6897d00ce00ec6aa5d7ca216b9f302e725a21897
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1527522
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Raul Tambre <raul@tambre.ee>
Cr-Original-Commit-Position: refs/heads/master@{#642401}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 79fbf3cf437660defd0eee56685c7a785812591d
2019-03-20 05:48:38 +00:00
Raul Tambre e625c0fa04 Improve Python 3 support in build scripts
The changes are to allow build files to be generated using Python 3 on Windows.

The scripts still work with Python 2.
There are no intended behaviour changes.

Bug: 941669
Change-Id: I52c912c624660c7a46c05f8f36871744abd7b8d4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1521487
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Raul Tambre <raul@tambre.ee>
Cr-Original-Commit-Position: refs/heads/master@{#641870}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4197d3af6e42aa72076d6051153a644f3df62dd5
2019-03-19 15:04:20 +00:00
Bruce Dawson 71cb6b1388 Revert "Switch to full 17763 SDK, including new d3dcompiler_47.dll"
This reverts commit d17a7e3cc86ff480e081854b0c9a358ddf3112ac.

Reason for revert: Increase in heap corruption (and other?) crashes
in the d3dcompiler code path, such as  crbug.com/932359. We have run
out of time to investigate before branching.

Original change's description:
> Switch to full 17763 SDK, including new d3dcompiler_47.dll
>
> The new (10.0.17763.0) version of d3dcompiler_47.dll contains various
> bug fixes which we want to ship. We initially avoided upgrading it with
> the rest of the SDK because it depends on the universal Windows 10 CRT
> (UCRT) which some Windows 7 machines lack. This caused test failures on
> some bots and would cause failures on some customer machines.
>
> This change updates how we package isolates so that they always include
> the UCRT, to avoid test failures. It also ships api-ms-win-*.dll and
> ucrtbase*.dll in mini_installer.exe so that the UCRT will be shipped to
> customers. The size increase to mini_installer.exe for this is about
> 400,000 bytes.
>
> This change also deletes an unused function (_read_configuration_from_gn)
> from create_installer_archive.py that sent me down an incorrect path
> while investigating fixes.
>
> The toolchain package is the same as the one used when landing
> crrev.com/c/1401403 except that the 17763 version of d3dcompiler_47.dll
> was retained. See that CL for full instructions on creating the
> toolchain package.
>
> Bug: 920704
> Change-Id: I9cb7a7ed5cb75d04962fc64869d26b12617c0463
> Reviewed-on: https://chromium-review.googlesource.com/c/1450414
> Reviewed-by: Greg Thompson <grt@chromium.org>
> Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#629193}

TBR=brucedawson@chromium.org,grt@chromium.org

Bug: 920704
Change-Id: Ia986017541e5e80a3cc5f1d96494e0e12a841ed1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1507040
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#638596}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 666e6630b5d3c15313ce5ff385eac85459c65623
2019-03-07 16:36:43 +00:00
Bruce Dawson 818b3b4bd5 Fix copy_cdb outputs for ARM64 Win32 builds
On ARM64 Win32 builds the UCRT is not a redistributable and therefore
must be omitted from the list of outputs. Otherwise the
copy_cdb_to_output will never be clean.

This was tested before and after with this pair of commands:

    ninja.exe -C out\arm64 copy_cdb_to_output
    ninja.exe -d explain -C out\arm64 copy_cdb_to_output

Before the build step was always dirty. After it is always clean.

Bug: 937083
Change-Id: Ica53b1b172441925dcbb27f6033774d49b1df9af
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1497491
Auto-Submit: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Justin DeWitt <dewittj@chromium.org>
Reviewed-by: Justin DeWitt <dewittj@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#637404}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: dd3e44cc62a0cb83a470f71749ac0f05f3c24838
2019-03-04 20:29:28 +00:00
Bruce Dawson b025bccd07 Fix logic for when UCRT files are shipped
In crrev.com/c/1450414 the logic for when the UCRT files were shipped
was updated to ensure that the files were shipped for all non-ARM64
builds, to support the latest d3dcompiler_47.dll. Except the Boolean
logic was backwards so we were trying to ship them on ARM64, which is
wrong. This means that component builds of the ARM64 mini_installer
fail because they try to copy the api-ms-win*.dll redist files and
those don't exist for ARM64.

That fixes the logic, including separating out the logic for the UCRT
and the rest of the CRT.

This was tested on ARM64 by building isolates for all four permutations
of is_debug and is_component_build and confirming that they all worked.

This may need updating if we change how we ship d3dcompiler_47.dll but
this is correct for now.

Bug: 931856, 920704
Change-Id: I45c418403e03d3ba19348ed98f273ee9c80a5003
Reviewed-on: https://chromium-review.googlesource.com/c/1476316
Reviewed-by: David Bienvenu <davidbienvenu@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#637003}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: e782c345fb9cfc5558a85fe3fe0ffe482d79a7b8
2019-03-01 23:13:45 +00:00
Jamie Madill 0df4829bae Revert "Toolchain with d3dcompiler_old.dll included"
This reverts commit 6ddbac7f8b44ca9f4ef8adaf21229df9dec380a2.

Reason for revert: causing most ANGLE Windows tests to fail with:

[ RUN      ] D3DTextureTest.GlColorspaceNotAllowedForTypedD3DTexture/ES2_D3D9
../../third_party/angle/src/tests/test_utils/ANGLETest.cpp(57): error: Failed
ensureInitialized(138): LoadLibrary(d3dcompiler_47.dll) failed. GetLastError=126

e.g. https://ci.chromium.org/p/chromium/builders/luci.chromium.try/win-angle-rel/872

Original change's description:
> Toolchain with d3dcompiler_old.dll included
> 
> This switches Chromium for Windows to use a new toolchain package that
> is the same as the one landed in crrev.com/c/1450414 except that it
> includes both the new d3dcompiler_47.dll (from the 17763 SDK) and the
> old one (from the 17134 SDK). The two versions are so that most
> customers get the new version, with all of its bug fixes, while those
> who don't have proper UCRT installs will fall back to the old version.
> If there are enough of the latter then we can figure out a way to ship
> the UCRT beside chrome.exe so that they can get the fixes as well. If
> there are few enough of the latter then we can drop support for them.
> 
> This change also removes the UCRT from installs, reverting a portion of
> crrev.com/c/1450414, and adds d3dcompiler_old.dll to installs.
> 
> This toolchain package was created by copying d3dcompiler_47.dll from
> the win_sdk\Redist\D3D\{x64|x86} directories of the 17134 SDK to
> d3dcompiler_old.dll and repackaging the directory using the --repackage
> option of depot_tools\win_toolchain\package_from_installed.py.
> 
> Note that the logic in build\win\BUILD.gn for when to package up the
> UCRT was incorrect (it would try to package it for ARM64 component
> builds) and that is corrected as well in this change.
> 
> Angle can then use d3dcompiler_old.dll as a fallback, and record
> metrics about how often the fallback is used.
> 
> Bug: 920704
> Change-Id: Ida96d8b9247789a429519c50b0663f183d72c800
> Reviewed-on: https://chromium-review.googlesource.com/c/1461679
> Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Jamie Madill <jmadill@google.com>
> Reviewed-by: Greg Thompson <grt@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#634207}

TBR=jmadill@google.com,brucedawson@chromium.org,grt@chromium.org

Change-Id: I0fbd1f963fdd4c3180715ff9eec38b7bb2c2bf4e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 920704
Reviewed-on: https://chromium-review.googlesource.com/c/1481670
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#634255}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6f84ed3b4c8c26dc30642a91bb195943d1632cf3
2019-02-21 18:03:36 +00:00
Bruce Dawson ff7518adfb Toolchain with d3dcompiler_old.dll included
This switches Chromium for Windows to use a new toolchain package that
is the same as the one landed in crrev.com/c/1450414 except that it
includes both the new d3dcompiler_47.dll (from the 17763 SDK) and the
old one (from the 17134 SDK). The two versions are so that most
customers get the new version, with all of its bug fixes, while those
who don't have proper UCRT installs will fall back to the old version.
If there are enough of the latter then we can figure out a way to ship
the UCRT beside chrome.exe so that they can get the fixes as well. If
there are few enough of the latter then we can drop support for them.

This change also removes the UCRT from installs, reverting a portion of
crrev.com/c/1450414, and adds d3dcompiler_old.dll to installs.

This toolchain package was created by copying d3dcompiler_47.dll from
the win_sdk\Redist\D3D\{x64|x86} directories of the 17134 SDK to
d3dcompiler_old.dll and repackaging the directory using the --repackage
option of depot_tools\win_toolchain\package_from_installed.py.

Note that the logic in build\win\BUILD.gn for when to package up the
UCRT was incorrect (it would try to package it for ARM64 component
builds) and that is corrected as well in this change.

Angle can then use d3dcompiler_old.dll as a fallback, and record
metrics about how often the fallback is used.

Bug: 920704
Change-Id: Ida96d8b9247789a429519c50b0663f183d72c800
Reviewed-on: https://chromium-review.googlesource.com/c/1461679
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Jamie Madill <jmadill@google.com>
Reviewed-by: Greg Thompson <grt@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#634207}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6ddbac7f8b44ca9f4ef8adaf21229df9dec380a2
2019-02-21 16:03:32 +00:00
Bruce Dawson e148b4cffc Ship ucrtbase.dll in debug isolates
The 17763 version of d3dcompiler_47.dll requires ucrtbase.dll. Change
crrev.com/c/1450414 switched to this new version of d3dcompiler_47.dll
and adjusted the DLLs we ship in isolates but in the debug case it
only shipped ucrtbased.dll, not ucrtbase.dll. This fixes that.

Local testing shows that angle_end2end_tests.isolate now always contains
ucrtbase.dll.

Bug: 929295, 920704
Change-Id: I3bb64dde923407e94404073b8f8f9bfd57692eac
Reviewed-on: https://chromium-review.googlesource.com/c/1457018
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#629780}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: edd50d7b272da6b84fde414ad95802f119770510
2019-02-06 23:36:47 +00:00
Bruce Dawson ca78469929 Switch to full 17763 SDK, including new d3dcompiler_47.dll
The new (10.0.17763.0) version of d3dcompiler_47.dll contains various
bug fixes which we want to ship. We initially avoided upgrading it with
the rest of the SDK because it depends on the universal Windows 10 CRT
(UCRT) which some Windows 7 machines lack. This caused test failures on
some bots and would cause failures on some customer machines.

This change updates how we package isolates so that they always include
the UCRT, to avoid test failures. It also ships api-ms-win-*.dll and
ucrtbase*.dll in mini_installer.exe so that the UCRT will be shipped to
customers. The size increase to mini_installer.exe for this is about
400,000 bytes.

This change also deletes an unused function (_read_configuration_from_gn)
from create_installer_archive.py that sent me down an incorrect path
while investigating fixes.

The toolchain package is the same as the one used when landing
crrev.com/c/1401403 except that the 17763 version of d3dcompiler_47.dll
was retained. See that CL for full instructions on creating the
toolchain package.

Bug: 920704
Change-Id: I9cb7a7ed5cb75d04962fc64869d26b12617c0463
Reviewed-on: https://chromium-review.googlesource.com/c/1450414
Reviewed-by: Greg Thompson <grt@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#629193}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d17a7e3cc86ff480e081854b0c9a358ddf3112ac
2019-02-05 17:21:22 +00:00
Jon Kunkee 000a3b7a5e Fix CDB.exe copy script for ARM64 Windows
This change adds ARM64 support to the CDB.exe copy script. Also, since
ARM64 Windows is by definition Windows 10 1709+, the eventing-provider
and ucrtbase DLLs are shipped with the OS and do not need to be copied.

Bug: 893460
Change-Id: Ia278c4636bc1303c24f174df88f6232a2e403c82
Reviewed-on: https://chromium-review.googlesource.com/c/1399289
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#620533}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: aa675251d9e1778e19ac77c5bef290c2e78c04b0
2019-01-07 23:47:42 +00:00
Bruce Dawson df23eb1b25 Fix redist glob to work on Linux
Recent Windows 10 SDKs store the UCRT redist files in a different
directory so a change was landed to scan for the right directory to
handle old and new. However the glob call used a backslash and therefore
fails on Linux. This fixes that by using os.path.join.

Bug: 915036
Change-Id: I7f71b0e9300ac33964a05881525a5eba52203859
Reviewed-on: https://chromium-review.googlesource.com/c/1377503
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#617227}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0778ef57fb5d7b77897bb321e0fe1451ae742d62
2018-12-17 21:12:49 +00:00
Bruce Dawson e25071980f Fix ucrt redist path for copy_cdb_to_output.py
Recent versions of the 10.0.17763 SDK have rearranged the redist
directory where we find the UCRT DLLs. This change updates the
copy_cdb_to_output.py script so that it looks in the new (versioned)
directory first, and falls back to the old unversioned directory if that
doesn't work.

Without this change we still soon start seeing build failures when
using the locally installed toolchain on clean installs.

See also http://crrev.com/c/1370609 for the depot tools packaging
version of this change, and http://crrev.com/c/1371017 for the
vs_toolchain.py version of this change. Ideally this change would have
been made together with the vs_toolchain.py, but the break was found to
late. The try bots have now done full builds with the new SDK layout so
this should be the last change needed of this type.

Change-Id: I4c965c66296d2f0b6adad672a71c295ffb021c66
Reviewed-on: https://chromium-review.googlesource.com/c/1372222
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#615737}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 33f80443a11c321a12cb5337eea8dd46ecb0fecd
2018-12-12 00:06:06 +00:00
Sebastien Marchand 42b326187b Remove some of the PGO build scripts
Change-Id: Idba500f31b9d3a0dc435ed8d55e31d05dec61cd6
Reviewed-on: https://chromium-review.googlesource.com/c/1323569
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Sébastien Marchand <sebmarchand@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#606119}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a41133bb4608bfe3f033e037d9aa6a07329d66f4
2018-11-07 19:20:44 +00:00
Tom Tan 47b1e3d07e Add Windows ARM64 support to Chromium build scripts.
This change mostly contains build script change under //chrome/build only.
It is targeting MSVC arm64 toolset, but enable clang-cl
could be based on this change.

Bug: 893460
Change-Id: Ia6f69f067a97fcaeb77021c1019bc594b0859eda
Reviewed-on: https://chromium-review.googlesource.com/c/1272076
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Steven Valdez <svaldez@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#600083}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d5bf20624a99401dcb6c9e6aee9244334008222b
2018-10-16 19:37:14 +00:00
Hans Wennborg 77eee3cad7 Make copy_cdb_to_output depend on vs_toolchain.py
Ideally, copy_cdb_to_output should depend on the files it's copying. But
since those live outside Chromium that's not really practical. Depending
on vs_toolchain.py is probably good enough; the important part is this
will force copy_cdb_to_output to run whenever the VS version changes.

Bug: 846313
Change-Id: Ie0596fb820ba71c40b65325d663f95c2bffe30a4
Reviewed-on: https://chromium-review.googlesource.com/1073451
Commit-Queue: Scott Graham <scottmg@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561893}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: bec05e14e8ac760ca6182f8cad11e1e8507758f4
2018-05-25 15:52:19 +00:00
Hans Wennborg b7c8b88331 Reland "Fixed SDK lookup for non C:\ Windows installation."
This reverts commit 864136ef9686128f4afbfe6146cd3e2d08182d52.

Reason for revert:
While it seems this did trigger the cdb failures in crbug.com/846313,
it was not the root cause and reverting it didn't actually help.

Original change's description:
> Revert "Fixed SDK lookup for non C:\ Windows installation."
> 
> This reverts commit 57fd44c74e13be05a3091976f9bcee39ee8f703e.
> 
> Reason for revert: suspect for messing up symbols on Win7 bot
>                    @ crbug.com/846313
> 
> Original change's description:
> > Fixed SDK lookup for non C:\ Windows installation.
> >
> > Bug: None
> > Change-Id: Ia0aa186d1d39b1beac8ce0152683f774ad5d2eaf
> > Reviewed-on: https://chromium-review.googlesource.com/1066065
> > Reviewed-by: Jochen Eisinger <jochen@chromium.org>
> > Commit-Queue: Jochen Eisinger <jochen@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#561063}
> 
> TBR=jochen@chromium.org,yura.yaroshevich@gmail.com
> 
> # Not skipping CQ checks because original CL landed > 1 day ago.
> 
> Bug: 846313
> Change-Id: Id93a965aea5555961c539d47e05e79410894eff8
> Reviewed-on: https://chromium-review.googlesource.com/1072307
> Commit-Queue: Gabriel Charette <gab@chromium.org>
> Reviewed-by: Gabriel Charette <gab@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#561609}

TBR=gab@chromium.org,jochen@chromium.org,yura.yaroshevich@gmail.com

Bug: 846313
Change-Id: I9955a47bbe8a81a0dcf7befebfc422560f8a1cc4
Reviewed-on: https://chromium-review.googlesource.com/1073314
Reviewed-by: Hans Wennborg <hans@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561873}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2e7257da41fbc81029fae5f306ae8123ec975f0c
2018-05-25 14:41:24 +00:00
Gabriel Charette a1001a0a35 Revert "Fixed SDK lookup for non C:\ Windows installation."
This reverts commit 57fd44c74e13be05a3091976f9bcee39ee8f703e.

Reason for revert: suspect for messing up symbols on Win7 bot
                   @ crbug.com/846313

Original change's description:
> Fixed SDK lookup for non C:\ Windows installation.
>
> Bug: None
> Change-Id: Ia0aa186d1d39b1beac8ce0152683f774ad5d2eaf
> Reviewed-on: https://chromium-review.googlesource.com/1066065
> Reviewed-by: Jochen Eisinger <jochen@chromium.org>
> Commit-Queue: Jochen Eisinger <jochen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#561063}

TBR=jochen@chromium.org,yura.yaroshevich@gmail.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 846313
Change-Id: Id93a965aea5555961c539d47e05e79410894eff8
Reviewed-on: https://chromium-review.googlesource.com/1072307
Commit-Queue: Gabriel Charette <gab@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561609}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 864136ef9686128f4afbfe6146cd3e2d08182d52
2018-05-24 20:26:28 +00:00
Yura Yaroshevich 40e03061e7 Fixed SDK lookup for non C:\ Windows installation.
Bug: None
Change-Id: Ia0aa186d1d39b1beac8ce0152683f774ad5d2eaf
Reviewed-on: https://chromium-review.googlesource.com/1066065
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: Jochen Eisinger <jochen@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#561063}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 57fd44c74e13be05a3091976f9bcee39ee8f703e
2018-05-23 14:09:44 +00:00
Michael Achenbach fc9e27ff6c [build] Move windows runtime-libs gn configs to src/build
This will allow webrtc and v8 to share the configs.

CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.win:win-msvc-dbg

Bug: 653569
Change-Id: I41a4d9025f47fd3a9d6837f88c2bece108c213a8
Reviewed-on: https://chromium-review.googlesource.com/997794
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#548874}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5a4f610ded51627273b1f05e83379b1ce8e3c6aa
2018-04-06 18:53:15 +00:00
Sigurdur Asgeirsson 8d0c92a60a Remove Syzygy/SyzyASAN build configuration and related code.
This removes the is_syzyasan build flag and related build configuration.
Everything under the SYZYASAN define is either removed, or moved under
ADDRESS_SANITIZER, as e.g. the previously SyzyASAN-only heap corruption
debug URLs.

The DCHECK debug URL is now enabled and the activity tracker grabs a
stack trace when DCHECK_IS_ON(), instead of only under SYZYASAN.

The metrics system sets the is_asan_build bit in the system profile now
under ADDRESS_SANITIZER, against the day when we ship Clang ASAN builds.

The SyzyProf profiling support is removed.

To support the upcoming official build with configurable DCHECKs, the
channel string visible in chrome://settings/help is adorned with "DCheck".

The DEPS to fetch the Syzygy binary archive is left in place, as the
zap_timestamps.exe utility is still in use. Once LLD replaces the MSVC
linker, that can be removed without penalty, at which time the DEPS will
be scrubbed.

Bug: 821764
Change-Id: I08202da8f032f2350a589cfcda9e9b2edd147b7d
Reviewed-on: https://chromium-review.googlesource.com/980912
Reviewed-by: Will Harris <wfh@chromium.org>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Wez <wez@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Chris Hamilton <chrisha@chromium.org>
Reviewed-by: Sébastien Marchand <sebmarchand@chromium.org>
Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#546966}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 69d0bcdd9729d123d9ba030d9506f763f0e2e56f
2018-03-29 21:50:51 +00:00
Scott Graham a7d2d6d4bc Add missing cdb dll, causing failures on win7 crash integration tests
(Link to working run on Win7 bot:
https://chromium-swarm.appspot.com/task?id=3b4d2229fcb0aa10&refresh=10&show_raw=1)

Bug: 805409, 804452
Change-Id: Ieea7271856276162483e9a4240452701a1e062e7
Reviewed-on: https://chromium-review.googlesource.com/889701
Commit-Queue: Scott Graham <scottmg@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#532094}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b91f674a20ce246aa646bb7ecabd217d113c5611
2018-01-26 23:53:13 +00:00
Bruce Dawson 6be95fa4b4 Remove obsolete references to VS 2015
Chrome cannot build with VS 2015 anymore. Having it listed as a
supported compiler can lead to confusion for new Chromium developers.
This change scrubs inappropriate '2015' references from the Chromium
repo.

Bug: 683729
Change-Id: I2e02bc31ae8fd57a31ac65f1bb8a45eb5a5cd433
Reviewed-on: https://chromium-review.googlesource.com/807526
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#521829}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cea79358b2c6f2d0d7834f3d153072fbe0bcc1a5
2017-12-05 21:09:47 +00:00
Bruce Dawson 3320fdec7b Don't check message compiler results for .mc files
message_compiler.py checks to make sure its results match those
generated by mc.exe, but these checks are only valid for a given version
of mc.exe, because the output changes with every new Windows 10 SDK
version. The checking is disabled for SDK versions other than 10.0.15063
but only for .man files. This change extends the disabling of checking
for .mc files also, due to observed failures.

Bug: 774669
Change-Id: I618f68d8926b73621192e7933aea5d264fedd214
Reviewed-on: https://chromium-review.googlesource.com/807205
Reviewed-by: Scott Graham <scottmg@chromium.org>
Commit-Queue: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#521577}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fb4046a4b0fd9651c74c7dcd4638688c53937048
2017-12-05 01:30:00 +00:00
Nico Weber 2647b49d48 message_compiler.py: Check expected outputs for .man files only for pinned SDK version.
mc.exe's output for .man files is changing significantly in the
Fall Creator's SDK update.

Checking in outputs for multiple outputs means we'll never be able
to check in new baselines if the .man input changes, so we have
to decide on just one version. So get mc.exe's version and only
compare if it's the version that belongs to the SDK hash that's
the default in vs_toolchain.py.

We'll have to manually remember to update the checked-in output and
to bump the version number here after we update to the Fall SDK,
else we'll silently lose output checking for .man files, but that
seems like the lesser evil.

Bug: 774669
Change-Id: I841d10c53f60ea645cca1640e2a7be204ac0f31f
Reviewed-on: https://chromium-review.googlesource.com/735073
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#511280}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 02ba53c693281052d9b52d411f34d125f4bf40a3
2017-10-24 22:18:37 +00:00
Jamie Madill f2dd2d1ca7 Add script to merge VS solutions from multiple GN targets.
This helper file is intended to be used with GN generation of
Visual Studio solutions. Because GN doesn't have the concept of
different architectures or configurations, it can only gen a single
solution. What the script does is take a bunch of different solutions
from different GN output directories and merges them into a single
"meta" solution.

This allows the user to have a single open instance of Visual
Studio which can manage different build configurations. A common
use case is to have 32-bit/64-bit and Debug Release in the same
IDE, switchable by using the drop down menus.

The solution is forced to use the "x64" platform due to limitations
in Visual Studio.

Based on skia's script: https://skia-review.googlesource.com/4158

BUG=angleproject:1569

Change-Id: I0882211ab8ca442623632764ee6bc135bde02307
Reviewed-on: https://chromium-review.googlesource.com/729133
Commit-Queue: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#511003}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fcc7dabd24569a756d462e434a1bd4485cb7534e
2017-10-24 01:53:44 +00:00
Nico Weber 504a6e4a0f Make reorder-imports.py not depend on .exe files.
This attempts to port https://github.com/google/syzygy/blob/master/syzygy/swapimport/swapimport_app.cc#L143

The motivation is to be able to run this on non-Windows hosts. This is
the last thing that's required to be able to link chrome.exe (with some
other local changes).
Not relying on a checked-in binary also makes changing the script easier.

Bug: 761849
Change-Id: I9956ce5c0929dcb3fd1309a8f0b2acc80b7b92ce
Reviewed-on: https://chromium-review.googlesource.com/649810
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Reviewed-by: Chris Hamilton <chrisha@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#499824}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cf357e4d70c3f537994bbbce771b678bc6ef2d3e
2017-09-06 01:01:04 +00:00
Nico Weber aa433c8382 mc: Explicitly sort #define blocks.
Some versions of mc.exe apparently don't do that, see chromium-dev
"message_compiler.py build failure due to innocent enum ordering changes"

Also print a slightly more detailed diff.

Bug: 756607
Change-Id: I100891d0d1d06256448e568b9fa0ed8938d5957b
Reviewed-on: https://chromium-review.googlesource.com/649768
Reviewed-by: Scott Graham <scottmg@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#499663}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 570a3b4c38a155a075e4370a37bf184c7d35bbd4
2017-09-05 17:32:28 +00:00
Nico Weber 61717683e1 Reland "mc: Copy over checked-in outputs on non-Windows hosts."
This reverts commit ea662297506102da12eb1ee04e40fad15b77a1d5.

This also reverts https://chromium-review.googlesource.com/c/chromium/src/+/584691
for non-iOS to make sure that remoting .mc outputs are not different in
official and unofficial builds.

Change-Id: I58fc96c40d1639c9145f576136afca2468459389
Bug: 756607,747637
Reviewed-on: https://chromium-review.googlesource.com/648113
Reviewed-by: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#499409}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 6cff7e77ad345f90dcc46b106620baf4cab3cef8
2017-09-03 02:59:23 +00:00
Łukasz Anforowicz 2fc869313f Revert "mc: Copy over checked-in outputs on non-Windows hosts."
This reverts commit d000a95b5c7189076d3e6d61f243caef3edeaa48.

Reason for revert: Speculating that this CL has caused a tree closure - see https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20Win/builds/21668

Original change's description:
> mc: Copy over checked-in outputs on non-Windows hosts.
> 
> On Windows hosts, verify that the checked-in outputs are identical to
> what mc.exe actually produces.
> 
> Bug: 756607
> Change-Id: If827c2b5d64730a27cf409af25783794366c1843
> Reviewed-on: https://chromium-review.googlesource.com/646659
> Commit-Queue: Nico Weber <thakis@chromium.org>
> Reviewed-by: Scott Graham <scottmg@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#499221}

TBR=thakis@chromium.org,scottmg@chromium.org

Change-Id: I9d2dc77942bdba7198ed442cedb2f3d815510f9f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 756607
Reviewed-on: https://chromium-review.googlesource.com/648146
Reviewed-by: Łukasz Anforowicz <lukasza@chromium.org>
Commit-Queue: Łukasz Anforowicz <lukasza@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#499227}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ea662297506102da12eb1ee04e40fad15b77a1d5
2017-09-01 17:42:14 +00:00
Nico Weber 1285fcddfc mc: Copy over checked-in outputs on non-Windows hosts.
On Windows hosts, verify that the checked-in outputs are identical to
what mc.exe actually produces.

Bug: 756607
Change-Id: If827c2b5d64730a27cf409af25783794366c1843
Reviewed-on: https://chromium-review.googlesource.com/646659
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#499221}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d000a95b5c7189076d3e6d61f243caef3edeaa48
2017-09-01 17:03:31 +00:00
Nico Weber 630092e8be Make copy_cdb_to_output work on non-Windows hosts.
Bug: 495204
Change-Id: I3d5e70f019b73841c6c34df26584e8018deeb972
Reviewed-on: https://chromium-review.googlesource.com/646649
Reviewed-by: Scott Graham <scottmg@chromium.org>
Commit-Queue: Nico Weber <thakis@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#498976}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c8fe09cb98cdfd3e956202251d70415bfcdd0ece
2017-08-31 20:23:42 +00:00
Nico Weber 6932ee9819 win: Let linker convert .manifest file to an embedded resource instead of calling rc.exe.
This has a bunch of minor advantages:
1. It's less code
2. It's a build step less per windows_manifest
3. /manifest:embed automatically sets 1 or 2 based on /dll, so
   clients of windows_manifest() clients no longer need to set type
4. rc.exe is no longer required for every single binary, which
   helps bootstrapping of cross-building some chrome/win binaries
   on non-win

No intended behavior change.

TBR=sergeyu,grt

Bug: 495204
Cq-Include-Trybots: master.tryserver.chromium.win:win10_chromium_x64_rel_ng
Change-Id: I13cd9103829fa535997fa7a7e5ec009dbc1b8039
Reviewed-on: https://chromium-review.googlesource.com/585109
Commit-Queue: Nico Weber <thakis@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#489729}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 132e149a98b37ee78eaf86434dbe37f22fa40d4c
2017-07-26 19:46:08 +00:00
sebmarchand aa821bdef5 Fix typo in merge_pgc_files.py
BUG=528632
TBR=scottmg@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2933493002
Cr-Original-Commit-Position: refs/heads/master@{#478182}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f38c70f4d88bc524ca299a5692510852a5d307be
2017-06-09 03:30:11 +00:00
Sebastien Marchand f34c461c7a Add a retry logic in merge_pgc_files.py
pgomgr.exe sometime fails to merge too many files at the same time, with
what seems to be a memory issue (process peak at ~4GB before failing,
it's a 64-bit process so it's probably a size_t/uint32_t issue). I've a
local repro that I'll send to MS, but in the meantime this fix is
required to fix the official build (and the PGO ones in general).

Bug: 729894
Change-Id: I9c862c0179de50ee89b22a03789c9fb0a1071d48
Reviewed-on: https://chromium-review.googlesource.com/528354
Commit-Queue: Sébastien Marchand <sebmarchand@chromium.org>
Reviewed-by: Scott Graham <scottmg@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#478066}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0c6adbef4d5f4722e2a224c90164f30ec9cf26dd
2017-06-08 20:10:47 +00:00
sebmarchand 1caf3a69f3 Update merge_pgc_files.py in preparation for VS2017
pgomgr.exe has been moved to a different location in VS2017 so the logic
that find it should be updated.

It can't just be copied to the build directory because we always run the
x64 bit version of this binary (and we don't want to mix x86 and x64
binaries in the same build dir)

BUG=719319

Review-Url: https://codereview.chromium.org/2884613003
Cr-Original-Commit-Position: refs/heads/master@{#473438}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ab3a1821bb57a51d11be2b038b3a698236ccd5fc
2017-05-20 15:00:06 +00:00