Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(430)

Unified Diff: Source/bindings/derived_sources.gyp

Issue 15801003: IDL parser rewrite in Python (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Revised. Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/bindings/derived_sources.gyp
diff --git a/Source/bindings/derived_sources.gyp b/Source/bindings/derived_sources.gyp
index aed9de3bd068d281896f493fd74668f18b9aa5f6..f905054dc364f9c3c668bbcd7b85d7f5db8fa992 100644
--- a/Source/bindings/derived_sources.gyp
+++ b/Source/bindings/derived_sources.gyp
@@ -51,6 +51,10 @@
'<@(deprecated_perl_idl_files)',
'<@(python_idl_files)',
],
+ 'webcore_test_support_idl_files': [
+ '<@(deprecated_perl_webcore_test_support_idl_files)',
+ '<@(python_webcore_test_support_idl_files)',
+ ],
'bindings_output_dir': '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings',
'generated_global_constructors_idl_files': [
@@ -152,88 +156,89 @@
'message': 'Resolving partial interfaces dependencies in all IDL files',
}]
},
- {
- 'target_name': 'deprecated_perl_bindings_sources',
- 'type': 'none',
- # The 'binding' rule generates .h files, so mark as hard_dependency, per:
- # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependencies
- 'hard_dependency': 1,
- 'dependencies': [
- 'interface_dependencies',
- '../core/core_derived_sources.gyp:generate_test_support_idls',
- ],
- 'sources': [
- '<@(deprecated_perl_idl_files)',
- '<@(deprecated_perl_webcore_test_support_idl_files)',
- ],
- 'rules': [{
- 'rule_name': 'deprecated_perl_binding',
- 'extension': 'idl',
- 'msvs_external_rule': 1,
- 'inputs': [
- 'scripts/deprecated_generate_bindings.pl',
- 'scripts/deprecated_code_generator_v8.pm',
- 'scripts/deprecated_idl_parser.pm',
- 'scripts/deprecated_idl_serializer.pm',
- '../core/scripts/preprocessor.pm',
- 'scripts/IDLAttributes.txt',
- # FIXME: If the dependency structure changes, we rebuild all files,
- # since we're not computing dependencies file-by-file in the build.
- '<(SHARED_INTERMEDIATE_DIR)/InterfaceDependencies.txt',
- # FIXME: Similarly, if any partial interface changes, rebuild
- # everything, since every IDL potentially depends on them, because
- # we're not computing dependencies file-by-file.
- #
- # If a new partial interface is added, need to regyp to update these
- # dependencies, as these are computed statically at gyp runtime.
- '<!@pymod_do_main(list_idl_files_with_partial_interface <@(perl_and_python_idl_files))',
- # Generated IDLs are all partial interfaces, hence everything
- # potentially depends on them.
- '<@(generated_global_constructors_idl_files)',
- ],
- 'outputs': [
- '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp',
- '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h',
- ],
- 'variables': {
- # IDL include paths. The generator will search recursively for IDL
- # files under these locations.
- 'generator_include_dirs': [
- '--include', '../core',
- '--include', '../modules',
- '--include', '<(SHARED_INTERMEDIATE_DIR)/webkit',
- ],
- # Hook for embedders to specify extra directories to find IDL files.
- 'extra_blink_generator_include_dirs%': [],
- },
- 'msvs_cygwin_shell': 0,
- # sanitize-win-build-log.sed uses a regex which matches this command
- # line (Perl script + .idl file being processed).
- # Update that regex if command line changes (other than changing flags)
- 'action': [
- '<(perl_exe)',
- '-w',
- '-Iscripts',
- '-I../core/scripts',
- '-I../../../JSON/out/lib/perl5',
- 'scripts/deprecated_generate_bindings.pl',
- '--outputDir',
- '<(bindings_output_dir)',
- '--idlAttributesFile',
- 'scripts/IDLAttributes.txt',
- '<@(generator_include_dirs)',
- '<@(extra_blink_generator_include_dirs)',
- '--interfaceDependenciesFile',
- '<(SHARED_INTERMEDIATE_DIR)/InterfaceDependencies.txt',
- '--additionalIdlFiles',
- '<(deprecated_perl_webcore_test_support_idl_files)',
- '<@(preprocessor)',
- '<@(write_file_only_if_changed)',
- '<(RULE_INPUT_PATH)',
- ],
- 'message': 'Generating binding from <(RULE_INPUT_PATH)',
- }],
- },
+ # FIXME (1/4): uncomment before landing!!
+ #{
+ # 'target_name': 'deprecated_perl_bindings_sources',
+ # 'type': 'none',
+ # # The 'binding' rule generates .h files, so mark as hard_dependency, per:
+ # # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependencies
+ # 'hard_dependency': 1,
+ # 'dependencies': [
+ # 'interface_dependencies',
+ # '../core/core_derived_sources.gyp:generate_test_support_idls',
+ # ],
+ # 'sources': [
+ # '<@(deprecated_perl_idl_files)',
+ # '<@(deprecated_perl_webcore_test_support_idl_files)',
+ # ],
+ # 'rules': [{
+ # 'rule_name': 'deprecated_perl_binding',
+ # 'extension': 'idl',
+ # 'msvs_external_rule': 1,
+ # 'inputs': [
+ # 'scripts/deprecated_generate_bindings.pl',
+ # 'scripts/deprecated_code_generator_v8.pm',
+ # 'scripts/deprecated_idl_parser.pm',
+ # 'scripts/deprecated_idl_serializer.pm',
+ # '../core/scripts/preprocessor.pm',
+ # 'scripts/IDLAttributes.txt',
+ # # FIXME: If the dependency structure changes, we rebuild all files,
+ # # since we're not computing dependencies file-by-file in the build.
+ # '<(SHARED_INTERMEDIATE_DIR)/InterfaceDependencies.txt',
+ # # FIXME: Similarly, if any partial interface changes, rebuild
+ # # everything, since every IDL potentially depends on them, because
+ # # we're not computing dependencies file-by-file.
+ # #
+ # # If a new partial interface is added, need to regyp to update these
+ # # dependencies, as these are computed statically at gyp runtime.
+ # '<!@pymod_do_main(list_idl_files_with_partial_interface <@(perl_and_python_idl_files))',
+ # # Generated IDLs are all partial interfaces, hence everything
+ # # potentially depends on them.
+ # '<@(generated_global_constructors_idl_files)',
+ # ],
+ # 'outputs': [
+ # '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).cpp',
+ # '<(bindings_output_dir)/V8<(RULE_INPUT_ROOT).h',
+ # ],
+ # 'variables': {
+ # # IDL include paths. The generator will search recursively for IDL
+ # # files under these locations.
+ # 'generator_include_dirs': [
+ # '--include', '../core',
+ # '--include', '../modules',
+ # '--include', '<(SHARED_INTERMEDIATE_DIR)/webkit',
+ # ],
+ # # Hook for embedders to specify extra directories to find IDL files.
+ # 'extra_blink_generator_include_dirs%': [],
+ # },
+ # 'msvs_cygwin_shell': 0,
+ # # sanitize-win-build-log.sed uses a regex which matches this command
+ # # line (Perl script + .idl file being processed).
+ # # Update that regex if command line changes (other than changing flags)
+ # 'action': [
+ # '<(perl_exe)',
+ # '-w',
+ # '-Iscripts',
+ # '-I../core/scripts',
+ # '-I../../../JSON/out/lib/perl5',
+ # 'scripts/deprecated_generate_bindings.pl',
+ # '--outputDir',
+ # '<(bindings_output_dir)',
+ # '--idlAttributesFile',
+ # 'scripts/IDLAttributes.txt',
+ # '<@(generator_include_dirs)',
+ # '<@(extra_blink_generator_include_dirs)',
+ # '--interfaceDependenciesFile',
+ # '<(SHARED_INTERMEDIATE_DIR)/InterfaceDependencies.txt',
+ # '--additionalIdlFiles',
+ # '<(deprecated_perl_webcore_test_support_idl_files)',
+ # '<@(preprocessor)',
+ # '<@(write_file_only_if_changed)',
+ # '<(RULE_INPUT_PATH)',
+ # ],
+ # 'message': 'Generating binding from <(RULE_INPUT_PATH)',
+ # }],
+ #},
{
'target_name': 'python_bindings_sources',
'type': 'none',
@@ -247,6 +252,9 @@
'sources': [
'<@(python_idl_files)',
'<@(python_webcore_test_support_idl_files)',
+ # FIXME (2/4): remove perl files from here before landing!!
+ '<@(deprecated_perl_idl_files)',
+ '<@(deprecated_perl_webcore_test_support_idl_files)',
],
'rules': [{
'rule_name': 'python_binding',
@@ -254,9 +262,19 @@
'msvs_external_rule': 1,
'inputs': [
'scripts/idl_compiler.py',
+ '../../../ply/lex.py',
+ '../../../ply/yacc.py',
+ '../../../../tools/idl_parser/idl_lexer.py',
+ '../../../../tools/idl_parser/idl_node.py',
+ '../../../../tools/idl_parser/idl_parser.py',
+ 'scripts/blink_idl_lexer.py',
+ 'scripts/blink_idl_parser.py',
+ 'scripts/code_generator_v8.py',
+ 'scripts/idl_definitions.py',
+ 'scripts/idl_definitions_builder.py',
'scripts/idl_reader.py',
+ 'scripts/idl_validator.py',
'scripts/interface_dependency_resolver.py',
- 'scripts/code_generator_v8.py',
'scripts/IDLAttributes.txt',
# FIXME: If the dependency structure changes, we rebuild all files,
# since we're not computing dependencies file-by-file in the build.
@@ -300,8 +318,9 @@
'--interface-dependencies-file',
'<(SHARED_INTERMEDIATE_DIR)/InterfaceDependencies.txt',
'--additional-idl-files',
- '<(python_webcore_test_support_idl_files)',
+ '<(webcore_test_support_idl_files)',
'<@(write_file_only_if_changed)',
+ '--dump-json-and-pickle', # FIXME (3/4): remove before landing!!
'<(RULE_INPUT_PATH)',
],
'message': 'Generating binding from <(RULE_INPUT_PATH)',
@@ -312,7 +331,8 @@
'type': 'none',
'dependencies': [
'interface_dependencies',
- 'deprecated_perl_bindings_sources',
+ # FIXME (4/4): uncomment before landing!!
+ # 'deprecated_perl_bindings_sources',
'python_bindings_sources',
],
'actions': [{
« no previous file with comments | « no previous file | Source/bindings/scripts/blink_idl_lexer.py » ('j') | Source/bindings/scripts/blink_idl_lexer.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698