| 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/allocator.gni") | 5 import("//build/config/allocator.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/crypto.gni") | 8 import("//build/config/crypto.gni") |
| 9 import("//build/config/features.gni") | 9 import("//build/config/features.gni") |
| 10 import("//build/config/sanitizers/sanitizers.gni") | 10 import("//build/config/sanitizers/sanitizers.gni") |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 # Iterator debugging is generally useful for catching bugs. But it can | 28 # Iterator debugging is generally useful for catching bugs. But it can |
| 29 # introduce extra locking to check the state of an iterator against the state | 29 # introduce extra locking to check the state of an iterator against the state |
| 30 # of the current object. For iterator- and thread-heavy code, this can | 30 # of the current object. For iterator- and thread-heavy code, this can |
| 31 # significantly slow execution. | 31 # significantly slow execution. |
| 32 enable_iterator_debugging = true | 32 enable_iterator_debugging = true |
| 33 | 33 |
| 34 # Set to true to enable dcheck in Release builds. | 34 # Set to true to enable dcheck in Release builds. |
| 35 dcheck_always_on = false | 35 dcheck_always_on = false |
| 36 } | 36 } |
| 37 | 37 |
| 38 # Because of the source assignment filter, many targets end up over-filtering | |
| 39 # their sources if the output directory contains a platform name. Assert that | |
| 40 # this doesn't happen. http://crbug.com/548283 | |
| 41 template("assert_valid_out_dir") { | |
| 42 assert(target_name != "") # Mark as used. | |
| 43 assert( | |
| 44 invoker.sources == invoker.actual_sources, | |
| 45 "Do not use a platform name in your output directory (found \"$root_build_
dir\"). http://crbug.com/548283") | |
| 46 } | |
| 47 | |
| 48 assert_valid_out_dir("_check_output_dir_has_no_platform_name") { | |
| 49 actual_sources = [ "$root_build_dir/foo" ] | |
| 50 sources = actual_sources | |
| 51 } | |
| 52 | |
| 53 # TODO(brettw) Most of these should be removed. Instead of global feature | 38 # TODO(brettw) Most of these should be removed. Instead of global feature |
| 54 # flags, we should have more modular flags that apply only to a target and its | 39 # flags, we should have more modular flags that apply only to a target and its |
| 55 # dependents. For example, depending on the "x11" meta-target should define | 40 # dependents. For example, depending on the "x11" meta-target should define |
| 56 # USE_X11 for all dependents so that everything that could use X11 gets the | 41 # USE_X11 for all dependents so that everything that could use X11 gets the |
| 57 # define, but anything that doesn't depend on X11 doesn't see it. | 42 # define, but anything that doesn't depend on X11 doesn't see it. |
| 58 # | 43 # |
| 59 # For now we define these globally to match the current GYP build. | 44 # For now we define these globally to match the current GYP build. |
| 60 config("feature_flags") { | 45 config("feature_flags") { |
| 61 # TODO(brettw) this probably needs to be parameterized. | 46 # TODO(brettw) this probably needs to be parameterized. |
| 62 defines = [ | 47 defines = [ |
| (...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 475 # This error doesn't happen every time. In VS2013, it seems if the .pch | 460 # This error doesn't happen every time. In VS2013, it seems if the .pch |
| 476 # file doesn't exist, no error will be generated (probably MS tested this | 461 # file doesn't exist, no error will be generated (probably MS tested this |
| 477 # case but forgot the other one?). To reproduce this error, do a build, | 462 # case but forgot the other one?). To reproduce this error, do a build, |
| 478 # then delete the precompile.c.obj file, then build again. | 463 # then delete the precompile.c.obj file, then build again. |
| 479 cflags_c = [ "/wd4206" ] | 464 cflags_c = [ "/wd4206" ] |
| 480 } else if (is_mac && !is_official_build && !use_goma) { | 465 } else if (is_mac && !is_official_build && !use_goma) { |
| 481 precompiled_header = "build/precompile.h" | 466 precompiled_header = "build/precompile.h" |
| 482 precompiled_source = "//build/precompile.h" | 467 precompiled_source = "//build/precompile.h" |
| 483 } | 468 } |
| 484 } | 469 } |
| OLD | NEW |