Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # | 1 # |
| 2 # Copyright (C) 2013 Google Inc. All rights reserved. | 2 # Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 # | 3 # |
| 4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
| 5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
| 6 # met: | 6 # met: |
| 7 # | 7 # |
| 8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
| 9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
| 10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 93 ], | 93 ], |
| 94 }, | 94 }, |
| 95 | 95 |
| 96 'target_defaults': { | 96 'target_defaults': { |
| 97 'variables': { | 97 'variables': { |
| 98 'optimize': 'max', | 98 'optimize': 'max', |
| 99 }, | 99 }, |
| 100 }, | 100 }, |
| 101 | 101 |
| 102 'targets': [{ | 102 'targets': [{ |
| 103 'target_name': 'supplemental_dependencies', | 103 'target_name': 'interface_dependencies', |
| 104 'type': 'none', | 104 'type': 'none', |
| 105 'actions': [{ | 105 'actions': [{ |
| 106 'action_name': 'generatePartialInterfacesDependency', | 106 'action_name': 'compute_interface_dependencies', |
|
Nils Barth (inactive)
2013/07/09 05:04:32
(Also make naming convention consistent: remove on
| |
| 107 'variables': { | 107 'variables': { |
| 108 # Write sources into a file, so that the action command line won't | 108 # Write sources into a file, so that the action command line won't |
| 109 # exceed OS limits. | 109 # exceed OS limits. |
| 110 'idl_files_list': '<|(idl_files_list.tmp <@(idl_files))', | 110 'idl_files_list': '<|(idl_files_list.tmp <@(idl_files))', |
| 111 }, | 111 }, |
| 112 'inputs': [ | 112 'inputs': [ |
| 113 'scripts/preprocess_idls.py', | 113 'scripts/compute_dependencies.py', |
| 114 '<(idl_files_list)', | 114 '<(idl_files_list)', |
| 115 '<!@(cat <(idl_files_list))', | 115 '<!@(cat <(idl_files_list))', |
| 116 ], | 116 ], |
| 117 'outputs': [ | 117 'outputs': [ |
| 118 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 118 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
|
Nils Barth (inactive)
2013/07/09 05:04:32
.txt b/c text file (indeed Space Separated Values)
| |
| 119 '<@(generated_global_constructors_idl_files)', | 119 '<@(generated_global_constructors_idl_files)', |
| 120 '<(SHARED_INTERMEDIATE_DIR)/EventNames.in', | 120 '<(SHARED_INTERMEDIATE_DIR)/EventNames.in', |
| 121 ], | 121 ], |
| 122 'msvs_cygwin_shell': 0, | 122 'msvs_cygwin_shell': 0, |
| 123 'action': [ | 123 'action': [ |
| 124 'python', | 124 'python', |
| 125 'scripts/preprocess_idls.py', | 125 'scripts/compute_dependencies.py', |
| 126 '--idl-files-list', | 126 '--idl-files-list', |
| 127 '<(idl_files_list)', | 127 '<(idl_files_list)', |
| 128 '--supplemental-dependency-file', | 128 '--interface-dependencies-file', |
| 129 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 129 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
|
haraken
2013/07/09 05:21:38
Nit: InterfaceDependencies.txt
Nils Barth (inactive)
2013/07/09 06:00:40
Got it:
CamelCase.idl << data
lowercase_with_und
| |
| 130 '--window-constructors-file', | 130 '--window-constructors-file', |
| 131 '<(SHARED_INTERMEDIATE_DIR)/WindowConstructors.idl', | 131 '<(SHARED_INTERMEDIATE_DIR)/WindowConstructors.idl', |
| 132 '--workerglobalscope-constructors-file', | 132 '--workerglobalscope-constructors-file', |
| 133 '<(SHARED_INTERMEDIATE_DIR)/WorkerGlobalScopeConstructors.idl', | 133 '<(SHARED_INTERMEDIATE_DIR)/WorkerGlobalScopeConstructors.idl', |
| 134 '--sharedworkerglobalscope-constructors-file', | 134 '--sharedworkerglobalscope-constructors-file', |
| 135 '<(SHARED_INTERMEDIATE_DIR)/SharedWorkerGlobalScopeConstructors.idl', | 135 '<(SHARED_INTERMEDIATE_DIR)/SharedWorkerGlobalScopeConstructors.idl', |
| 136 '--dedicatedworkerglobalscope-constructors-file', | 136 '--dedicatedworkerglobalscope-constructors-file', |
| 137 '<(SHARED_INTERMEDIATE_DIR)/DedicatedWorkerGlobalScopeConstructors.idl' , | 137 '<(SHARED_INTERMEDIATE_DIR)/DedicatedWorkerGlobalScopeConstructors.idl' , |
| 138 '--event-names-file', | 138 '--event-names-file', |
| 139 '<(SHARED_INTERMEDIATE_DIR)/EventNames.in', | 139 '<(SHARED_INTERMEDIATE_DIR)/EventNames.in', |
| 140 '<@(write_file_only_if_changed)', | 140 '<@(write_file_only_if_changed)', |
| 141 ], | 141 ], |
| 142 'message': 'Resolving partial interfaces dependencies in all IDL files', | 142 'message': 'Resolving partial interfaces dependencies in all IDL files', |
| 143 }] | 143 }] |
| 144 }, | 144 }, |
| 145 { | 145 { |
| 146 'target_name': 'bindings_sources', | 146 'target_name': 'bindings_sources', |
| 147 'type': 'none', | 147 'type': 'none', |
| 148 # The 'binding' rule generates .h files, so mark as hard_dependency, per: | 148 # The 'binding' rule generates .h files, so mark as hard_dependency, per: |
| 149 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen cies | 149 # https://code.google.com/p/gyp/wiki/InputFormatReference#Linking_Dependen cies |
| 150 'hard_dependency': 1, | 150 'hard_dependency': 1, |
| 151 'dependencies': [ | 151 'dependencies': [ |
| 152 'supplemental_dependencies', | 152 'interface_dependencies', |
| 153 '../core/core_derived_sources.gyp:generate_test_support_idls', | 153 '../core/core_derived_sources.gyp:generate_test_support_idls', |
| 154 ], | 154 ], |
| 155 'sources': [ | 155 'sources': [ |
| 156 '<@(idl_files)', | 156 '<@(idl_files)', |
| 157 '<@(webcore_test_support_idl_files)', | 157 '<@(webcore_test_support_idl_files)', |
| 158 ], | 158 ], |
| 159 'rules': [{ | 159 'rules': [{ |
| 160 'rule_name': 'binding', | 160 'rule_name': 'binding', |
| 161 'extension': 'idl', | 161 'extension': 'idl', |
| 162 'msvs_external_rule': 1, | 162 'msvs_external_rule': 1, |
| 163 'inputs': [ | 163 'inputs': [ |
| 164 'scripts/generate-bindings.pl', | 164 'scripts/generate-bindings.pl', |
| 165 'scripts/CodeGeneratorV8.pm', | 165 'scripts/CodeGeneratorV8.pm', |
| 166 'scripts/IDLParser.pm', | 166 'scripts/IDLParser.pm', |
| 167 'scripts/IDLSerializer.pm', | 167 'scripts/IDLSerializer.pm', |
| 168 '../core/scripts/preprocessor.pm', | 168 '../core/scripts/preprocessor.pm', |
| 169 'scripts/IDLAttributes.txt', | 169 'scripts/IDLAttributes.txt', |
| 170 # FIXME: If the dependency structure changes, we rebuild all files, | 170 # FIXME: If the dependency structure changes, we rebuild all files, |
| 171 # since we're not computing dependencies file-by-file in the build. | 171 # since we're not computing dependencies file-by-file in the build. |
| 172 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 172 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
| 173 # FIXME: Similarly, if any partial interface changes, rebuild | 173 # FIXME: Similarly, if any partial interface changes, rebuild |
| 174 # everything, since every IDL potentially depends on them, because | 174 # everything, since every IDL potentially depends on them, because |
| 175 # we're not computing dependencies file-by-file. | 175 # we're not computing dependencies file-by-file. |
| 176 '<!@pymod_do_main(supplemental_idl_files <@(idl_files))', | 176 # |
| 177 # If a new partial interface is added, need to regyp to update these | |
| 178 # dependencies, as these are computed statically at gyp runtime. | |
| 179 '<!@pymod_do_main(list_idl_files_with_partial_interface <@(idl_files)) ', | |
| 177 # Generated IDLs are all partial interfaces, hence everything | 180 # Generated IDLs are all partial interfaces, hence everything |
| 178 # potentially depends on them. | 181 # potentially depends on them. |
| 179 '<@(generated_global_constructors_idl_files)', | 182 '<@(generated_global_constructors_idl_files)', |
| 180 ], | 183 ], |
| 181 'outputs': [ | 184 'outputs': [ |
| 182 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).cpp', | 185 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).cpp', |
| 183 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', | 186 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', |
| 184 ], | 187 ], |
| 185 'variables': { | 188 'variables': { |
| 186 # IDL include paths. The generator will search recursively for IDL | 189 # IDL include paths. The generator will search recursively for IDL |
| (...skipping 18 matching lines...) Expand all Loading... | |
| 205 '-I../../../JSON/out/lib/perl5', | 208 '-I../../../JSON/out/lib/perl5', |
| 206 'scripts/generate-bindings.pl', | 209 'scripts/generate-bindings.pl', |
| 207 '--outputDir', | 210 '--outputDir', |
| 208 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | 211 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', |
| 209 '--idlAttributesFile', | 212 '--idlAttributesFile', |
| 210 'scripts/IDLAttributes.txt', | 213 'scripts/IDLAttributes.txt', |
| 211 '--defines', | 214 '--defines', |
| 212 '<(feature_defines)', | 215 '<(feature_defines)', |
| 213 '<@(generator_include_dirs)', | 216 '<@(generator_include_dirs)', |
| 214 '<@(extra_blink_generator_include_dirs)', | 217 '<@(extra_blink_generator_include_dirs)', |
| 215 '--supplementalDependencyFile', | 218 '--interfaceDependenciesFile', |
| 216 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 219 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
| 217 '--additionalIdlFiles', | 220 '--additionalIdlFiles', |
| 218 '<(webcore_test_support_idl_files)', | 221 '<(webcore_test_support_idl_files)', |
| 219 '<@(preprocessor)', | 222 '<@(preprocessor)', |
| 220 '<@(write_file_only_if_changed)', | 223 '<@(write_file_only_if_changed)', |
| 221 '<(RULE_INPUT_PATH)', | 224 '<(RULE_INPUT_PATH)', |
| 222 ], | 225 ], |
| 223 'message': 'Generating binding from <(RULE_INPUT_PATH)', | 226 'message': 'Generating binding from <(RULE_INPUT_PATH)', |
| 224 }], | 227 }], |
| 225 }, | 228 }, |
| 226 { | 229 { |
| 227 'target_name': 'bindings_derived_sources', | 230 'target_name': 'bindings_derived_sources', |
| 228 'type': 'none', | 231 'type': 'none', |
| 229 'dependencies': [ | 232 'dependencies': [ |
| 230 'supplemental_dependencies', | 233 'interface_dependencies', |
| 231 'bindings_sources', | 234 'bindings_sources', |
| 232 ], | 235 ], |
| 233 'actions': [{ | 236 'actions': [{ |
| 234 'action_name': 'derived_sources_all_in_one', | 237 'action_name': 'derived_sources_all_in_one', |
| 235 'inputs': [ | 238 'inputs': [ |
| 236 '../core/scripts/action_derivedsourcesallinone.py', | 239 '../core/scripts/action_derivedsourcesallinone.py', |
| 237 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 240 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
| 238 ], | 241 ], |
| 239 'outputs': [ | 242 'outputs': [ |
| 240 '<@(derived_sources_aggregate_files)', | 243 '<@(derived_sources_aggregate_files)', |
| 241 ], | 244 ], |
| 242 'action': [ | 245 'action': [ |
| 243 'python', | 246 'python', |
| 244 '../core/scripts/action_derivedsourcesallinone.py', | 247 '../core/scripts/action_derivedsourcesallinone.py', |
| 245 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 248 '<(SHARED_INTERMEDIATE_DIR)/interface_dependencies.txt', |
| 246 '--', | 249 '--', |
| 247 '<@(derived_sources_aggregate_files)', | 250 '<@(derived_sources_aggregate_files)', |
| 248 ], | 251 ], |
| 249 'message': 'Generating bindings derived sources', | 252 'message': 'Generating bindings derived sources', |
| 250 }], | 253 }], |
| 251 }, | 254 }, |
| 252 ], | 255 ], |
| 253 } | 256 } |
| OLD | NEW |