| Index: Tools/Scripts/webkitpy/bindings/main.py
|
| diff --git a/Tools/Scripts/webkitpy/bindings/main.py b/Tools/Scripts/webkitpy/bindings/main.py
|
| index 1439b20607fae062e4e08ee164f1293218cc6f40..c1cf97171d035f1221083203940dc33a41f889d1 100644
|
| --- a/Tools/Scripts/webkitpy/bindings/main.py
|
| +++ b/Tools/Scripts/webkitpy/bindings/main.py
|
| @@ -45,6 +45,7 @@ from bindings.scripts.compute_interfaces_info_individual import compute_info_ind
|
| import bindings.scripts.compute_interfaces_info_overall
|
| from bindings.scripts.compute_interfaces_info_overall import compute_interfaces_info_overall, interfaces_info
|
| from bindings.scripts.idl_compiler import IdlCompilerDictionaryImpl, IdlCompilerV8
|
| +from bindings.scripts.utilities import idl_filename_to_component
|
|
|
|
|
| PASS_MESSAGE = 'All tests PASS!'
|
| @@ -243,6 +244,19 @@ def bindings_tests(output_directory, verbose):
|
| idl_compiler = IdlCompilerV8(output_dir,
|
| interfaces_info=interfaces_info,
|
| only_if_changed=True)
|
| + if component == 'core':
|
| + partial_interface_output_dir = os.path.join(output_directory,
|
| + 'modules')
|
| + if not os.path.exists(partial_interface_output_dir):
|
| + os.makedirs(partial_interface_output_dir)
|
| + idl_partial_interface_compiler = IdlCompilerV8(
|
| + partial_interface_output_dir,
|
| + interfaces_info=interfaces_info,
|
| + only_if_changed=True,
|
| + target_component='modules')
|
| + else:
|
| + idl_partial_interface_compiler = None
|
| +
|
| dictionary_impl_compiler = IdlCompilerDictionaryImpl(
|
| output_dir, interfaces_info=interfaces_info,
|
| only_if_changed=True)
|
| @@ -261,8 +275,12 @@ def bindings_tests(output_directory, verbose):
|
| idl_basename = os.path.basename(idl_path)
|
| idl_compiler.compile_file(idl_path)
|
| definition_name, _ = os.path.splitext(idl_basename)
|
| - if (definition_name in interfaces_info and interfaces_info[definition_name]['is_dictionary']):
|
| - dictionary_impl_compiler.compile_file(idl_path)
|
| + if definition_name in interfaces_info:
|
| + interface_info = interfaces_info[definition_name]
|
| + if interface_info['is_dictionary']:
|
| + dictionary_impl_compiler.compile_file(idl_path)
|
| + if component == 'core' and interface_info['dependencies_other_component_full_paths']:
|
| + idl_partial_interface_compiler.compile_file(idl_path)
|
| if verbose:
|
| print 'Compiled: %s' % idl_path
|
| finally:
|
|
|