Index: build/config/compiler/compiler.gni |
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni |
index 2e5072e2589133090ed96f857b216186ee3a6836..9f59f84f64560a9cf867eaa31ee52b13b737181d 100644 |
--- a/build/config/compiler/compiler.gni |
+++ b/build/config/compiler/compiler.gni |
@@ -82,6 +82,13 @@ if (symbol_level == -1) { |
# With instrumentation enabled, debug info puts libchrome.so over 4gb, which |
# causes the linker to produce an invalid ELF. http://crbug.com/574476 |
symbol_level = 0 |
+ } else if (is_win && use_goma && !is_clang) { |
+ # goma doesn't support PDB files, so we disable symbols during goma |
+ # compilation because otherwise the redundant debug information generated |
+ # by visual studio (repeated in every .obj file) makes linker |
+ # memory consumption and link times unsustainable (crbug.com/630074). |
+ # Clang on windows does not have this issue. |
+ symbol_level = 1 |
} else if (!is_linux || is_debug || is_official_build || is_chromecast) { |
# Linux is slowed by having symbols as part of the target binary, whereas |
# Mac and Windows have them separate, so in Release Linux, default them off, |