| 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/config/nacl/config.gni") | 8 import("//build/config/nacl/config.gni") |
| 9 import("//build/toolchain/cc_wrapper.gni") | 9 import("//build/toolchain/cc_wrapper.gni") |
| 10 import("//build/toolchain/toolchain.gni") | 10 import("//build/toolchain/toolchain.gni") |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 64 exclude_unwind_tables = is_chrome_branded && is_official_build | 64 exclude_unwind_tables = is_chrome_branded && is_official_build |
| 65 | 65 |
| 66 # If true, gold linker will save symbol table inside object files. | 66 # If true, gold linker will save symbol table inside object files. |
| 67 # This speeds up gdb startup by 60% | 67 # This speeds up gdb startup by 60% |
| 68 gdb_index = false | 68 gdb_index = false |
| 69 | 69 |
| 70 # If true, optimize for size. Does not affect windows builds. | 70 # If true, optimize for size. Does not affect windows builds. |
| 71 # Linux & Mac favor speed over size. | 71 # Linux & Mac favor speed over size. |
| 72 # TODO(brettw) it's weird that Mac and desktop Linux are different. We should | 72 # TODO(brettw) it's weird that Mac and desktop Linux are different. We should |
| 73 # explore favoring size over speed in this case as well. | 73 # explore favoring size over speed in this case as well. |
| 74 optimize_for_size = is_android || is_ios | 74 optimize_for_size = true #is_android || is_ios |
| 75 | 75 |
| 76 # Enable fatal linker warnings. Building Chromium with certain versions | 76 # Enable fatal linker warnings. Building Chromium with certain versions |
| 77 # of binutils can cause linker warning. | 77 # of binutils can cause linker warning. |
| 78 # See: https://bugs.chromium.org/p/chromium/issues/detail?id=457359 | 78 # See: https://bugs.chromium.org/p/chromium/issues/detail?id=457359 |
| 79 fatal_linker_warnings = true | 79 fatal_linker_warnings = true |
| 80 | 80 |
| 81 # AFDO (Automatic Feedback Directed Optimizer) is a form of profile-guided | 81 # AFDO (Automatic Feedback Directed Optimizer) is a form of profile-guided |
| 82 # optimization that GCC supports. It used by ChromeOS in their official | 82 # optimization that GCC supports. It used by ChromeOS in their official |
| 83 # builds. To use it, set auto_profile_path to the path to a file containing | 83 # builds. To use it, set auto_profile_path to the path to a file containing |
| 84 # the needed gcov profiling data. | 84 # the needed gcov profiling data. |
| (...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 } | 230 } |
| 231 | 231 |
| 232 if (is_clang && !is_nacl) { | 232 if (is_clang && !is_nacl) { |
| 233 # This is here so that all files get recompiled after a clang roll and | 233 # This is here so that all files get recompiled after a clang roll and |
| 234 # when turning clang on or off. (defines are passed via the command line, | 234 # when turning clang on or off. (defines are passed via the command line, |
| 235 # and build system rebuild things when their commandline changes). Nothing | 235 # and build system rebuild things when their commandline changes). Nothing |
| 236 # should ever read this define. | 236 # should ever read this define. |
| 237 defines += [ "CR_CLANG_REVISION=$clang_revision" ] | 237 defines += [ "CR_CLANG_REVISION=$clang_revision" ] |
| 238 } | 238 } |
| 239 | 239 |
| 240 cflags += [ "-g" ] |
| 241 |
| 240 # Non-Mac Posix compiler flags setup. | 242 # Non-Mac Posix compiler flags setup. |
| 241 # ----------------------------------- | 243 # ----------------------------------- |
| 242 if (is_posix && !(is_mac || is_ios)) { | 244 if (is_posix && !(is_mac || is_ios)) { |
| 243 if (enable_profiling) { | 245 if (enable_profiling) { |
| 244 if (!is_debug) { | 246 if (!is_debug) { |
| 245 cflags += [ "-g" ] | 247 cflags += [ "-g" ] |
| 246 | 248 |
| 247 if (enable_full_stack_frames_for_profiling) { | 249 if (enable_full_stack_frames_for_profiling) { |
| 248 cflags += [ | 250 cflags += [ |
| 249 "-fno-inline", | 251 "-fno-inline", |
| (...skipping 1370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1620 | 1622 |
| 1621 if (is_ios || is_mac) { | 1623 if (is_ios || is_mac) { |
| 1622 # On Mac and iOS, this enables support for ARC (automatic ref-counting). | 1624 # On Mac and iOS, this enables support for ARC (automatic ref-counting). |
| 1623 # See http://clang.llvm.org/docs/AutomaticReferenceCounting.html. | 1625 # See http://clang.llvm.org/docs/AutomaticReferenceCounting.html. |
| 1624 config("enable_arc") { | 1626 config("enable_arc") { |
| 1625 common_flags = [ "-fobjc-arc" ] | 1627 common_flags = [ "-fobjc-arc" ] |
| 1626 cflags_objc = common_flags | 1628 cflags_objc = common_flags |
| 1627 cflags_objcc = common_flags | 1629 cflags_objcc = common_flags |
| 1628 } | 1630 } |
| 1629 } | 1631 } |
| OLD | NEW |