OLD | NEW |
(Empty) | |
| 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 |
| 5 { |
| 6 'includes': [ |
| 7 'features.gypi', |
| 8 '../third_party/WebKit/WebCore/WebCore.gypi', |
| 9 ], |
| 10 'variables': { |
| 11 'webcore_include_dirs': [ |
| 12 '../third_party/WebKit/WebCore', |
| 13 '../third_party/WebKit/WebCore/accessibility', |
| 14 '../third_party/WebKit/WebCore/accessibility/chromium', |
| 15 '../third_party/WebKit/WebCore/bindings/v8', |
| 16 '../third_party/WebKit/WebCore/bindings/v8/custom', |
| 17 '../third_party/WebKit/WebCore/bridge', |
| 18 '../third_party/WebKit/WebCore/css', |
| 19 '../third_party/WebKit/WebCore/dom', |
| 20 '../third_party/WebKit/WebCore/dom/default', |
| 21 '../third_party/WebKit/WebCore/editing', |
| 22 '../third_party/WebKit/WebCore/history', |
| 23 '../third_party/WebKit/WebCore/html', |
| 24 '../third_party/WebKit/WebCore/html/canvas', |
| 25 '../third_party/WebKit/WebCore/inspector', |
| 26 '../third_party/WebKit/WebCore/loader', |
| 27 '../third_party/WebKit/WebCore/loader/appcache', |
| 28 '../third_party/WebKit/WebCore/loader/archive', |
| 29 '../third_party/WebKit/WebCore/loader/icon', |
| 30 '../third_party/WebKit/WebCore/notifications', |
| 31 '../third_party/WebKit/WebCore/page', |
| 32 '../third_party/WebKit/WebCore/page/animation', |
| 33 '../third_party/WebKit/WebCore/page/chromium', |
| 34 '../third_party/WebKit/WebCore/platform', |
| 35 '../third_party/WebKit/WebCore/platform/animation', |
| 36 '../third_party/WebKit/WebCore/platform/chromium', |
| 37 '../third_party/WebKit/WebCore/platform/graphics', |
| 38 '../third_party/WebKit/WebCore/platform/graphics/chromium', |
| 39 '../third_party/WebKit/WebCore/platform/graphics/opentype', |
| 40 '../third_party/WebKit/WebCore/platform/graphics/skia', |
| 41 '../third_party/WebKit/WebCore/platform/graphics/transforms', |
| 42 '../third_party/WebKit/WebCore/platform/image-decoders', |
| 43 '../third_party/WebKit/WebCore/platform/image-decoders/bmp', |
| 44 '../third_party/WebKit/WebCore/platform/image-decoders/gif', |
| 45 '../third_party/WebKit/WebCore/platform/image-decoders/ico', |
| 46 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg', |
| 47 '../third_party/WebKit/WebCore/platform/image-decoders/png', |
| 48 '../third_party/WebKit/WebCore/platform/image-decoders/skia', |
| 49 '../third_party/WebKit/WebCore/platform/image-decoders/xbm', |
| 50 '../third_party/WebKit/WebCore/platform/image-encoders/skia', |
| 51 '../third_party/WebKit/WebCore/platform/mock', |
| 52 '../third_party/WebKit/WebCore/platform/network', |
| 53 '../third_party/WebKit/WebCore/platform/network/chromium', |
| 54 '../third_party/WebKit/WebCore/platform/sql', |
| 55 '../third_party/WebKit/WebCore/platform/text', |
| 56 '../third_party/WebKit/WebCore/plugins', |
| 57 '../third_party/WebKit/WebCore/rendering', |
| 58 '../third_party/WebKit/WebCore/rendering/style', |
| 59 '../third_party/WebKit/WebCore/storage', |
| 60 '../third_party/WebKit/WebCore/svg', |
| 61 '../third_party/WebKit/WebCore/svg/animation', |
| 62 '../third_party/WebKit/WebCore/svg/graphics', |
| 63 '../third_party/WebKit/WebCore/workers', |
| 64 '../third_party/WebKit/WebCore/xml', |
| 65 ], |
| 66 'conditions': [ |
| 67 ['OS=="mac"', { |
| 68 'webcore_include_dirs+': [ |
| 69 # platform/graphics/cg and mac needs to come before |
| 70 # platform/graphics/chromium so that the Mac build picks up the |
| 71 # version of ImageBufferData.h in the cg directory and |
| 72 # FontPlatformData.h in the mac directory. The + prepends this |
| 73 # directory to the list. |
| 74 # TODO(port): This shouldn't need to be prepended. |
| 75 # TODO(port): Eliminate dependency on platform/graphics/mac and |
| 76 # related directories. |
| 77 # platform/graphics/cg may need to stick around, though. |
| 78 '../third_party/WebKit/WebCore/platform/graphics/cg', |
| 79 '../third_party/WebKit/WebCore/platform/graphics/mac', |
| 80 ], |
| 81 'webcore_include_dirs': [ |
| 82 # TODO(port): Eliminate dependency on platform/mac and related |
| 83 # directories. |
| 84 '../third_party/WebKit/WebCore/loader/archive/cf', |
| 85 '../third_party/WebKit/WebCore/platform/mac', |
| 86 '../third_party/WebKit/WebCore/platform/text/mac', |
| 87 ], |
| 88 }], |
| 89 ['OS=="win"', { |
| 90 'webcore_include_dirs': [ |
| 91 '../third_party/WebKit/WebCore/page/win', |
| 92 '../third_party/WebKit/WebCore/platform/graphics/win', |
| 93 '../third_party/WebKit/WebCore/platform/text/win', |
| 94 '../third_party/WebKit/WebCore/platform/win', |
| 95 ], |
| 96 }], |
| 97 ], |
| 98 }, |
| 99 'targets': [ |
| 100 { |
| 101 'target_name': 'webcore', |
| 102 'type': '<(library)', |
| 103 'msvs_guid': '1C16337B-ACF3-4D03-AA90-851C5B5EADA6', |
| 104 'dependencies': [ |
| 105 'config.gyp:config', |
| 106 'javascriptcore.gyp:pcre', |
| 107 'javascriptcore.gyp:wtf', |
| 108 '../build/temp_gyp/googleurl.gyp:googleurl', |
| 109 '../skia/skia.gyp:skia', |
| 110 '../third_party/libjpeg/libjpeg.gyp:libjpeg', |
| 111 '../third_party/libpng/libpng.gyp:libpng', |
| 112 '../third_party/libxml/libxml.gyp:libxml', |
| 113 '../third_party/libxslt/libxslt.gyp:libxslt', |
| 114 '../third_party/npapi/npapi.gyp:npapi', |
| 115 '../third_party/sqlite/sqlite.gyp:sqlite', |
| 116 ], |
| 117 'defines': [ |
| 118 '<@(feature_defines)', |
| 119 '<@(non_feature_defines)', |
| 120 ], |
| 121 'actions': [ |
| 122 # Actions to build derived sources. |
| 123 { |
| 124 'action_name': 'CSSPropertyNames', |
| 125 'inputs': [ |
| 126 '../third_party/WebKit/WebCore/css/makeprop.pl', |
| 127 '../third_party/WebKit/WebCore/css/CSSPropertyNames.in', |
| 128 '../third_party/WebKit/WebCore/css/SVGCSSPropertyNames.in', |
| 129 ], |
| 130 'outputs': [ |
| 131 '<(INTERMEDIATE_DIR)/CSSPropertyNames.cpp', |
| 132 '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSPropertyNames.h', |
| 133 ], |
| 134 'action': ['python', 'build/action_csspropertynames.py', '<@(_outputs)
', '--', '<@(_inputs)'], |
| 135 }, |
| 136 { |
| 137 'action_name': 'CSSValueKeywords', |
| 138 'inputs': [ |
| 139 '../third_party/WebKit/WebCore/css/makevalues.pl', |
| 140 '../third_party/WebKit/WebCore/css/CSSValueKeywords.in', |
| 141 '../third_party/WebKit/WebCore/css/SVGCSSValueKeywords.in', |
| 142 ], |
| 143 'outputs': [ |
| 144 '<(INTERMEDIATE_DIR)/CSSValueKeywords.c', |
| 145 '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSValueKeywords.h', |
| 146 ], |
| 147 'action': ['python', 'build/action_cssvaluekeywords.py', '<@(_outputs)
', '--', '<@(_inputs)'], |
| 148 }, |
| 149 { |
| 150 'action_name': 'HTMLNames', |
| 151 'inputs': [ |
| 152 '../third_party/WebKit/WebCore/dom/make_names.pl', |
| 153 '../third_party/WebKit/WebCore/html/HTMLTagNames.in', |
| 154 '../third_party/WebKit/WebCore/html/HTMLAttributeNames.in', |
| 155 ], |
| 156 'outputs': [ |
| 157 '<(INTERMEDIATE_DIR)/HTMLNames.cpp', |
| 158 '<(SHARED_INTERMEDIATE_DIR)/webkit/HTMLNames.h', |
| 159 '<(INTERMEDIATE_DIR)/HTMLElementFactory.cpp', |
| 160 # Pass --wrapperFactory to make_names to get these (JSC build?) |
| 161 #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.cpp', |
| 162 #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.h', |
| 163 ], |
| 164 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--'
, '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], |
| 165 'process_outputs_as_sources': 1, |
| 166 }, |
| 167 { |
| 168 'action_name': 'SVGNames', |
| 169 'inputs': [ |
| 170 '../third_party/WebKit/WebCore/dom/make_names.pl', |
| 171 '../third_party/WebKit/WebCore/svg/svgtags.in', |
| 172 '../third_party/WebKit/WebCore/svg/svgattrs.in', |
| 173 ], |
| 174 'outputs': [ |
| 175 '<(INTERMEDIATE_DIR)/SVGNames.cpp', |
| 176 '<(INTERMEDIATE_DIR)/SVGNames.h', |
| 177 '<(INTERMEDIATE_DIR)/SVGElementFactory.cpp', |
| 178 '<(INTERMEDIATE_DIR)/SVGElementFactory.h', |
| 179 # Pass --wrapperFactory to make_names to get these (JSC build?) |
| 180 #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.cpp', |
| 181 #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.h', |
| 182 ], |
| 183 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--'
, '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], |
| 184 'process_outputs_as_sources': 1, |
| 185 }, |
| 186 { |
| 187 'action_name': 'UserAgentStyleSheets', |
| 188 'inputs': [ |
| 189 '../third_party/WebKit/WebCore/css/make-css-file-arrays.pl', |
| 190 '../third_party/WebKit/WebCore/css/html.css', |
| 191 '../third_party/WebKit/WebCore/css/quirks.css', |
| 192 '../third_party/WebKit/WebCore/css/view-source.css', |
| 193 '../third_party/WebKit/WebCore/css/themeChromiumLinux.css', |
| 194 '../third_party/WebKit/WebCore/css/themeWin.css', |
| 195 '../third_party/WebKit/WebCore/css/themeWinQuirks.css', |
| 196 '../third_party/WebKit/WebCore/css/svg.css', |
| 197 '../third_party/WebKit/WebCore/css/mediaControls.css', |
| 198 '../third_party/WebKit/WebCore/css/mediaControlsChromium.css', |
| 199 ], |
| 200 'outputs': [ |
| 201 '<(INTERMEDIATE_DIR)/UserAgentStyleSheets.h', |
| 202 '<(INTERMEDIATE_DIR)/UserAgentStyleSheetsData.cpp', |
| 203 ], |
| 204 'action': ['python', 'build/action_useragentstylesheets.py', '<@(_outp
uts)', '--', '<@(_inputs)'], |
| 205 'process_outputs_as_sources': 1, |
| 206 }, |
| 207 { |
| 208 'action_name': 'XLinkNames', |
| 209 'inputs': [ |
| 210 '../third_party/WebKit/WebCore/dom/make_names.pl', |
| 211 '../third_party/WebKit/WebCore/svg/xlinkattrs.in', |
| 212 ], |
| 213 'outputs': [ |
| 214 '<(INTERMEDIATE_DIR)/XLinkNames.cpp', |
| 215 '<(INTERMEDIATE_DIR)/XLinkNames.h', |
| 216 ], |
| 217 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--'
, '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], |
| 218 'process_outputs_as_sources': 1, |
| 219 }, |
| 220 { |
| 221 'action_name': 'XMLNames', |
| 222 'inputs': [ |
| 223 '../third_party/WebKit/WebCore/dom/make_names.pl', |
| 224 '../third_party/WebKit/WebCore/xml/xmlattrs.in', |
| 225 ], |
| 226 'outputs': [ |
| 227 '<(INTERMEDIATE_DIR)/XMLNames.cpp', |
| 228 '<(INTERMEDIATE_DIR)/XMLNames.h', |
| 229 ], |
| 230 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--'
, '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], |
| 231 'process_outputs_as_sources': 1, |
| 232 }, |
| 233 { |
| 234 'action_name': 'tokenizer', |
| 235 'inputs': [ |
| 236 '../third_party/WebKit/WebCore/css/maketokenizer', |
| 237 '../third_party/WebKit/WebCore/css/tokenizer.flex', |
| 238 ], |
| 239 'outputs': [ |
| 240 '<(INTERMEDIATE_DIR)/tokenizer.cpp', |
| 241 ], |
| 242 'action': ['python', 'build/action_maketokenizer.py', '<@(_outputs)',
'--', '<@(_inputs)'], |
| 243 }, |
| 244 ], |
| 245 'rules': [ |
| 246 # Rules to build derived sources. |
| 247 { |
| 248 'rule_name': 'bison', |
| 249 'extension': 'y', |
| 250 'outputs': [ |
| 251 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).cpp', |
| 252 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).h' |
| 253 ], |
| 254 'action': ['python', 'build/rule_bison.py', '<(RULE_INPUT_PATH)', '<(I
NTERMEDIATE_DIR)'], |
| 255 'process_outputs_as_sources': 1, |
| 256 }, |
| 257 { |
| 258 'rule_name': 'gperf', |
| 259 'extension': 'gperf', |
| 260 # gperf output is only ever #included by other source files. As |
| 261 # such, process_outputs_as_sources is off. Some gperf output is |
| 262 # #included as *.c and some as *.cpp. Since there's no way to tell |
| 263 # which one will be needed in a rule definition, declare both as |
| 264 # outputs. The harness script will generate one file and copy it to |
| 265 # the other. |
| 266 # |
| 267 # This rule places outputs in SHARED_INTERMEDIATE_DIR because glue |
| 268 # needs access to HTMLEntityNames.c. |
| 269 'outputs': [ |
| 270 '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).c', |
| 271 '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).cpp', |
| 272 ], |
| 273 'action': ['python', 'build/rule_gperf.py', '<(RULE_INPUT_PATH)', '<(S
HARED_INTERMEDIATE_DIR)/webkit'], |
| 274 'process_outputs_as_sources': 0, |
| 275 }, |
| 276 # Rule to build generated JavaScript (V8) bindings from .idl source. |
| 277 { |
| 278 'rule_name': 'binding', |
| 279 'extension': 'idl', |
| 280 'msvs_external_rule': 1, |
| 281 'inputs': [ |
| 282 '../third_party/WebKit/WebCore/bindings/scripts/generate-bindings.pl
', |
| 283 '../third_party/WebKit/WebCore/bindings/scripts/CodeGenerator.pm', |
| 284 '../third_party/WebKit/WebCore/bindings/scripts/CodeGeneratorV8.pm', |
| 285 '../third_party/WebKit/WebCore/bindings/scripts/IDLParser.pm', |
| 286 '../third_party/WebKit/WebCore/bindings/scripts/IDLStructure.pm', |
| 287 ], |
| 288 'outputs': [ |
| 289 '<(INTERMEDIATE_DIR)/bindings/V8<(RULE_INPUT_ROOT).cpp', |
| 290 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', |
| 291 ], |
| 292 'variables': { |
| 293 'generator_include_dirs': [ |
| 294 '--include', '../third_party/WebKit/WebCore/css', |
| 295 '--include', '../third_party/WebKit/WebCore/dom', |
| 296 '--include', '../third_party/WebKit/WebCore/html', |
| 297 '--include', '../third_party/WebKit/WebCore/notifications',
|
| 298 '--include', '../third_party/WebKit/WebCore/page', |
| 299 '--include', '../third_party/WebKit/WebCore/plugins', |
| 300 '--include', '../third_party/WebKit/WebCore/svg', |
| 301 '--include', '../third_party/WebKit/WebCore/workers', |
| 302 '--include', '../third_party/WebKit/WebCore/xml', |
| 303 ], |
| 304 }, |
| 305 'action': ['python', 'build/rule_binding.py', '<(RULE_INPUT_PATH)', '<
(INTERMEDIATE_DIR)/bindings', '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', '--'
, '<@(_inputs)', '--', '--defines', '<(feature_defines) LANGUAGE_JAVASCRIPT V8_B
INDING', '--generator', 'V8', '<@(generator_include_dirs)'], |
| 306 # They are included by DerivedSourcesAllInOne.cpp instead. |
| 307 'process_outputs_as_sources': 0, |
| 308 'message': 'Generating binding from <(RULE_INPUT_PATH)', |
| 309 }, |
| 310 ], |
| 311 'include_dirs': [ |
| 312 '<(INTERMEDIATE_DIR)', |
| 313 '<(SHARED_INTERMEDIATE_DIR)/webkit', |
| 314 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', |
| 315 '<@(webcore_include_dirs)', |
| 316 ], |
| 317 'sources': [ |
| 318 # bison rule |
| 319 '../third_party/WebKit/WebCore/css/CSSGrammar.y', |
| 320 '../third_party/WebKit/WebCore/xml/XPathGrammar.y', |
| 321 |
| 322 # gperf rule |
| 323 '../third_party/WebKit/WebCore/html/DocTypeStrings.gperf', |
| 324 '../third_party/WebKit/WebCore/html/HTMLEntityNames.gperf', |
| 325 '../third_party/WebKit/WebCore/platform/ColorData.gperf', |
| 326 |
| 327 # This file includes all the .cpp files generated from the .idl files |
| 328 # in webcore_files. |
| 329 '../third_party/WebKit/WebCore/bindings/v8/DerivedSourcesAllInOne.cpp', |
| 330 |
| 331 '<@(webcore_files)', |
| 332 |
| 333 'extensions/v8/gc_extension.cc', |
| 334 'extensions/v8/gc_extension.h', |
| 335 'extensions/v8/gears_extension.cc', |
| 336 'extensions/v8/gears_extension.h', |
| 337 'extensions/v8/interval_extension.cc', |
| 338 'extensions/v8/interval_extension.h', |
| 339 'extensions/v8/playback_extension.cc', |
| 340 'extensions/v8/playback_extension.h', |
| 341 'extensions/v8/profiler_extension.cc', |
| 342 'extensions/v8/profiler_extension.h', |
| 343 'extensions/v8/benchmarking_extension.cc', |
| 344 'extensions/v8/benchmarking_extension.h', |
| 345 |
| 346 # For WebCoreSystemInterface, Mac-only. |
| 347 '../third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystemInterface.m', |
| 348 ], |
| 349 'sources/': [ |
| 350 # Exclude JSC custom bindings. |
| 351 ['exclude', '/third_party/WebKit/WebCore/bindings/js'], |
| 352 |
| 353 # SVG_FILTERS only. |
| 354 ['exclude', '/third_party/WebKit/WebCore/svg/SVG(FE|Filter)[^/]*\\.idl$'
], |
| 355 |
| 356 # Fortunately, many things can be excluded by using broad patterns. |
| 357 |
| 358 # Exclude things that don't apply to the Chromium platform on the basis |
| 359 # of their enclosing directories and tags at the ends of their |
| 360 # filenames. |
| 361 ['exclude', '/(android|cairo|cf|cg|curl|gtk|haiku|linux|mac|opentype|pos
ix|qt|soup|symbian|win|wx)/'], |
| 362 ['exclude', '(?<!Chromium)(SVGAllInOne|Android|Cairo|CF|CG|Curl|Gtk|Linu
x|Mac|OpenType|POSIX|Posix|Qt|Safari|Soup|Symbian|Win|Wx)\\.(cpp|mm?)$'], |
| 363 |
| 364 # JSC-only. |
| 365 ['exclude', '/third_party/WebKit/WebCore/inspector/JavaScript[^/]*\\.cpp
$'], |
| 366 |
| 367 # ENABLE_OFFLINE_WEB_APPLICATIONS, exclude most of webcore's impl |
| 368 ['exclude', '/third_party/WebKit/WebCore/loader/appcache/'], |
| 369 ['include', '/third_party/WebKit/WebCore/loader/appcache/ApplicationCach
eHost\.h$'], |
| 370 ['include', '/third_party/WebKit/WebCore/loader/appcache/DOMApplicationC
ache\.(h|cpp|idl)$'], |
| 371 |
| 372 # SVG_FILTERS only. |
| 373 ['exclude', '/third_party/WebKit/WebCore/(platform|svg)/graphics/filters
/'], |
| 374 ['exclude', '/third_party/WebKit/WebCore/svg/Filter[^/]*\\.cpp$'], |
| 375 ['exclude', '/third_party/WebKit/WebCore/svg/SVG(FE|Filter)[^/]*\\.cpp$'
], |
| 376 |
| 377 # Exclude some DB-related files. |
| 378 ['exclude', '/third_party/WebKit/WebCore/platform/sql/SQLiteFileSystem.c
pp'], |
| 379 ], |
| 380 'sources!': [ |
| 381 # Custom bindings in bindings/v8/custom exist for these. |
| 382 '../third_party/WebKit/WebCore/dom/EventListener.idl', |
| 383 '../third_party/WebKit/WebCore/dom/EventTarget.idl', |
| 384 '../third_party/WebKit/WebCore/html/VoidCallback.idl', |
| 385 |
| 386 # JSC-only. |
| 387 '../third_party/WebKit/WebCore/inspector/JavaScriptCallFrame.idl', |
| 388 |
| 389 # ENABLE_GEOLOCATION only. |
| 390 '../third_party/WebKit/WebCore/page/Geolocation.idl', |
| 391 '../third_party/WebKit/WebCore/page/Geoposition.idl', |
| 392 '../third_party/WebKit/WebCore/page/PositionCallback.idl', |
| 393 '../third_party/WebKit/WebCore/page/PositionError.idl', |
| 394 '../third_party/WebKit/WebCore/page/PositionErrorCallback.idl', |
| 395 |
| 396 # Bindings with custom Objective-C implementations. |
| 397 '../third_party/WebKit/WebCore/page/AbstractView.idl', |
| 398 |
| 399 # TODO(mark): I don't know why all of these are excluded. |
| 400 # Extra SVG bindings to exclude. |
| 401 '../third_party/WebKit/WebCore/svg/ElementTimeControl.idl', |
| 402 '../third_party/WebKit/WebCore/svg/SVGAnimatedPathData.idl', |
| 403 '../third_party/WebKit/WebCore/svg/SVGComponentTransferFunctionElement.i
dl', |
| 404 '../third_party/WebKit/WebCore/svg/SVGExternalResourcesRequired.idl', |
| 405 '../third_party/WebKit/WebCore/svg/SVGFitToViewBox.idl', |
| 406 '../third_party/WebKit/WebCore/svg/SVGHKernElement.idl', |
| 407 '../third_party/WebKit/WebCore/svg/SVGLangSpace.idl', |
| 408 '../third_party/WebKit/WebCore/svg/SVGLocatable.idl', |
| 409 '../third_party/WebKit/WebCore/svg/SVGStylable.idl', |
| 410 '../third_party/WebKit/WebCore/svg/SVGTests.idl', |
| 411 '../third_party/WebKit/WebCore/svg/SVGTransformable.idl', |
| 412 '../third_party/WebKit/WebCore/svg/SVGViewSpec.idl', |
| 413 '../third_party/WebKit/WebCore/svg/SVGZoomAndPan.idl', |
| 414 |
| 415 # TODO(mark): I don't know why these are excluded, either. |
| 416 # Someone (me?) should figure it out and add appropriate comments. |
| 417 '../third_party/WebKit/WebCore/css/CSSUnknownRule.idl', |
| 418 |
| 419 # A few things can't be excluded by patterns. List them individually. |
| 420 |
| 421 # Don't build StorageNamespace. We have our own implementation. |
| 422 '../third_party/WebKit/WebCore/storage/StorageNamespace.cpp', |
| 423 |
| 424 # Use history/BackForwardListChromium.cpp instead. |
| 425 '../third_party/WebKit/WebCore/history/BackForwardList.cpp', |
| 426 |
| 427 # Use loader/icon/IconDatabaseNone.cpp instead. |
| 428 '../third_party/WebKit/WebCore/loader/icon/IconDatabase.cpp', |
| 429 |
| 430 # Use platform/KURLGoogle.cpp instead. |
| 431 '../third_party/WebKit/WebCore/platform/KURL.cpp', |
| 432 |
| 433 # Use platform/MIMETypeRegistryChromium.cpp instead. |
| 434 '../third_party/WebKit/WebCore/platform/MIMETypeRegistry.cpp', |
| 435 |
| 436 # USE_NEW_THEME only. |
| 437 '../third_party/WebKit/WebCore/platform/Theme.cpp', |
| 438 |
| 439 # Exclude some, but not all, of plugins. |
| 440 '../third_party/WebKit/WebCore/plugins/PluginDatabase.cpp', |
| 441 '../third_party/WebKit/WebCore/plugins/PluginInfoStore.cpp', |
| 442 '../third_party/WebKit/WebCore/plugins/PluginMainThreadScheduler.cpp', |
| 443 '../third_party/WebKit/WebCore/plugins/PluginPackage.cpp', |
| 444 '../third_party/WebKit/WebCore/plugins/PluginStream.cpp', |
| 445 '../third_party/WebKit/WebCore/plugins/PluginView.cpp', |
| 446 '../third_party/WebKit/WebCore/plugins/npapi.cpp', |
| 447 |
| 448 # Use LinkHashChromium.cpp instead |
| 449 '../third_party/WebKit/WebCore/platform/LinkHash.cpp', |
| 450 |
| 451 # Don't build these. |
| 452 # TODO(mark): I don't know exactly why these are excluded. It would |
| 453 # be nice to provide more explicit comments. Some of these do actually |
| 454 # compile. |
| 455 '../third_party/WebKit/WebCore/dom/StaticStringList.cpp', |
| 456 '../third_party/WebKit/WebCore/loader/icon/IconFetcher.cpp', |
| 457 '../third_party/WebKit/WebCore/loader/UserStyleSheetLoader.cpp', |
| 458 '../third_party/WebKit/WebCore/platform/graphics/GraphicsLayer.cpp', |
| 459 '../third_party/WebKit/WebCore/platform/graphics/RenderLayerBacking.cpp'
, |
| 460 '../third_party/WebKit/WebCore/platform/graphics/RenderLayerCompositor.c
pp', |
| 461 |
| 462 # We use a multi-process version from the WebKit API. |
| 463 '../third_party/WebKit/WebCore/dom/default/PlatformMessagePortChannel.cp
p', |
| 464 '../third_party/WebKit/WebCore/dom/default/PlatformMessagePortChannel.h'
, |
| 465 |
| 466 ], |
| 467 'direct_dependent_settings': { |
| 468 # webkit.gyp:webkit & glue need the same feature defines too |
| 469 #'defines': [ |
| 470 # '<@(feature_defines)', |
| 471 # '<@(non_feature_defines)', |
| 472 #], |
| 473 'include_dirs': [ |
| 474 '<(SHARED_INTERMEDIATE_DIR)/webkit', |
| 475 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', |
| 476 '<@(webcore_include_dirs)', |
| 477 ], |
| 478 'mac_framework_dirs': [ |
| 479 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Fr
ameworks', |
| 480 ], |
| 481 }, |
| 482 'export_dependent_settings': [ |
| 483 'javascriptcore.gyp:wtf', |
| 484 '../build/temp_gyp/googleurl.gyp:googleurl', |
| 485 '../skia/skia.gyp:skia', |
| 486 '../third_party/npapi/npapi.gyp:npapi', |
| 487 ], |
| 488 'link_settings': { |
| 489 'mac_bundle_resources': [ |
| 490 '../third_party/WebKit/WebCore/Resources/aliasCursor.png', |
| 491 '../third_party/WebKit/WebCore/Resources/cellCursor.png', |
| 492 '../third_party/WebKit/WebCore/Resources/contextMenuCursor.png', |
| 493 '../third_party/WebKit/WebCore/Resources/copyCursor.png', |
| 494 '../third_party/WebKit/WebCore/Resources/crossHairCursor.png', |
| 495 '../third_party/WebKit/WebCore/Resources/eastResizeCursor.png', |
| 496 '../third_party/WebKit/WebCore/Resources/eastWestResizeCursor.png', |
| 497 '../third_party/WebKit/WebCore/Resources/helpCursor.png', |
| 498 '../third_party/WebKit/WebCore/Resources/linkCursor.png', |
| 499 '../third_party/WebKit/WebCore/Resources/missingImage.png', |
| 500 '../third_party/WebKit/WebCore/Resources/moveCursor.png', |
| 501 '../third_party/WebKit/WebCore/Resources/noDropCursor.png', |
| 502 '../third_party/WebKit/WebCore/Resources/noneCursor.png', |
| 503 '../third_party/WebKit/WebCore/Resources/northEastResizeCursor.png', |
| 504 '../third_party/WebKit/WebCore/Resources/northEastSouthWestResizeCurso
r.png', |
| 505 '../third_party/WebKit/WebCore/Resources/northResizeCursor.png', |
| 506 '../third_party/WebKit/WebCore/Resources/northSouthResizeCursor.png', |
| 507 '../third_party/WebKit/WebCore/Resources/northWestResizeCursor.png', |
| 508 '../third_party/WebKit/WebCore/Resources/northWestSouthEastResizeCurso
r.png', |
| 509 '../third_party/WebKit/WebCore/Resources/notAllowedCursor.png', |
| 510 '../third_party/WebKit/WebCore/Resources/progressCursor.png', |
| 511 '../third_party/WebKit/WebCore/Resources/southEastResizeCursor.png', |
| 512 '../third_party/WebKit/WebCore/Resources/southResizeCursor.png', |
| 513 '../third_party/WebKit/WebCore/Resources/southWestResizeCursor.png', |
| 514 '../third_party/WebKit/WebCore/Resources/verticalTextCursor.png', |
| 515 '../third_party/WebKit/WebCore/Resources/waitCursor.png', |
| 516 '../third_party/WebKit/WebCore/Resources/westResizeCursor.png', |
| 517 '../third_party/WebKit/WebCore/Resources/zoomInCursor.png', |
| 518 '../third_party/WebKit/WebCore/Resources/zoomOutCursor.png', |
| 519 ], |
| 520 }, |
| 521 'hard_dependency': 1, |
| 522 'mac_framework_dirs': [ |
| 523 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Fram
eworks', |
| 524 ], |
| 525 'msvs_disabled_warnings': [ |
| 526 4138, 4244, 4291, 4305, 4344, 4355, 4521, 4099, |
| 527 ], |
| 528 'scons_line_length' : 1, |
| 529 'xcode_settings': { |
| 530 # Some Mac-specific parts of WebKit won't compile without having this |
| 531 # prefix header injected. |
| 532 # TODO(mark): make this a first-class setting. |
| 533 'GCC_PREFIX_HEADER': '../third_party/WebKit/WebCore/WebCorePrefix.h', |
| 534 }, |
| 535 'conditions': [ |
| 536 ['javascript_engine=="v8"', { |
| 537 'dependencies': [ |
| 538 '../v8/tools/gyp/v8.gyp:v8', |
| 539 ], |
| 540 'export_dependent_settings': [ |
| 541 '../v8/tools/gyp/v8.gyp:v8', |
| 542 ], |
| 543 }], |
| 544 ['OS=="linux" or OS=="freebsd"', { |
| 545 'dependencies': [ |
| 546 '../build/linux/system.gyp:fontconfig', |
| 547 '../build/linux/system.gyp:gtk', |
| 548 ], |
| 549 'sources': [ |
| 550 '../third_party/WebKit/WebCore/platform/graphics/chromium/VDMXParser
.cpp', |
| 551 '../third_party/WebKit/WebCore/platform/graphics/chromium/HarfbuzzSk
ia.cpp', |
| 552 ], |
| 553 'sources/': [ |
| 554 # Cherry-pick files excluded by the broader regular expressions abov
e. |
| 555 ['include', 'third_party/WebKit/WebCore/platform/chromium/KeyCodeCon
versionGtk\\.cpp$'], |
| 556 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F
ontCacheLinux\\.cpp$'], |
| 557 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F
ontLinux\\.cpp$'], |
| 558 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F
ontPlatformDataLinux\\.cpp$'], |
| 559 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/G
lyphPageTreeNodeLinux\\.cpp$'], |
| 560 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/S
impleFontDataLinux\\.cpp$'], |
| 561 ], |
| 562 'cflags': [ |
| 563 # WebCore does not work with strict aliasing enabled. |
| 564 # https://bugs.webkit.org/show_bug.cgi?id=25864 |
| 565 '-fno-strict-aliasing', |
| 566 ], |
| 567 }], |
| 568 ['OS=="mac"', { |
| 569 'actions': [ |
| 570 { |
| 571 # Allow framework-style #include of |
| 572 # <WebCore/WebCoreSystemInterface.h>. |
| 573 'action_name': 'WebCoreSystemInterface.h', |
| 574 'inputs': [ |
| 575 '../third_party/WebKit/WebCore/platform/mac/WebCoreSystemInterfa
ce.h', |
| 576 ], |
| 577 'outputs': [ |
| 578 '<(INTERMEDIATE_DIR)/WebCore/WebCoreSystemInterface.h', |
| 579 ], |
| 580 'action': ['cp', '<@(_inputs)', '<@(_outputs)'], |
| 581 }, |
| 582 ], |
| 583 'include_dirs': [ |
| 584 '../third_party/WebKit/WebKitLibraries', |
| 585 ], |
| 586 'sources/': [ |
| 587 # Additional files from the WebCore Mac build that are presently |
| 588 # used in the WebCore Chromium Mac build too. |
| 589 |
| 590 # The Mac build is PLATFORM_CF but does not use CFNetwork. |
| 591 ['include', 'CF\\.cpp$'], |
| 592 ['exclude', '/network/cf/'], |
| 593 |
| 594 # The Mac build is PLATFORM_CG too. platform/graphics/cg is the |
| 595 # only place that CG files we want to build are located, and not |
| 596 # all of them even have a CG suffix, so just add them by a |
| 597 # regexp matching their directory. |
| 598 ['include', '/platform/graphics/cg/[^/]*(?<!Win)?\\.(cpp|mm?)$'], |
| 599 |
| 600 # Use native Mac font code from WebCore. |
| 601 ['include', '/platform/(graphics/)?mac/[^/]*Font[^/]*\\.(cpp|mm?)$']
, |
| 602 |
| 603 # Cherry-pick some files that can't be included by broader regexps. |
| 604 # Some of these are used instead of Chromium platform files, see |
| 605 # the specific exclusions in the "sources!" list below. |
| 606 ['include', '/third_party/WebKit/WebCore/loader/archive/cf/LegacyWeb
Archive\\.cpp$'], |
| 607 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Color
Mac\\.mm$'], |
| 608 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Glyph
PageTreeNodeMac\\.cpp$'], |
| 609 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Graph
icsContextMac\\.mm$'], |
| 610 ['include', '/third_party/WebKit/WebCore/platform/mac/BlockException
s\\.mm$'], |
| 611 ['include', '/third_party/WebKit/WebCore/platform/mac/LocalCurrentGr
aphicsContext\\.mm$'], |
| 612 ['include', '/third_party/WebKit/WebCore/platform/mac/PurgeableBuffe
rMac\\.cpp$'], |
| 613 ['include', '/third_party/WebKit/WebCore/platform/mac/ScrollbarTheme
Mac\\.mm$'], |
| 614 ['include', '/third_party/WebKit/WebCore/platform/mac/WebCoreSystemI
nterface\\.mm$'], |
| 615 ['include', '/third_party/WebKit/WebCore/platform/mac/WebCoreTextRen
derer\\.mm$'], |
| 616 ['include', '/third_party/WebKit/WebCore/platform/text/mac/ShapeArab
ic\\.c$'], |
| 617 ['include', '/third_party/WebKit/WebCore/platform/text/mac/String(Im
pl)?Mac\\.mm$'], |
| 618 |
| 619 ['include', '/third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystem
Interface\\.m$'], |
| 620 ], |
| 621 'sources!': [ |
| 622 # The Mac currently uses FontCustomPlatformData.cpp from |
| 623 # platform/graphics/mac, included by regex above, instead. |
| 624 '../third_party/WebKit/WebCore/platform/graphics/chromium/FontCustom
PlatformData.cpp', |
| 625 |
| 626 # The Mac currently uses ScrollbarThemeMac.mm, included by regex |
| 627 # above, instead of ScrollbarThemeChromium.cpp. |
| 628 '../third_party/WebKit/WebCore/platform/chromium/ScrollbarThemeChrom
ium.cpp', |
| 629 |
| 630 # The Mac uses ImageSourceCG.cpp from platform/graphics/cg, included |
| 631 # by regex above, instead. |
| 632 '../third_party/WebKit/WebCore/platform/graphics/ImageSource.cpp', |
| 633 |
| 634 # These Skia files aren't currently built on the Mac, which uses |
| 635 # CoreGraphics directly for this portion of graphics handling. |
| 636 '../third_party/WebKit/WebCore/platform/graphics/skia/FloatPointSkia
.cpp', |
| 637 '../third_party/WebKit/WebCore/platform/graphics/skia/FloatRectSkia.
cpp', |
| 638 '../third_party/WebKit/WebCore/platform/graphics/skia/GradientSkia.c
pp', |
| 639 '../third_party/WebKit/WebCore/platform/graphics/skia/GraphicsContex
tSkia.cpp', |
| 640 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageBufferSki
a.cpp', |
| 641 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageSkia.cpp'
, |
| 642 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageSourceSki
a.cpp', |
| 643 '../third_party/WebKit/WebCore/platform/graphics/skia/IntPointSkia.c
pp', |
| 644 '../third_party/WebKit/WebCore/platform/graphics/skia/IntRectSkia.cp
p', |
| 645 '../third_party/WebKit/WebCore/platform/graphics/skia/PathSkia.cpp', |
| 646 '../third_party/WebKit/WebCore/platform/graphics/skia/PatternSkia.cp
p', |
| 647 '../third_party/WebKit/WebCore/platform/graphics/skia/Transformation
MatrixSkia.cpp', |
| 648 |
| 649 # RenderThemeChromiumSkia is not used on mac since RenderThemeChromi
umMac |
| 650 # does not reference the Skia code that is used by Windows and Linux
. |
| 651 '../third_party/WebKit/WebCore/rendering/RenderThemeChromiumSkia.cpp
', |
| 652 |
| 653 # Skia image-decoders are also not used on mac. CoreGraphics |
| 654 # is used directly instead. |
| 655 '../third_party/WebKit/WebCore/platform/image-decoders/ImageDecoder.
h', |
| 656 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageD
ecoder.cpp', |
| 657 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageD
ecoder.h', |
| 658 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageR
eader.cpp', |
| 659 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageR
eader.h', |
| 660 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageD
ecoder.cpp', |
| 661 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageD
ecoder.h', |
| 662 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageR
eader.cpp', |
| 663 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageR
eader.h', |
| 664 '../third_party/WebKit/WebCore/platform/image-decoders/ico/ICOImageD
ecoder.cpp', |
| 665 '../third_party/WebKit/WebCore/platform/image-decoders/ico/ICOImageD
ecoder.h', |
| 666 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg/JPEGImag
eDecoder.cpp', |
| 667 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg/JPEGImag
eDecoder.h', |
| 668 '../third_party/WebKit/WebCore/platform/image-decoders/png/PNGImageD
ecoder.cpp', |
| 669 '../third_party/WebKit/WebCore/platform/image-decoders/png/PNGImageD
ecoder.h', |
| 670 '../third_party/WebKit/WebCore/platform/image-decoders/skia/ImageDec
oderSkia.cpp', |
| 671 '../third_party/WebKit/WebCore/platform/image-decoders/xbm/XBMImageD
ecoder.cpp', |
| 672 '../third_party/WebKit/WebCore/platform/image-decoders/xbm/XBMImageD
ecoder.h', |
| 673 ], |
| 674 'link_settings': { |
| 675 'libraries': [ |
| 676 '../third_party/WebKit/WebKitLibraries/libWebKitSystemInterfaceLeo
pard.a', |
| 677 ], |
| 678 }, |
| 679 'direct_dependent_settings': { |
| 680 'include_dirs': [ |
| 681 '../third_party/WebKit/WebKitLibraries', |
| 682 '../third_party/WebKit/WebKit/mac/WebCoreSupport', |
| 683 ], |
| 684 }, |
| 685 }], |
| 686 ['OS=="win"', { |
| 687 'dependencies': ['../build/win/system.gyp:cygwin'], |
| 688 'sources/': [ |
| 689 ['exclude', 'Posix\\.cpp$'], |
| 690 ['include', '/opentype/'], |
| 691 ['include', '/TransparencyWin\\.cpp$'], |
| 692 ['include', '/SkiaFontWin\\.cpp$'], |
| 693 ], |
| 694 'defines': [ |
| 695 '__PRETTY_FUNCTION__=__FUNCTION__', |
| 696 ], |
| 697 # This is needed because Event.h in this directory is blocked |
| 698 # by a system header on windows. |
| 699 'include_dirs++': ['../third_party/WebKit/WebCore/dom'], |
| 700 'direct_dependent_settings': { |
| 701 'include_dirs+++': ['../third_party/WebKit/WebCore/dom'], |
| 702 }, |
| 703 }], |
| 704 ['OS!="linux" and OS!="freebsd"', {'sources/': [['exclude', '(Gtk|Linux)
\\.cpp$']]}], |
| 705 ['OS!="mac"', {'sources/': [['exclude', 'Mac\\.(cpp|mm?)$']]}], |
| 706 ['OS!="win"', { |
| 707 'sources/': [ |
| 708 ['exclude', 'Win\\.cpp$'], |
| 709 ['exclude', '/(Windows|Uniscribe)[^/]*\\.cpp$'] |
| 710 ], |
| 711 }], |
| 712 ], |
| 713 }, |
| 714 ], # targets |
| 715 } |
OLD | NEW |