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 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
478 # This error doesn't happen every time. In VS2013, it seems if the .pch | 463 # This error doesn't happen every time. In VS2013, it seems if the .pch |
479 # file doesn't exist, no error will be generated (probably MS tested this | 464 # file doesn't exist, no error will be generated (probably MS tested this |
480 # case but forgot the other one?). To reproduce this error, do a build, | 465 # case but forgot the other one?). To reproduce this error, do a build, |
481 # then delete the precompile.c.obj file, then build again. | 466 # then delete the precompile.c.obj file, then build again. |
482 cflags_c = [ "/wd4206" ] | 467 cflags_c = [ "/wd4206" ] |
483 } else if (is_mac && !is_official_build && !use_goma) { | 468 } else if (is_mac && !is_official_build && !use_goma) { |
484 precompiled_header = "build/precompile.h" | 469 precompiled_header = "build/precompile.h" |
485 precompiled_source = "//build/precompile.h" | 470 precompiled_source = "//build/precompile.h" |
486 } | 471 } |
487 } | 472 } |
OLD | NEW |