| OLD | NEW |
| 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 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 # This file is meant to be included into an target to create a unittest that | 5 # This file is meant to be included into an target to create a unittest that |
| 6 # invokes a set of no-compile tests. A no-compile test is a test that asserts | 6 # invokes a set of no-compile tests. A no-compile test is a test that asserts |
| 7 # a particular construct will not compile. | 7 # a particular construct will not compile. |
| 8 # | 8 # |
| 9 # Also see: | 9 # Also see: |
| 10 # http://dev.chromium.org/developers/testing/no-compile-tests | 10 # http://dev.chromium.org/developers/testing/no-compile-tests |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 62 enable_nocompile_tests = false | 62 enable_nocompile_tests = false |
| 63 } | 63 } |
| 64 | 64 |
| 65 if (enable_nocompile_tests) { | 65 if (enable_nocompile_tests) { |
| 66 template("nocompile_test") { | 66 template("nocompile_test") { |
| 67 nocompile_target = target_name + "_run_nocompile" | 67 nocompile_target = target_name + "_run_nocompile" |
| 68 | 68 |
| 69 action_foreach(nocompile_target) { | 69 action_foreach(nocompile_target) { |
| 70 script = "//tools/nocompile_driver.py" | 70 script = "//tools/nocompile_driver.py" |
| 71 sources = invoker.sources | 71 sources = invoker.sources |
| 72 |
| 73 result_path = "$target_gen_dir/{{source_name_part}}_nc.cc" |
| 74 depfile = "${result_path}.d" |
| 72 outputs = [ | 75 outputs = [ |
| 73 "$target_gen_dir/{{source_name_part}}_nc.cc", | 76 result_path, |
| 74 ] | 77 ] |
| 75 args = [ | 78 args = [ |
| 76 "4", # number of compilers to invoke in parallel. | 79 "4", # number of compilers to invoke in parallel. |
| 77 "{{source}}", | 80 "{{source}}", |
| 78 "-Wall -Werror -Wfatal-errors " + "-I" + | 81 "-Wall -Werror -Wfatal-errors " + "-I" + |
| 79 rebase_path("//", root_build_dir), | 82 rebase_path("//", root_build_dir), |
| 80 "{{output}}", | 83 "{{output}}", |
| 81 ] | 84 ] |
| 82 } | 85 } |
| 83 | 86 |
| 84 test(target_name) { | 87 test(target_name) { |
| 85 deps = invoker.deps + [ ":$nocompile_target" ] | 88 deps = invoker.deps + [ ":$nocompile_target" ] |
| 86 sources = get_target_outputs(":$nocompile_target") | 89 sources = get_target_outputs(":$nocompile_target") |
| 87 } | 90 } |
| 88 } | 91 } |
| 89 } | 92 } |
| OLD | NEW |