| OLD | NEW |
| 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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/compiler/compiler.gni") | 7 import("//build/config/compiler/compiler.gni") |
| 8 import("//build/toolchain/ccache.gni") | 8 import("//build/toolchain/ccache.gni") |
| 9 | 9 |
| 10 if (current_cpu == "arm") { | 10 if (current_cpu == "arm") { |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 43 # information to analyze. | 43 # information to analyze. |
| 44 # Requires profiling to be set to true. | 44 # Requires profiling to be set to true. |
| 45 enable_full_stack_frames_for_profiling = false | 45 enable_full_stack_frames_for_profiling = false |
| 46 | 46 |
| 47 # TODO(GYP): We should be using 64-bit gold for linking on both 64-bit Linux | 47 # TODO(GYP): We should be using 64-bit gold for linking on both 64-bit Linux |
| 48 # and 32-bit linux; 32-bit Gold runs out of address-space on 32-bit builds. | 48 # and 32-bit linux; 32-bit Gold runs out of address-space on 32-bit builds. |
| 49 # However, something isn't quite working right on the 32-bit builds. | 49 # However, something isn't quite working right on the 32-bit builds. |
| 50 use_gold = is_linux && current_cpu == "x64" | 50 use_gold = is_linux && current_cpu == "x64" |
| 51 | 51 |
| 52 # When we are going to use gold we need to find it. | 52 # When we are going to use gold we need to find it. |
| 53 if (use_gold) { | 53 # This is initialized below, after use_gold might have been overridden. |
| 54 gold_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin", | 54 gold_path = false |
| 55 root_build_dir) | |
| 56 } else { | |
| 57 gold_path = "" | |
| 58 } | |
| 59 | 55 |
| 60 # use_debug_fission: whether to use split DWARF debug info | 56 # use_debug_fission: whether to use split DWARF debug info |
| 61 # files. This can reduce link time significantly, but is incompatible | 57 # files. This can reduce link time significantly, but is incompatible |
| 62 # with some utilities such as icecc and ccache. Requires gold and | 58 # with some utilities such as icecc and ccache. Requires gold and |
| 63 # gcc >= 4.8 or clang. | 59 # gcc >= 4.8 or clang. |
| 64 # http://gcc.gnu.org/wiki/DebugFission | 60 # http://gcc.gnu.org/wiki/DebugFission |
| 65 use_debug_fission = is_debug && !is_win && use_gold && | 61 # |
| 66 linux_use_bundled_binutils && !use_ccache | 62 # This is a placeholder value indicating that the code below should set |
| 63 # the default. This is necessary to delay the evaluation of the default |
| 64 # value expression until after its input values such as use_gold have |
| 65 # been set, e.g. by a toolchain_args() block. |
| 66 use_debug_fission = "default" |
| 67 | 67 |
| 68 if (is_win) { | 68 if (is_win) { |
| 69 # Whether the VS xtree header has been patched to disable warning 4702. If | 69 # Whether the VS xtree header has been patched to disable warning 4702. If |
| 70 # it has, then we don't need to disable 4702 (unreachable code warning). | 70 # it has, then we don't need to disable 4702 (unreachable code warning). |
| 71 # The patch is preapplied to the internal toolchain and hence all bots. | 71 # The patch is preapplied to the internal toolchain and hence all bots. |
| 72 msvs_xtree_patched = false | 72 msvs_xtree_patched = false |
| 73 } | 73 } |
| 74 } | 74 } |
| 75 | 75 |
| 76 # Apply the default logic for these values if they were not set explicitly. |
| 77 if (gold_path == false) { |
| 78 if (use_gold) { |
| 79 gold_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin", |
| 80 root_build_dir) |
| 81 } else { |
| 82 gold_path = "" |
| 83 } |
| 84 } |
| 85 |
| 86 if (use_debug_fission == "default") { |
| 87 use_debug_fission = is_debug && !is_win && use_gold && |
| 88 linux_use_bundled_binutils && !use_ccache |
| 89 } |
| 90 |
| 76 # default_include_dirs --------------------------------------------------------- | 91 # default_include_dirs --------------------------------------------------------- |
| 77 # | 92 # |
| 78 # This is a separate config so that third_party code (which would not use the | 93 # This is a separate config so that third_party code (which would not use the |
| 79 # source root and might have conflicting versions of some headers) can remove | 94 # source root and might have conflicting versions of some headers) can remove |
| 80 # this and specify their own include paths. | 95 # this and specify their own include paths. |
| 81 config("default_include_dirs") { | 96 config("default_include_dirs") { |
| 82 include_dirs = [ | 97 include_dirs = [ |
| 83 "//", | 98 "//", |
| 84 root_gen_dir, | 99 root_gen_dir, |
| 85 ] | 100 ] |
| (...skipping 1029 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1115 if (symbol_level == 0) { | 1130 if (symbol_level == 0) { |
| 1116 configs = [ ":no_symbols" ] | 1131 configs = [ ":no_symbols" ] |
| 1117 } else if (symbol_level == 1) { | 1132 } else if (symbol_level == 1) { |
| 1118 configs = [ ":minimal_symbols" ] | 1133 configs = [ ":minimal_symbols" ] |
| 1119 } else if (symbol_level == 2) { | 1134 } else if (symbol_level == 2) { |
| 1120 configs = [ ":symbols" ] | 1135 configs = [ ":symbols" ] |
| 1121 } else { | 1136 } else { |
| 1122 assert(false) | 1137 assert(false) |
| 1123 } | 1138 } |
| 1124 } | 1139 } |
| OLD | NEW |