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

Side by Side Diff: webkit/webcore.gyp

Issue 212003: Upstreamings parts of webkit.gyp (step 1) (Closed)
Patch Set: Created 11 years, 3 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 unified diff | Download patch
OLDNEW
(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 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698