| OLD | NEW |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 # Generate C++ and JavaScript source files from mojom files. The output files | 5 # Generate C++ and JavaScript source files from mojom files. The output files |
| 6 # will go under the generated file directory tree with the same path as each | 6 # will go under the generated file directory tree with the same path as each |
| 7 # input file. | 7 # input file. |
| 8 # | 8 # |
| 9 # Parameters: | 9 # Parameters: |
| 10 # | 10 # |
| 11 # sources (required) | 11 # sources (required) |
| 12 # List of source .mojom files to compile. | 12 # List of source .mojom files to compile. |
| 13 # | 13 # |
| 14 # deps (optional) | 14 # deps (optional) |
| 15 # |
| 15 # public_deps (optional) | 16 # public_deps (optional) |
| 17 # |
| 18 # testonly (optional) |
| 19 # |
| 16 # visibility (optional) | 20 # visibility (optional) |
| 17 template("mojom") { | 21 template("mojom") { |
| 18 assert(defined(invoker.sources), | 22 assert(defined(invoker.sources), |
| 19 "\"sources\" must be defined for the $target_name template.") | 23 "\"sources\" must be defined for the $target_name template.") |
| 20 | 24 |
| 21 generator_root = "//mojo/public/tools/bindings" | 25 generator_root = "//mojo/public/tools/bindings" |
| 22 generator_script = "$generator_root/mojom_bindings_generator.py" | 26 generator_script = "$generator_root/mojom_bindings_generator.py" |
| 23 generator_sources = [ | 27 generator_sources = [ |
| 24 generator_script, | 28 generator_script, |
| 25 "$generator_root/generators/cpp_templates/enum_declaration.tmpl", | 29 "$generator_root/generators/cpp_templates/enum_declaration.tmpl", |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 "-d", rebase_path("//", root_build_dir), | 104 "-d", rebase_path("//", root_build_dir), |
| 101 "-I", rebase_path("//", root_build_dir), | 105 "-I", rebase_path("//", root_build_dir), |
| 102 "-o", "{{source_gen_dir}}", | 106 "-o", "{{source_gen_dir}}", |
| 103 ] | 107 ] |
| 104 } | 108 } |
| 105 | 109 |
| 106 source_set(target_name) { | 110 source_set(target_name) { |
| 107 if (defined(invoker.visibility)) { | 111 if (defined(invoker.visibility)) { |
| 108 visibility = invoker.visibility | 112 visibility = invoker.visibility |
| 109 } | 113 } |
| 114 if (defined(invoker.testonly)) { |
| 115 testonly = invoker.testonly |
| 116 } |
| 110 sources = process_file_template(invoker.sources, generator_cpp_outputs) | 117 sources = process_file_template(invoker.sources, generator_cpp_outputs) |
| 111 data = process_file_template(invoker.sources, generator_js_outputs) | 118 data = process_file_template(invoker.sources, generator_js_outputs) |
| 112 deps = [ | 119 deps = [ |
| 113 ":$generator_target_name", | 120 ":$generator_target_name", |
| 114 "//mojo/public/cpp/bindings", | 121 "//mojo/public/cpp/bindings", |
| 115 ] | 122 ] |
| 116 if (defined(invoker.deps)) { | 123 if (defined(invoker.deps)) { |
| 117 deps += invoker.deps | 124 deps += invoker.deps |
| 118 } | 125 } |
| 119 if (defined(invoker.public_deps)) { | 126 if (defined(invoker.public_deps)) { |
| 120 public_deps = invoker.public_deps | 127 public_deps = invoker.public_deps |
| 121 } | 128 } |
| 122 } | 129 } |
| 123 } | 130 } |
| OLD | NEW |