OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//build/config/android/config.gni") | 5 import("//build/config/android/config.gni") |
6 import("//build/config/chrome_build.gni") | 6 import("//build/config/chrome_build.gni") |
7 import("//build/config/chromecast_build.gni") | 7 import("//build/config/chromecast_build.gni") |
8 import("//build/config/sanitizers/sanitizers.gni") | 8 import("//build/config/sanitizers/sanitizers.gni") |
9 import("//build/toolchain/toolchain.gni") | 9 import("//build/toolchain/toolchain.gni") |
10 | 10 |
(...skipping 19 matching lines...) Expand all Loading... |
30 # TODO(sebmarchand): Add support for the PGU (update) phase. | 30 # TODO(sebmarchand): Add support for the PGU (update) phase. |
31 chrome_pgo_phase = 0 | 31 chrome_pgo_phase = 0 |
32 | 32 |
33 # Whether or not the official builds should be built with full WPO. Enabled by | 33 # Whether or not the official builds should be built with full WPO. Enabled by |
34 # default for the PGO and the x64 builds. | 34 # default for the PGO and the x64 builds. |
35 if (chrome_pgo_phase > 0 || target_cpu == "x64") { | 35 if (chrome_pgo_phase > 0 || target_cpu == "x64") { |
36 full_wpo_on_official = true | 36 full_wpo_on_official = true |
37 } else { | 37 } else { |
38 full_wpo_on_official = false | 38 full_wpo_on_official = false |
39 } | 39 } |
| 40 |
| 41 # use_debug_fission: whether to use split DWARF debug info |
| 42 # files. This can reduce link time significantly, but is incompatible |
| 43 # with some utilities such as icecc and ccache. Requires gold and |
| 44 # gcc >= 4.8 or clang. |
| 45 # http://gcc.gnu.org/wiki/DebugFission |
| 46 # |
| 47 # This is a placeholder value indicating that the code below should set |
| 48 # the default. This is necessary to delay the evaluation of the default |
| 49 # value expression until after its input values such as use_gold have |
| 50 # been set, e.g. by a toolchain_args() block. |
| 51 use_debug_fission = "default" |
40 } | 52 } |
41 | 53 |
42 declare_args() { | 54 declare_args() { |
43 # Whether to use the gold linker from binutils instead of lld or bfd. | 55 # Whether to use the gold linker from binutils instead of lld or bfd. |
44 use_gold = !use_lld && !(is_chromecast && is_linux && | 56 use_gold = !use_lld && !(is_chromecast && is_linux && |
45 (current_cpu == "arm" || current_cpu == "mipsel")) && | 57 (current_cpu == "arm" || current_cpu == "mipsel")) && |
46 ((is_linux && (current_cpu == "x64" || current_cpu == "x86" || | 58 ((is_linux && (current_cpu == "x64" || current_cpu == "x86" || |
47 current_cpu == "arm" || current_cpu == "mipsel")) || | 59 current_cpu == "arm" || current_cpu == "mipsel")) || |
48 (is_android && (current_cpu == "x86" || current_cpu == "x64" || | 60 (is_android && (current_cpu == "x86" || current_cpu == "x64" || |
49 current_cpu == "arm"))) | 61 current_cpu == "arm"))) |
(...skipping 15 matching lines...) Expand all Loading... |
65 # Mac and Windows have them separate, so in Release Linux, default them off, | 77 # Mac and Windows have them separate, so in Release Linux, default them off, |
66 # but keep them on for Official builds and Chromecast builds. | 78 # but keep them on for Official builds and Chromecast builds. |
67 symbol_level = 2 | 79 symbol_level = 2 |
68 } else if (using_sanitizer) { | 80 } else if (using_sanitizer) { |
69 # Sanitizers require symbols for filename suppressions to work. | 81 # Sanitizers require symbols for filename suppressions to work. |
70 symbol_level = 1 | 82 symbol_level = 1 |
71 } else { | 83 } else { |
72 symbol_level = 0 | 84 symbol_level = 0 |
73 } | 85 } |
74 } | 86 } |
OLD | NEW |