| 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 20 matching lines...) Expand all Loading... |
| 31 { | 31 { |
| 32 'includes': [ | 32 'includes': [ |
| 33 '../WebKit/chromium/WinPrecompile.gypi', | 33 '../WebKit/chromium/WinPrecompile.gypi', |
| 34 '../WebKit/chromium/features.gypi', | 34 '../WebKit/chromium/features.gypi', |
| 35 '../core/core.gypi', | 35 '../core/core.gypi', |
| 36 '../modules/modules.gypi', | 36 '../modules/modules.gypi', |
| 37 'bindings.gypi', | 37 'bindings.gypi', |
| 38 ], | 38 ], |
| 39 | 39 |
| 40 'variables': { | 40 'variables': { |
| 41 # If set to 1, doesn't compile debug symbols into webcore reducing the | 41 'idl_files': [ |
| 42 # size of the binary and increasing the speed of gdb. gcc only. | 42 '<@(core_idl_files)', |
| 43 'remove_webcore_debug_symbols%': 0, | |
| 44 | |
| 45 'bindings_idl_files': [ | |
| 46 '<@(webcore_idl_files)', | |
| 47 '<@(modules_idl_files)', | 43 '<@(modules_idl_files)', |
| 48 ], | 44 ], |
| 49 | 45 |
| 50 'bindings_idl_files!': [ | |
| 51 # Custom bindings in bindings/v8/custom exist for these. | |
| 52 '../core/dom/EventListener.idl', | |
| 53 | |
| 54 '../core/page/AbstractView.idl', | |
| 55 | |
| 56 # These bindings are excluded, as they're only used through inheritance an
d don't define constants that would need a constructor. | |
| 57 '../core/svg/ElementTimeControl.idl', | |
| 58 '../core/svg/SVGExternalResourcesRequired.idl', | |
| 59 '../core/svg/SVGFilterPrimitiveStandardAttributes.idl', | |
| 60 '../core/svg/SVGFitToViewBox.idl', | |
| 61 '../core/svg/SVGLangSpace.idl', | |
| 62 '../core/svg/SVGLocatable.idl', | |
| 63 '../core/svg/SVGTests.idl', | |
| 64 '../core/svg/SVGTransformable.idl', | |
| 65 | |
| 66 # FIXME: I don't know why these are excluded, either. | |
| 67 # Someone (me?) should figure it out and add appropriate comments. | |
| 68 '../core/css/CSSUnknownRule.idl', | |
| 69 ], | |
| 70 | |
| 71 'conditions': [ | 46 'conditions': [ |
| 72 ['enable_svg!=0', { | 47 ['enable_svg!=0', { |
| 73 'bindings_idl_files': [ | 48 'idl_files': [ |
| 74 '<@(webcore_svg_idl_files)', | 49 '<@(svg_idl_files)', |
| 75 ], | 50 ], |
| 76 }], | 51 }], |
| 77 ['OS=="win" and buildtype=="Official"', { | 52 ['OS=="win" and buildtype=="Official"', { |
| 78 # On windows official release builds, we try to preserve symbol space. | 53 # On windows official release builds, we try to preserve symbol space. |
| 79 'derived_sources_aggregate_files': [ | 54 'derived_sources_aggregate_files': [ |
| 80 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8DerivedSourcesAll.cpp', | 55 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8DerivedSourcesAll.cpp', |
| 81 ], | 56 ], |
| 82 },{ | 57 },{ |
| 83 'derived_sources_aggregate_files': [ | 58 'derived_sources_aggregate_files': [ |
| 84 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8DerivedSources01.cpp', | 59 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8DerivedSources01.cpp', |
| (...skipping 19 matching lines...) Expand all Loading... |
| 104 }], | 79 }], |
| 105 ], | 80 ], |
| 106 }, | 81 }, |
| 107 | 82 |
| 108 'target_defaults': { | 83 'target_defaults': { |
| 109 'variables': { | 84 'variables': { |
| 110 'optimize': 'max', | 85 'optimize': 'max', |
| 111 }, | 86 }, |
| 112 }, | 87 }, |
| 113 | 88 |
| 114 'conditions': [ | |
| 115 ['OS!="win" and remove_webcore_debug_symbols==1', { | |
| 116 # Remove -g from all targets defined here. | |
| 117 'target_defaults': { | |
| 118 'cflags!': ['-g'], | |
| 119 }, | |
| 120 }], | |
| 121 ['os_posix==1 and OS!="mac" and gcc_version>=46', { | |
| 122 'target_defaults': { | |
| 123 # Disable warnings about c++0x compatibility, as some names (such as nul
lptr) conflict | |
| 124 # with upcoming c++0x types. | |
| 125 'cflags_cc': ['-Wno-c++0x-compat'], | |
| 126 }, | |
| 127 }], | |
| 128 ['OS=="linux" and target_arch=="arm"', { | |
| 129 # Due to a bug in gcc arm, we get warnings about uninitialized timesNewRom
an.unstatic.3258 | |
| 130 # and colorTransparent.unstatic.4879. | |
| 131 'target_defaults': { | |
| 132 'cflags': ['-Wno-uninitialized'], | |
| 133 }, | |
| 134 }], | |
| 135 ['clang==1', { | |
| 136 'target_defaults': { | |
| 137 'cflags': ['-Wglobal-constructors', '-Wunused-parameter'], | |
| 138 'xcode_settings': { | |
| 139 'WARNING_CFLAGS': ['-Wglobal-constructors', '-Wunused-parameter'], | |
| 140 }, | |
| 141 }, | |
| 142 }], | |
| 143 ], | |
| 144 'targets': [{ | 89 'targets': [{ |
| 145 'target_name': 'supplemental_dependencies', | 90 'target_name': 'supplemental_dependencies', |
| 146 'type': 'none', | 91 'type': 'none', |
| 147 'actions': [{ | 92 'actions': [{ |
| 148 'action_name': 'generateSupplementalDependency', | 93 'action_name': 'generateSupplementalDependency', |
| 149 'variables': { | 94 'variables': { |
| 150 # Write sources into a file, so that the action command line won't | 95 # Write sources into a file, so that the action command line won't |
| 151 # exceed OS limits. | 96 # exceed OS limits. |
| 152 'idl_files_list': '<|(idl_files_list.tmp <@(bindings_idl_files))', | 97 'idl_files_list': '<|(idl_files_list.tmp <@(idl_files))', |
| 153 }, | 98 }, |
| 154 'inputs': [ | 99 'inputs': [ |
| 155 'scripts/preprocess-idls.pl', | 100 'scripts/preprocess-idls.pl', |
| 156 '<(idl_files_list)', | 101 '<(idl_files_list)', |
| 157 '<!@(cat <(idl_files_list))', | 102 '<!@(cat <(idl_files_list))', |
| 158 ], | 103 ], |
| 159 'outputs': [ | 104 'outputs': [ |
| 160 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 105 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', |
| 161 ], | 106 ], |
| 162 'msvs_cygwin_shell': 0, | 107 'msvs_cygwin_shell': 0, |
| 163 'action': [ | 108 'action': [ |
| 164 '<(perl_exe)', | 109 '<(perl_exe)', |
| 165 '-w', | 110 '-w', |
| 166 '-Iscripts', | 111 '-Iscripts', |
| 167 '-I../core/scripts', | 112 '-I../core/scripts', |
| 168 'scripts/preprocess-idls.pl', | 113 'scripts/preprocess-idls.pl', |
| 169 '--defines', | 114 '--defines', |
| 170 '<(feature_defines)', | 115 '<(feature_defines)', |
| 171 '--idlFilesList', | 116 '--idlFilesList', |
| 172 '<(idl_files_list)', | 117 '<(idl_files_list)', |
| 173 '--supplementalDependencyFile', | 118 '--supplementalDependencyFile', |
| 174 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 119 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', |
| 175 ], | 120 ], |
| 176 'message': 'Resolving [Supplemental=XXX] dependencies in all IDL files', | 121 'message': 'Resolving [Supplemental=XXX] dependencies in all IDL files', |
| 177 }] | 122 }] |
| 178 }, | 123 }, |
| 179 { | 124 { |
| 180 'target_name': 'bindings_sources', | 125 'target_name': 'bindings_derived_sources', |
| 181 'type': 'none', | 126 'type': 'none', |
| 182 'hard_dependency': 1, | 127 'hard_dependency': 1, |
| 183 'dependencies': [ | 128 'dependencies': [ |
| 184 'supplemental_dependencies', | 129 'supplemental_dependencies', |
| 130 '../core/core.gyp/derived_sources.gyp:generate_settings', |
| 185 ], | 131 ], |
| 186 'sources': [ | 132 'sources': [ |
| 187 '<@(bindings_idl_files)', | 133 '<@(idl_files)', |
| 188 '<@(webcore_test_support_idl_files)', | 134 '<@(webcore_test_support_idl_files)', |
| 189 ], | 135 ], |
| 190 'actions': [{ | 136 'actions': [{ |
| 191 'action_name': 'derived_sources_all_in_one', | 137 'action_name': 'derived_sources_all_in_one', |
| 192 'inputs': [ | 138 'inputs': [ |
| 193 '../core/core.gyp/scripts/action_derivedsourcesallinone.py', | 139 '../core/core.gyp/scripts/action_derivedsourcesallinone.py', |
| 194 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 140 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', |
| 195 ], | 141 ], |
| 196 'outputs': [ | 142 'outputs': [ |
| 197 '<@(derived_sources_aggregate_files)', | 143 '<@(derived_sources_aggregate_files)', |
| (...skipping 10 matching lines...) Expand all Loading... |
| 208 'rule_name': 'binding', | 154 'rule_name': 'binding', |
| 209 'extension': 'idl', | 155 'extension': 'idl', |
| 210 'msvs_external_rule': 1, | 156 'msvs_external_rule': 1, |
| 211 'inputs': [ | 157 'inputs': [ |
| 212 'scripts/generate-bindings.pl', | 158 'scripts/generate-bindings.pl', |
| 213 'scripts/CodeGenerator.pm', | 159 'scripts/CodeGenerator.pm', |
| 214 'scripts/CodeGeneratorV8.pm', | 160 'scripts/CodeGeneratorV8.pm', |
| 215 'scripts/IDLParser.pm', | 161 'scripts/IDLParser.pm', |
| 216 'scripts/IDLAttributes.txt', | 162 'scripts/IDLAttributes.txt', |
| 217 '../core/scripts/preprocessor.pm', | 163 '../core/scripts/preprocessor.pm', |
| 218 '<!@pymod_do_main(supplemental_idl_files <@(bindings_idl_files))', | 164 '<!@pymod_do_main(supplemental_idl_files <@(idl_files))', |
| 219 ], | 165 ], |
| 220 'outputs': [ | 166 'outputs': [ |
| 221 # FIXME: The .cpp file should be in webkit/bindings once | 167 # FIXME: The .cpp file should be in webkit/bindings once |
| 222 # we coax GYP into supporting it (see 'action' below). | 168 # we coax GYP into supporting it (see 'action' below). |
| 223 '<(SHARED_INTERMEDIATE_DIR)/webcore/bindings/V8<(RULE_INPUT_ROOT).cpp'
, | 169 '<(SHARED_INTERMEDIATE_DIR)/webcore/bindings/V8<(RULE_INPUT_ROOT).cpp'
, |
| 224 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', | 170 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', |
| 225 ], | 171 ], |
| 226 'variables': { | 172 'variables': { |
| 227 'generator_include_dirs': [ | 173 'generator_include_dirs': [ |
| 228 '--include', '../modules/filesystem', | 174 '--include', '../modules/filesystem', |
| (...skipping 22 matching lines...) Expand all Loading... |
| 251 # FIXME: Note that we put the .cpp files in webcore/bindings | 197 # FIXME: Note that we put the .cpp files in webcore/bindings |
| 252 # but the .h files in webkit/bindings. This is to work around | 198 # but the .h files in webkit/bindings. This is to work around |
| 253 # the unfortunate fact that GYP strips duplicate arguments | 199 # the unfortunate fact that GYP strips duplicate arguments |
| 254 # from lists. When we have a better GYP way to suppress that | 200 # from lists. When we have a better GYP way to suppress that |
| 255 # behavior, change the output location. | 201 # behavior, change the output location. |
| 256 'action': [ | 202 'action': [ |
| 257 '<(perl_exe)', | 203 '<(perl_exe)', |
| 258 '-w', | 204 '-w', |
| 259 '-Iscripts', | 205 '-Iscripts', |
| 260 '-I../core/scripts', | 206 '-I../core/scripts', |
| 261 '<(bindings_dir)/scripts/generate-bindings.pl', | 207 'scripts/generate-bindings.pl', |
| 262 '--outputHeadersDir', | 208 '--outputHeadersDir', |
| 263 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | 209 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', |
| 264 '--outputDir', | 210 '--outputDir', |
| 265 '<(SHARED_INTERMEDIATE_DIR)/webcore/bindings', | 211 '<(SHARED_INTERMEDIATE_DIR)/webcore/bindings', |
| 266 '--idlAttributesFile', | 212 '--idlAttributesFile', |
| 267 'scripts/IDLAttributes.txt', | 213 'scripts/IDLAttributes.txt', |
| 268 '--defines', | 214 '--defines', |
| 269 '<(feature_defines)', | 215 '<(feature_defines)', |
| 270 '<@(generator_include_dirs)', | 216 '<@(generator_include_dirs)', |
| 271 '--supplementalDependencyFile', | 217 '--supplementalDependencyFile', |
| 272 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', | 218 '<(SHARED_INTERMEDIATE_DIR)/supplemental_dependency.tmp', |
| 273 '--additionalIdlFiles', | 219 '--additionalIdlFiles', |
| 274 '<(webcore_test_support_idl_files)', | 220 '<(webcore_test_support_idl_files)', |
| 275 '<(RULE_INPUT_PATH)', | 221 '<(RULE_INPUT_PATH)', |
| 276 '<@(preprocessor)', | 222 '<@(preprocessor)', |
| 277 ], | 223 ], |
| 278 'message': 'Generating binding from <(RULE_INPUT_PATH)', | 224 'message': 'Generating binding from <(RULE_INPUT_PATH)', |
| 279 }], | 225 }], |
| 280 }, | 226 }, |
| 281 { | |
| 282 'target_name': 'bindings', | |
| 283 'type': 'static_library', | |
| 284 'hard_dependency': 1, | |
| 285 'dependencies': [ | |
| 286 'bindings_sources', | |
| 287 '../core/core.gyp/core.gyp:webcore_prerequisites', | |
| 288 '../yarr/yarr.gyp:yarr', | |
| 289 '../wtf/wtf.gyp:wtf', | |
| 290 '<(DEPTH)/build/temp_gyp/googleurl.gyp:googleurl', | |
| 291 '<(DEPTH)/skia/skia.gyp:skia', | |
| 292 '<(DEPTH)/third_party/iccjpeg/iccjpeg.gyp:iccjpeg', | |
| 293 '<(DEPTH)/third_party/libpng/libpng.gyp:libpng', | |
| 294 '<(DEPTH)/third_party/libxml/libxml.gyp:libxml', | |
| 295 '<(DEPTH)/third_party/libxslt/libxslt.gyp:libxslt', | |
| 296 '<(DEPTH)/third_party/libwebp/libwebp.gyp:libwebp', | |
| 297 '<(DEPTH)/third_party/npapi/npapi.gyp:npapi', | |
| 298 '<(DEPTH)/third_party/qcms/qcms.gyp:qcms', | |
| 299 '<(DEPTH)/third_party/sqlite/sqlite.gyp:sqlite', | |
| 300 '<(DEPTH)/third_party/v8-i18n/build/all.gyp:v8-i18n', | |
| 301 '<(DEPTH)/v8/tools/gyp/v8.gyp:v8', | |
| 302 '<(libjpeg_gyp_path):libjpeg', | |
| 303 ], | |
| 304 'include_dirs': [ | |
| 305 '<(INTERMEDIATE_DIR)', | |
| 306 # FIXME: Remove <(SHARED_INTERMEDIATE_DIR)/webcore when we | |
| 307 # can entice gyp into letting us put both the .cpp and .h | |
| 308 # files in the same output directory. | |
| 309 '<(SHARED_INTERMEDIATE_DIR)/webcore', | |
| 310 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
| 311 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | |
| 312 ], | |
| 313 'xcode_settings': { | |
| 314 # Some Mac-specific parts of WebKit won't compile without having this | |
| 315 # prefix header injected. | |
| 316 # FIXME: make this a first-class setting. | |
| 317 'GCC_PREFIX_HEADER': '../core/WebCorePrefix.h', | |
| 318 }, | |
| 319 'direct_dependent_settings': { | |
| 320 'include_dirs': [ | |
| 321 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
| 322 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | |
| 323 ], | |
| 324 }, | |
| 325 'sources': [ | |
| 326 '<@(derived_sources_aggregate_files)', | |
| 327 '<@(bindings_files)', | |
| 328 ], | |
| 329 'conditions': [ | |
| 330 ['OS=="win" and component=="shared_library"', { | |
| 331 'defines': [ | |
| 332 'USING_V8_SHARED', | |
| 333 ], | |
| 334 }], | |
| 335 ['OS=="win"', { | |
| 336 'defines': [ | |
| 337 '__PRETTY_FUNCTION__=__FUNCTION__', | |
| 338 ], | |
| 339 # This is needed because Event.h in this directory is blocked | |
| 340 # by a system header on windows. | |
| 341 'include_dirs++': ['../core/dom'], | |
| 342 'direct_dependent_settings': { | |
| 343 'include_dirs+++': ['../core/dom'], | |
| 344 }, | |
| 345 # In generated bindings code: 'switch contains default but no case'. | |
| 346 # Disable c4267 warnings until we fix size_t to int truncations. | |
| 347 'msvs_disabled_warnings': [ 4065, 4267 ], | |
| 348 }], | |
| 349 ['OS in ("linux", "android") and "WTF_USE_WEBAUDIO_IPP=1" in feature_def
ines', { | |
| 350 'cflags': [ | |
| 351 '<!@(pkg-config --cflags-only-I ipp)', | |
| 352 ], | |
| 353 }], | |
| 354 ], | |
| 355 }, | |
| 356 ], | 227 ], |
| 357 } | 228 } |
| OLD | NEW |