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 # Defines a static library corresponding to the output of schema compiler tools | 5 # Defines a static library corresponding to the output of schema compiler tools |
6 # over a set of extensions API schemas (IDL or JSON format.) The library target | 6 # over a set of extensions API schemas (IDL or JSON format.) The library target |
7 # has implicit hard dependencies on all schema files listed by the invoker and | 7 # has implicit hard dependencies on all schema files listed by the invoker and |
8 # is itself a hard dependency. | 8 # is itself a hard dependency. |
9 # | 9 # |
10 # Invocations of this template may use the following variables: | 10 # Invocations of this template may use the following variables: |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 } | 147 } |
148 | 148 |
149 if (bundle_registration) { | 149 if (bundle_registration) { |
150 uncompiled_sources = [] | 150 uncompiled_sources = [] |
151 if (defined(invoker.uncompiled_sources)) { | 151 if (defined(invoker.uncompiled_sources)) { |
152 uncompiled_sources = invoker.uncompiled_sources | 152 uncompiled_sources = invoker.uncompiled_sources |
153 } | 153 } |
154 | 154 |
155 assert(defined(invoker.impl_dir), | 155 assert(defined(invoker.impl_dir), |
156 "\"impl_dir\" must be defined for the $target_name template.") | 156 "\"impl_dir\" must be defined for the $target_name template.") |
157 impl_dir = invoker.impl_dir | 157 |
| 158 # Child directory inside the generated file tree. |
| 159 gen_child_dir = rebase_path(invoker.impl_dir, "//") |
158 | 160 |
159 bundle_generator_registration_name = | 161 bundle_generator_registration_name = |
160 target_name + "_bundle_generator_registration" | 162 target_name + "_bundle_generator_registration" |
161 action(bundle_generator_registration_name) { | 163 action(bundle_generator_registration_name) { |
162 script = compiler_script | 164 script = compiler_script |
163 inputs = compiler_sources + invoker.sources + uncompiled_sources | 165 inputs = compiler_sources + invoker.sources + uncompiled_sources |
164 outputs = [ | 166 outputs = [ |
165 "$root_gen_dir/$impl_dir/generated_api_registration.cc", | 167 "$root_gen_dir/$gen_child_dir/generated_api_registration.cc", |
166 "$root_gen_dir/$impl_dir/generated_api_registration.h", | 168 "$root_gen_dir/$gen_child_dir/generated_api_registration.h", |
167 ] | 169 ] |
168 args = [ | 170 args = [ |
169 "--root=" + rebase_path("//", root_build_dir), | 171 "--root=" + rebase_path("//", root_build_dir), |
170 "--destdir=" + rebase_path(root_gen_dir, root_build_dir), | 172 "--destdir=" + rebase_path(root_gen_dir, root_build_dir), |
171 "--namespace=$root_namespace", | 173 "--namespace=$root_namespace", |
172 "--generator=cpp-bundle-registration", | 174 "--generator=cpp-bundle-registration", |
173 "--impl-dir=" + rebase_path(impl_dir, "//"), | 175 "--impl-dir=$gen_child_dir", |
174 "--include-rules=$schema_include_rules", | 176 "--include-rules=$schema_include_rules", |
175 ] + rebase_path(invoker.sources, root_build_dir) + | 177 ] + rebase_path(invoker.sources, root_build_dir) + |
176 rebase_path(uncompiled_sources, root_build_dir) | 178 rebase_path(uncompiled_sources, root_build_dir) |
177 } | 179 } |
178 } | 180 } |
179 | 181 |
180 # Compute the contents of the library/source set. | 182 # Compute the contents of the library/source set. |
181 lib_sources = invoker.sources | 183 lib_sources = invoker.sources |
182 lib_deps = [] | 184 lib_deps = [] |
183 lib_public_deps = [] | 185 lib_public_deps = [] |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 | 233 |
232 if (defined(invoker.visibility)) { | 234 if (defined(invoker.visibility)) { |
233 visibility = invoker.visibility | 235 visibility = invoker.visibility |
234 } | 236 } |
235 if (defined(invoker.output_name)) { | 237 if (defined(invoker.output_name)) { |
236 output_name = invoker.output_name | 238 output_name = invoker.output_name |
237 } | 239 } |
238 } | 240 } |
239 } | 241 } |
240 } | 242 } |
OLD | NEW |