Index: Source/bindings/scripts/scripts.gni |
diff --git a/Source/bindings/scripts/scripts.gni b/Source/bindings/scripts/scripts.gni |
index b3641b38cbf269ca65bd2b7cde596e272c30d9c5..a30c01aa6d85f7ac0e6b243f877f37ff1c90587f 100644 |
--- a/Source/bindings/scripts/scripts.gni |
+++ b/Source/bindings/scripts/scripts.gni |
@@ -179,13 +179,16 @@ template("idl_compiler") { |
} |
} |
-# Runs the idl_compiler to generate IDL dictionary impl files. |
+# Runs the idl_compiler to generate IDL dictionary and union impl files. |
# |
# Parameters: |
# sources = a list of IDL files to process |
# outputs = a list of files to write to |
-template("idl_dictionary") { |
- output_dir = "$root_gen_dir/blink/" |
+# output_dir = the directory to put the output files |
+# individual_info = a filename of pickle file which contains idl union types |
+# target_component = component to generate code for |
+template("idl_impl") { |
+ dictionary_impl_output_dir = "$root_gen_dir/blink/" |
action(target_name) { |
script = "//third_party/WebKit/Source/bindings/scripts/idl_compiler.py" |
@@ -199,19 +202,27 @@ template("idl_dictionary") { |
"--cache-dir", |
rebase_path(bindings_scripts_output_dir, root_build_dir), |
"--output-dir", |
- rebase_path(output_dir, root_build_dir), |
+ rebase_path(invoker.output_dir, root_build_dir), |
+ "--dictionary-impl-output-dir", |
+ rebase_path(dictionary_impl_output_dir, root_build_dir), |
"--interfaces-info", |
rebase_path("$bindings_modules_output_dir/InterfacesInfoModules.pickle", |
root_build_dir), |
+ "--individual-info", |
+ rebase_path(invoker.individual_info, root_build_dir), |
+ "--target-component", |
+ invoker.target_component, |
"--write-file-only-if-changed=1", |
- "--generate-dictionary-impl", |
+ "--generate-impl", |
rebase_path(idl_files_list, root_build_dir), |
] |
deps = [ |
# FIXME: should be interfaces_info_core (w/o modules) |
# http://crbug.com/358074 |
+ "//third_party/WebKit/Source/bindings/core:interfaces_info_individual_core", |
"//third_party/WebKit/Source/bindings/modules:interfaces_info", |
+ "//third_party/WebKit/Source/bindings/modules:interfaces_info_individual_modules", |
"//third_party/WebKit/Source/bindings/scripts:cached_lex_yacc_tables", |
"//third_party/WebKit/Source/bindings/scripts:cached_jinja_templates", |
] |