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/goma.gni") | 9 import("//build/toolchain/goma.gni") |
10 import("//build/toolchain/toolchain.gni") | 10 import("//build/toolchain/toolchain.gni") |
(...skipping 29 matching lines...) Expand all Loading... |
40 is_win_fastlink = false | 40 is_win_fastlink = false |
41 | 41 |
42 # Specify the current PGO phase, only used for the Windows MSVS build. Here's | 42 # Specify the current PGO phase, only used for the Windows MSVS build. Here's |
43 # the different values that can be used: | 43 # the different values that can be used: |
44 # 0 : Means that PGO is turned off. | 44 # 0 : Means that PGO is turned off. |
45 # 1 : Used during the PGI (instrumentation) phase. | 45 # 1 : Used during the PGI (instrumentation) phase. |
46 # 2 : Used during the PGO (optimization) phase. | 46 # 2 : Used during the PGO (optimization) phase. |
47 # | 47 # |
48 # TODO(sebmarchand): Add support for the PGU (update) phase. | 48 # TODO(sebmarchand): Add support for the PGU (update) phase. |
49 chrome_pgo_phase = 0 | 49 chrome_pgo_phase = 0 |
| 50 |
| 51 # Android 32-bit non-component, non-clang builds cannot have symbol_level=2 |
| 52 # due to 4GiB file size limit, see https://crbug.com/648948. |
| 53 # Set this flag to true to skip the assertion. |
| 54 ignore_elf32_limitations = false |
50 } | 55 } |
51 | 56 |
52 declare_args() { | 57 declare_args() { |
53 # Whether or not the official builds should be built with full WPO. Enabled by | 58 # Whether or not the official builds should be built with full WPO. Enabled by |
54 # default for the PGO and the x64 builds. | 59 # default for the PGO and the x64 builds. |
55 if (chrome_pgo_phase > 0) { | 60 if (chrome_pgo_phase > 0) { |
56 full_wpo_on_official = true | 61 full_wpo_on_official = true |
57 } else { | 62 } else { |
58 full_wpo_on_official = false | 63 full_wpo_on_official = false |
59 } | 64 } |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 symbol_level = 2 | 102 symbol_level = 2 |
98 } else if (using_sanitizer) { | 103 } else if (using_sanitizer) { |
99 # Sanitizers require symbols for filename suppressions to work. | 104 # Sanitizers require symbols for filename suppressions to work. |
100 symbol_level = 1 | 105 symbol_level = 1 |
101 } else { | 106 } else { |
102 symbol_level = 0 | 107 symbol_level = 0 |
103 } | 108 } |
104 } | 109 } |
105 | 110 |
106 # Assert that the configuration isn't going to hit https://crbug.com/648948. | 111 # Assert that the configuration isn't going to hit https://crbug.com/648948. |
107 assert(!is_android || android_64bit_target_cpu || is_component_build || | 112 assert(ignore_elf32_limitations || !is_android || android_64bit_target_cpu || |
108 symbol_level < 2, | 113 is_component_build || symbol_level < 2 || is_clang, |
109 "Android 32-bit non-component builds cannot have symbol_level=2 " + | 114 "Android 32-bit non-component, non-clang builds cannot have " + |
110 "due to 4GiB file size limit, see https://crbug.com/648948") | 115 "symbol_level=2 due to 4GiB file size limit, see " + |
| 116 "https://crbug.com/648948") |
OLD | NEW |