Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright (c) 2009 The Chromium Authors. All rights reserved. | 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 | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 { | 5 { |
| 6 'variables': { | |
| 7 'feature_defines': [ | |
| 8 'ENABLE_CHANNEL_MESSAGING=1', | |
| 9 'ENABLE_DATABASE=1', | |
| 10 'ENABLE_DATAGRID=0', | |
| 11 'ENABLE_OFFLINE_WEB_APPLICATIONS=1', | |
| 12 'ENABLE_DASHBOARD_SUPPORT=0', | |
| 13 'ENABLE_DOM_STORAGE=1', | |
| 14 'ENABLE_JAVASCRIPT_DEBUGGER=0', | |
| 15 'ENABLE_JSC_MULTIPLE_THREADS=0', | |
| 16 'ENABLE_ICONDATABASE=0', | |
| 17 'ENABLE_NOTIFICATIONS=0', | |
| 18 'ENABLE_XSLT=1', | |
| 19 'ENABLE_XPATH=1', | |
| 20 'ENABLE_SHARED_WORKERS=0', | |
| 21 'ENABLE_SVG=1', | |
| 22 'ENABLE_SVG_ANIMATION=1', | |
| 23 'ENABLE_SVG_AS_IMAGE=1', | |
| 24 'ENABLE_SVG_USE=1', | |
| 25 'ENABLE_SVG_FOREIGN_OBJECT=1', | |
| 26 'ENABLE_SVG_FONTS=1', | |
| 27 'ENABLE_VIDEO=1', | |
| 28 'ENABLE_WORKERS=1', | |
| 29 ], | |
| 30 'non_feature_defines': [ | |
| 31 'BUILDING_CHROMIUM__=1', | |
| 32 'USE_GOOGLE_URL_LIBRARY=1', | |
| 33 'USE_SYSTEM_MALLOC=1', | |
| 34 'WEBCORE_NAVIGATOR_VENDOR="Google Inc."', | |
| 35 ], | |
| 36 'webcore_include_dirs': [ | |
| 37 '../third_party/WebKit/WebCore', | |
| 38 '../third_party/WebKit/WebCore/accessibility', | |
| 39 '../third_party/WebKit/WebCore/accessibility/chromium', | |
| 40 '../third_party/WebKit/WebCore/bindings/v8', | |
| 41 '../third_party/WebKit/WebCore/bindings/v8/custom', | |
| 42 '../third_party/WebKit/WebCore/bridge', | |
| 43 '../third_party/WebKit/WebCore/css', | |
| 44 '../third_party/WebKit/WebCore/dom', | |
| 45 '../third_party/WebKit/WebCore/dom/default', | |
| 46 '../third_party/WebKit/WebCore/editing', | |
| 47 '../third_party/WebKit/WebCore/history', | |
| 48 '../third_party/WebKit/WebCore/html', | |
| 49 '../third_party/WebKit/WebCore/html/canvas', | |
| 50 '../third_party/WebKit/WebCore/inspector', | |
| 51 '../third_party/WebKit/WebCore/loader', | |
| 52 '../third_party/WebKit/WebCore/loader/appcache', | |
| 53 '../third_party/WebKit/WebCore/loader/archive', | |
| 54 '../third_party/WebKit/WebCore/loader/icon', | |
| 55 '../third_party/WebKit/WebCore/notifications', | |
| 56 '../third_party/WebKit/WebCore/page', | |
| 57 '../third_party/WebKit/WebCore/page/animation', | |
| 58 '../third_party/WebKit/WebCore/page/chromium', | |
| 59 '../third_party/WebKit/WebCore/platform', | |
| 60 '../third_party/WebKit/WebCore/platform/animation', | |
| 61 '../third_party/WebKit/WebCore/platform/chromium', | |
| 62 '../third_party/WebKit/WebCore/platform/graphics', | |
| 63 '../third_party/WebKit/WebCore/platform/graphics/chromium', | |
| 64 '../third_party/WebKit/WebCore/platform/graphics/opentype', | |
| 65 '../third_party/WebKit/WebCore/platform/graphics/skia', | |
| 66 '../third_party/WebKit/WebCore/platform/graphics/transforms', | |
| 67 '../third_party/WebKit/WebCore/platform/image-decoders', | |
| 68 '../third_party/WebKit/WebCore/platform/image-decoders/bmp', | |
| 69 '../third_party/WebKit/WebCore/platform/image-decoders/gif', | |
| 70 '../third_party/WebKit/WebCore/platform/image-decoders/ico', | |
| 71 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg', | |
| 72 '../third_party/WebKit/WebCore/platform/image-decoders/png', | |
| 73 '../third_party/WebKit/WebCore/platform/image-decoders/skia', | |
| 74 '../third_party/WebKit/WebCore/platform/image-decoders/xbm', | |
| 75 '../third_party/WebKit/WebCore/platform/image-encoders/skia', | |
| 76 '../third_party/WebKit/WebCore/platform/mock', | |
| 77 '../third_party/WebKit/WebCore/platform/network', | |
| 78 '../third_party/WebKit/WebCore/platform/network/chromium', | |
| 79 '../third_party/WebKit/WebCore/platform/sql', | |
| 80 '../third_party/WebKit/WebCore/platform/text', | |
| 81 '../third_party/WebKit/WebCore/plugins', | |
| 82 '../third_party/WebKit/WebCore/rendering', | |
| 83 '../third_party/WebKit/WebCore/rendering/style', | |
| 84 '../third_party/WebKit/WebCore/storage', | |
| 85 '../third_party/WebKit/WebCore/svg', | |
| 86 '../third_party/WebKit/WebCore/svg/animation', | |
| 87 '../third_party/WebKit/WebCore/svg/graphics', | |
| 88 '../third_party/WebKit/WebCore/workers', | |
| 89 '../third_party/WebKit/WebCore/xml', | |
| 90 ], | |
| 91 'conditions': [ | |
| 92 ['OS=="linux"', { | |
| 93 'non_feature_defines': [ | |
| 94 # Mozilla on Linux effectively uses uname -sm, but when running | |
| 95 # 32-bit x86 code on an x86_64 processor, it uses | |
| 96 # "Linux i686 (x86_64)". Matching that would require making a | |
| 97 # run-time determination. | |
| 98 'WEBCORE_NAVIGATOR_PLATFORM="Linux i686"', | |
| 99 ], | |
| 100 }], | |
| 101 ['OS=="mac"', { | |
| 102 'non_feature_defines': [ | |
| 103 # Ensure that only Leopard features are used when doing the Mac build. | |
| 104 'BUILDING_ON_LEOPARD', | |
| 105 # Match Safari and Mozilla on Mac x86. | |
| 106 'WEBCORE_NAVIGATOR_PLATFORM="MacIntel"', | |
| 107 | |
| 108 # Chromium's version of WebCore includes the following Objective-C | |
| 109 # classes. The system-provided WebCore framework may also provide | |
| 110 # these classes. Because of the nature of Objective-C binding | |
| 111 # (dynamically at runtime), it's possible for the Chromium-provided | |
| 112 # versions to interfere with the system-provided versions. This may | |
| 113 # happen when a system framework attempts to use WebCore.framework, | |
| 114 # such as when converting an HTML-flavored string to an | |
| 115 # NSAttributedString. The solution is to force Objective-C class | |
| 116 # names that would conflict to use alternate names. | |
| 117 | |
| 118 # TODO(mark) This list will hopefully shrink but may also grow. | |
| 119 # Periodically run: | |
| 120 # nm libwebcore.a | grep -E '[atsATS] ([+-]\[|\.objc_class_name)' | |
| 121 # and make sure that everything listed there has the alternate | |
| 122 # ChromiumWebCoreObjC name, and that nothing extraneous is listed | |
| 123 # here. If all Objective-C can be eliminated from Chromium's WebCore | |
| 124 # library, these defines should be removed entirely. | |
| 125 # TODO(yaar) move these out of command line defines. | |
| 126 'ScrollbarPrefsObserver=ChromiumWebCoreObjCScrollbarPrefsObserver', | |
| 127 'WebCoreRenderThemeNotificationObserver=ChromiumWebCoreObjCWebCoreRend erThemeNotificationObserver', | |
| 128 'WebFontCache=ChromiumWebCoreObjCWebFontCache', | |
| 129 ], | |
| 130 'webcore_include_dirs+': [ | |
| 131 # platform/graphics/cg and mac needs to come before | |
| 132 # platform/graphics/chromium so that the Mac build picks up the | |
| 133 # version of ImageBufferData.h in the cg directory and | |
| 134 # FontPlatformData.h in the mac directory. The + prepends this | |
| 135 # directory to the list. | |
| 136 # TODO(port): This shouldn't need to be prepended. | |
| 137 # TODO(port): Eliminate dependency on platform/graphics/mac and | |
| 138 # related directories. | |
| 139 # platform/graphics/cg may need to stick around, though. | |
| 140 '../third_party/WebKit/WebCore/platform/graphics/cg', | |
| 141 '../third_party/WebKit/WebCore/platform/graphics/mac', | |
| 142 ], | |
| 143 'webcore_include_dirs': [ | |
| 144 # TODO(port): Eliminate dependency on platform/mac and related | |
| 145 # directories. | |
| 146 '../third_party/WebKit/WebCore/loader/archive/cf', | |
| 147 '../third_party/WebKit/WebCore/platform/mac', | |
| 148 '../third_party/WebKit/WebCore/platform/text/mac', | |
| 149 ], | |
| 150 }], | |
| 151 ['OS=="win"', { | |
| 152 'non_feature_defines': [ | |
| 153 'CRASH=__debugbreak', | |
| 154 # Match Safari and Mozilla on Windows. | |
| 155 'WEBCORE_NAVIGATOR_PLATFORM="Win32"', | |
| 156 ], | |
| 157 'webcore_include_dirs': [ | |
| 158 '../third_party/WebKit/WebCore/page/win', | |
| 159 '../third_party/WebKit/WebCore/platform/graphics/win', | |
| 160 '../third_party/WebKit/WebCore/platform/text/win', | |
| 161 '../third_party/WebKit/WebCore/platform/win', | |
| 162 ], | |
| 163 }], | |
| 164 ], | |
| 165 }, | |
| 166 'includes': [ | 6 'includes': [ |
| 167 '../third_party/WebKit/JavaScriptCore/JavaScriptCore.gypi', | 7 '../third_party/WebKit/WebCore/WebCore.gypi', |
|
Mark Mentovai
2009/09/17 17:56:26
Is that a space at the end of the line? Presubmit
| |
| 168 '../third_party/WebKit/WebCore/WebCore.gypi', | |
| 169 ], | 8 ], |
| 170 'targets': [ | 9 'targets': [ |
| 171 { | 10 { |
| 172 # Currently, builders assume webkit.sln builds test_shell on windows. | 11 # Currently, builders assume webkit.sln builds test_shell on windows. |
| 173 # We should change this, but for now allows trybot runs. | 12 # We should change this, but for now allows trybot runs. |
| 174 # for now. | 13 # for now. |
| 175 'target_name': 'pull_in_test_shell', | 14 'target_name': 'pull_in_test_shell', |
| 176 'type': 'none', | 15 'type': 'none', |
| 177 'conditions': [ | 16 'conditions': [ |
| 178 ['OS=="win"', { | 17 ['OS=="win"', { |
| 179 'dependencies': [ | 18 'dependencies': [ |
| 180 'tools/test_shell/test_shell.gyp:*', | 19 'tools/test_shell/test_shell.gyp:*', |
| 181 ], | 20 ], |
| 182 }], | 21 }], |
| 183 ], | 22 ], |
| 184 }, | 23 }, |
| 185 { | 24 { |
| 186 # This target creates config.h suitable for a WebKit-V8 build and | |
| 187 # copies a few other files around as needed. | |
| 188 'target_name': 'config', | |
| 189 'type': 'none', | |
| 190 'msvs_guid': '2E2D3301-2EC4-4C0F-B889-87073B30F673', | |
| 191 'direct_dependent_settings': { | |
| 192 'defines': [ | |
| 193 '<@(feature_defines)', | |
| 194 '<@(non_feature_defines)', | |
| 195 ], | |
| 196 }, | |
| 197 'conditions': [ | |
| 198 ['OS=="win"', { | |
| 199 'dependencies': ['../build/win/system.gyp:cygwin'], | |
| 200 'direct_dependent_settings': { | |
| 201 'defines': [ | |
| 202 '__STD_C', | |
| 203 '_CRT_SECURE_NO_DEPRECATE', | |
| 204 '_SCL_SECURE_NO_DEPRECATE', | |
| 205 ], | |
| 206 'include_dirs': [ | |
| 207 '../third_party/WebKit/JavaScriptCore/os-win32', | |
| 208 'build/JavaScriptCore', | |
| 209 ], | |
| 210 }, | |
| 211 }], | |
| 212 ], | |
| 213 }, | |
| 214 { | |
| 215 'target_name': 'wtf', | |
| 216 'type': '<(library)', | |
| 217 'msvs_guid': 'AA8A5A85-592B-4357-BC60-E0E91E026AF6', | |
| 218 'dependencies': [ | |
| 219 'config', | |
| 220 '../third_party/icu/icu.gyp:icui18n', | |
| 221 '../third_party/icu/icu.gyp:icuuc', | |
| 222 ], | |
| 223 'include_dirs': [ | |
| 224 '../third_party/WebKit/JavaScriptCore', | |
| 225 '../third_party/WebKit/JavaScriptCore/wtf', | |
| 226 '../third_party/WebKit/JavaScriptCore/wtf/unicode', | |
| 227 ], | |
| 228 'sources': [ | |
| 229 '<@(javascriptcore_files)', | |
| 230 ], | |
| 231 'sources/': [ | |
| 232 # First exclude everything ... | |
| 233 ['exclude', 'JavaScriptCore/'], | |
| 234 # ... Then include what we want. | |
| 235 ['include', 'JavaScriptCore/wtf/'], | |
| 236 # GLib/GTK, even though its name doesn't really indicate. | |
| 237 ['exclude', '/(GOwnPtr|glib/.*)\\.(cpp|h)$'], | |
| 238 ['exclude', '(Default|Gtk|Mac|None|Qt|Win|Wx)\\.(cpp|mm)$'], | |
| 239 ], | |
| 240 'direct_dependent_settings': { | |
| 241 'include_dirs': [ | |
| 242 '../third_party/WebKit/JavaScriptCore', | |
| 243 '../third_party/WebKit/JavaScriptCore/wtf', | |
| 244 ], | |
| 245 }, | |
| 246 'export_dependent_settings': [ | |
| 247 'config', | |
| 248 '../third_party/icu/icu.gyp:icui18n', | |
| 249 '../third_party/icu/icu.gyp:icuuc', | |
| 250 ], | |
| 251 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706], | |
| 252 'conditions': [ | |
| 253 ['OS=="win"', { | |
| 254 'sources/': [ | |
| 255 ['exclude', 'ThreadingPthreads\\.cpp$'], | |
| 256 ['include', 'Thread(ing|Specific)Win\\.cpp$'] | |
| 257 ], | |
| 258 'include_dirs': [ | |
| 259 'build', | |
| 260 '../third_party/WebKit/JavaScriptCore/kjs', | |
| 261 '../third_party/WebKit/JavaScriptCore/API', | |
| 262 # These 3 do not seem to exist. | |
| 263 '../third_party/WebKit/JavaScriptCore/bindings', | |
| 264 '../third_party/WebKit/JavaScriptCore/bindings/c', | |
| 265 '../third_party/WebKit/JavaScriptCore/bindings/jni', | |
| 266 'pending', | |
| 267 'pending/wtf', | |
| 268 ], | |
| 269 'include_dirs!': [ | |
| 270 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
| 271 ], | |
| 272 }], | |
| 273 ['OS=="linux" or OS=="freebsd"', { | |
| 274 'defines': ['WTF_USE_PTHREADS=1'], | |
| 275 'direct_dependent_settings': { | |
| 276 'defines': ['WTF_USE_PTHREADS=1'], | |
| 277 }, | |
| 278 }], | |
| 279 ], | |
| 280 }, | |
| 281 { | |
| 282 'target_name': 'pcre', | |
| 283 'type': '<(library)', | |
| 284 'dependencies': [ | |
| 285 'config', | |
| 286 'wtf', | |
| 287 ], | |
| 288 'msvs_guid': '49909552-0B0C-4C14-8CF6-DB8A2ADE0934', | |
| 289 'actions': [ | |
| 290 { | |
| 291 'action_name': 'dftables', | |
| 292 'inputs': [ | |
| 293 '../third_party/WebKit/JavaScriptCore/pcre/dftables', | |
| 294 ], | |
| 295 'outputs': [ | |
| 296 '<(INTERMEDIATE_DIR)/chartables.c', | |
| 297 ], | |
| 298 'action': ['perl', '-w', '<@(_inputs)', '<@(_outputs)'], | |
| 299 }, | |
| 300 ], | |
| 301 'include_dirs': [ | |
| 302 '<(INTERMEDIATE_DIR)', | |
| 303 ], | |
| 304 'sources': [ | |
| 305 '<@(javascriptcore_files)', | |
| 306 ], | |
| 307 'sources/': [ | |
| 308 # First exclude everything ... | |
| 309 ['exclude', 'JavaScriptCore/'], | |
| 310 # ... Then include what we want. | |
| 311 ['include', 'JavaScriptCore/pcre/'], | |
| 312 # ucptable.cpp is #included by pcre_ucp_searchfunchs.cpp and is not | |
| 313 # intended to be compiled directly. | |
| 314 ['exclude', 'JavaScriptCore/pcre/ucptable.cpp$'], | |
| 315 ], | |
| 316 'export_dependent_settings': [ | |
| 317 'wtf', | |
| 318 ], | |
| 319 'conditions': [ | |
| 320 ['OS=="win"', { | |
| 321 'dependencies': ['../build/win/system.gyp:cygwin'], | |
| 322 }], | |
| 323 ], | |
| 324 }, | |
| 325 { | |
| 326 'target_name': 'webcore', | |
| 327 'type': '<(library)', | |
| 328 'msvs_guid': '1C16337B-ACF3-4D03-AA90-851C5B5EADA6', | |
| 329 'dependencies': [ | |
| 330 'config', | |
| 331 'pcre', | |
| 332 'wtf', | |
| 333 '../build/temp_gyp/googleurl.gyp:googleurl', | |
| 334 '../skia/skia.gyp:skia', | |
| 335 '../third_party/libjpeg/libjpeg.gyp:libjpeg', | |
| 336 '../third_party/libpng/libpng.gyp:libpng', | |
| 337 '../third_party/libxml/libxml.gyp:libxml', | |
| 338 '../third_party/libxslt/libxslt.gyp:libxslt', | |
| 339 '../third_party/npapi/npapi.gyp:npapi', | |
| 340 '../third_party/sqlite/sqlite.gyp:sqlite', | |
| 341 ], | |
| 342 'actions': [ | |
| 343 # Actions to build derived sources. | |
| 344 { | |
| 345 'action_name': 'CSSPropertyNames', | |
| 346 'inputs': [ | |
| 347 '../third_party/WebKit/WebCore/css/makeprop.pl', | |
| 348 '../third_party/WebKit/WebCore/css/CSSPropertyNames.in', | |
| 349 '../third_party/WebKit/WebCore/css/SVGCSSPropertyNames.in', | |
| 350 ], | |
| 351 'outputs': [ | |
| 352 '<(INTERMEDIATE_DIR)/CSSPropertyNames.cpp', | |
| 353 '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSPropertyNames.h', | |
| 354 ], | |
| 355 'action': ['python', 'build/action_csspropertynames.py', '<@(_outputs) ', '--', '<@(_inputs)'], | |
| 356 }, | |
| 357 { | |
| 358 'action_name': 'CSSValueKeywords', | |
| 359 'inputs': [ | |
| 360 '../third_party/WebKit/WebCore/css/makevalues.pl', | |
| 361 '../third_party/WebKit/WebCore/css/CSSValueKeywords.in', | |
| 362 '../third_party/WebKit/WebCore/css/SVGCSSValueKeywords.in', | |
| 363 ], | |
| 364 'outputs': [ | |
| 365 '<(INTERMEDIATE_DIR)/CSSValueKeywords.c', | |
| 366 '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSValueKeywords.h', | |
| 367 ], | |
| 368 'action': ['python', 'build/action_cssvaluekeywords.py', '<@(_outputs) ', '--', '<@(_inputs)'], | |
| 369 }, | |
| 370 { | |
| 371 'action_name': 'HTMLNames', | |
| 372 'inputs': [ | |
| 373 '../third_party/WebKit/WebCore/dom/make_names.pl', | |
| 374 '../third_party/WebKit/WebCore/html/HTMLTagNames.in', | |
| 375 '../third_party/WebKit/WebCore/html/HTMLAttributeNames.in', | |
| 376 ], | |
| 377 'outputs': [ | |
| 378 '<(INTERMEDIATE_DIR)/HTMLNames.cpp', | |
| 379 '<(SHARED_INTERMEDIATE_DIR)/webkit/HTMLNames.h', | |
| 380 '<(INTERMEDIATE_DIR)/HTMLElementFactory.cpp', | |
| 381 # Pass --wrapperFactory to make_names to get these (JSC build?) | |
| 382 #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.cpp', | |
| 383 #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.h', | |
| 384 ], | |
| 385 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--' , '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], | |
| 386 'process_outputs_as_sources': 1, | |
| 387 }, | |
| 388 { | |
| 389 'action_name': 'SVGNames', | |
| 390 'inputs': [ | |
| 391 '../third_party/WebKit/WebCore/dom/make_names.pl', | |
| 392 '../third_party/WebKit/WebCore/svg/svgtags.in', | |
| 393 '../third_party/WebKit/WebCore/svg/svgattrs.in', | |
| 394 ], | |
| 395 'outputs': [ | |
| 396 '<(INTERMEDIATE_DIR)/SVGNames.cpp', | |
| 397 '<(INTERMEDIATE_DIR)/SVGNames.h', | |
| 398 '<(INTERMEDIATE_DIR)/SVGElementFactory.cpp', | |
| 399 '<(INTERMEDIATE_DIR)/SVGElementFactory.h', | |
| 400 # Pass --wrapperFactory to make_names to get these (JSC build?) | |
| 401 #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.cpp', | |
| 402 #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.h', | |
| 403 ], | |
| 404 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--' , '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], | |
| 405 'process_outputs_as_sources': 1, | |
| 406 }, | |
| 407 { | |
| 408 'action_name': 'UserAgentStyleSheets', | |
| 409 'inputs': [ | |
| 410 '../third_party/WebKit/WebCore/css/make-css-file-arrays.pl', | |
| 411 '../third_party/WebKit/WebCore/css/html.css', | |
| 412 '../third_party/WebKit/WebCore/css/quirks.css', | |
| 413 '../third_party/WebKit/WebCore/css/view-source.css', | |
| 414 '../third_party/WebKit/WebCore/css/themeChromiumLinux.css', | |
| 415 '../third_party/WebKit/WebCore/css/themeWin.css', | |
| 416 '../third_party/WebKit/WebCore/css/themeWinQuirks.css', | |
| 417 '../third_party/WebKit/WebCore/css/svg.css', | |
| 418 '../third_party/WebKit/WebCore/css/mediaControls.css', | |
| 419 '../third_party/WebKit/WebCore/css/mediaControlsChromium.css', | |
| 420 ], | |
| 421 'outputs': [ | |
| 422 '<(INTERMEDIATE_DIR)/UserAgentStyleSheets.h', | |
| 423 '<(INTERMEDIATE_DIR)/UserAgentStyleSheetsData.cpp', | |
| 424 ], | |
| 425 'action': ['python', 'build/action_useragentstylesheets.py', '<@(_outp uts)', '--', '<@(_inputs)'], | |
| 426 'process_outputs_as_sources': 1, | |
| 427 }, | |
| 428 { | |
| 429 'action_name': 'XLinkNames', | |
| 430 'inputs': [ | |
| 431 '../third_party/WebKit/WebCore/dom/make_names.pl', | |
| 432 '../third_party/WebKit/WebCore/svg/xlinkattrs.in', | |
| 433 ], | |
| 434 'outputs': [ | |
| 435 '<(INTERMEDIATE_DIR)/XLinkNames.cpp', | |
| 436 '<(INTERMEDIATE_DIR)/XLinkNames.h', | |
| 437 ], | |
| 438 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--' , '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], | |
| 439 'process_outputs_as_sources': 1, | |
| 440 }, | |
| 441 { | |
| 442 'action_name': 'XMLNames', | |
| 443 'inputs': [ | |
| 444 '../third_party/WebKit/WebCore/dom/make_names.pl', | |
| 445 '../third_party/WebKit/WebCore/xml/xmlattrs.in', | |
| 446 ], | |
| 447 'outputs': [ | |
| 448 '<(INTERMEDIATE_DIR)/XMLNames.cpp', | |
| 449 '<(INTERMEDIATE_DIR)/XMLNames.h', | |
| 450 ], | |
| 451 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--' , '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], | |
| 452 'process_outputs_as_sources': 1, | |
| 453 }, | |
| 454 { | |
| 455 'action_name': 'tokenizer', | |
| 456 'inputs': [ | |
| 457 '../third_party/WebKit/WebCore/css/maketokenizer', | |
| 458 '../third_party/WebKit/WebCore/css/tokenizer.flex', | |
| 459 ], | |
| 460 'outputs': [ | |
| 461 '<(INTERMEDIATE_DIR)/tokenizer.cpp', | |
| 462 ], | |
| 463 'action': ['python', 'build/action_maketokenizer.py', '<@(_outputs)', '--', '<@(_inputs)'], | |
| 464 }, | |
| 465 ], | |
| 466 'rules': [ | |
| 467 # Rules to build derived sources. | |
| 468 { | |
| 469 'rule_name': 'bison', | |
| 470 'extension': 'y', | |
| 471 'outputs': [ | |
| 472 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).cpp', | |
| 473 '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).h' | |
| 474 ], | |
| 475 'action': ['python', 'build/rule_bison.py', '<(RULE_INPUT_PATH)', '<(I NTERMEDIATE_DIR)'], | |
| 476 'process_outputs_as_sources': 1, | |
| 477 }, | |
| 478 { | |
| 479 'rule_name': 'gperf', | |
| 480 'extension': 'gperf', | |
| 481 # gperf output is only ever #included by other source files. As | |
| 482 # such, process_outputs_as_sources is off. Some gperf output is | |
| 483 # #included as *.c and some as *.cpp. Since there's no way to tell | |
| 484 # which one will be needed in a rule definition, declare both as | |
| 485 # outputs. The harness script will generate one file and copy it to | |
| 486 # the other. | |
| 487 # | |
| 488 # This rule places outputs in SHARED_INTERMEDIATE_DIR because glue | |
| 489 # needs access to HTMLEntityNames.c. | |
| 490 'outputs': [ | |
| 491 '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).c', | |
| 492 '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).cpp', | |
| 493 ], | |
| 494 'action': ['python', 'build/rule_gperf.py', '<(RULE_INPUT_PATH)', '<(S HARED_INTERMEDIATE_DIR)/webkit'], | |
| 495 'process_outputs_as_sources': 0, | |
| 496 }, | |
| 497 # Rule to build generated JavaScript (V8) bindings from .idl source. | |
| 498 { | |
| 499 'rule_name': 'binding', | |
| 500 'extension': 'idl', | |
| 501 'msvs_external_rule': 1, | |
| 502 'inputs': [ | |
| 503 '../third_party/WebKit/WebCore/bindings/scripts/generate-bindings.pl ', | |
| 504 '../third_party/WebKit/WebCore/bindings/scripts/CodeGenerator.pm', | |
| 505 '../third_party/WebKit/WebCore/bindings/scripts/CodeGeneratorV8.pm', | |
| 506 '../third_party/WebKit/WebCore/bindings/scripts/IDLParser.pm', | |
| 507 '../third_party/WebKit/WebCore/bindings/scripts/IDLStructure.pm', | |
| 508 ], | |
| 509 'outputs': [ | |
| 510 '<(INTERMEDIATE_DIR)/bindings/V8<(RULE_INPUT_ROOT).cpp', | |
| 511 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', | |
| 512 ], | |
| 513 'variables': { | |
| 514 'generator_include_dirs': [ | |
| 515 '--include', '../third_party/WebKit/WebCore/css', | |
| 516 '--include', '../third_party/WebKit/WebCore/dom', | |
| 517 '--include', '../third_party/WebKit/WebCore/html', | |
| 518 '--include', '../third_party/WebKit/WebCore/notifications', | |
| 519 '--include', '../third_party/WebKit/WebCore/page', | |
| 520 '--include', '../third_party/WebKit/WebCore/plugins', | |
| 521 '--include', '../third_party/WebKit/WebCore/svg', | |
| 522 '--include', '../third_party/WebKit/WebCore/workers', | |
| 523 '--include', '../third_party/WebKit/WebCore/xml', | |
| 524 ], | |
| 525 }, | |
| 526 '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)'], | |
| 527 # They are included by DerivedSourcesAllInOne.cpp instead. | |
| 528 'process_outputs_as_sources': 0, | |
| 529 'message': 'Generating binding from <(RULE_INPUT_PATH)', | |
| 530 }, | |
| 531 ], | |
| 532 'include_dirs': [ | |
| 533 '<(INTERMEDIATE_DIR)', | |
| 534 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
| 535 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | |
| 536 '<@(webcore_include_dirs)', | |
| 537 ], | |
| 538 'sources': [ | |
| 539 # bison rule | |
| 540 '../third_party/WebKit/WebCore/css/CSSGrammar.y', | |
| 541 '../third_party/WebKit/WebCore/xml/XPathGrammar.y', | |
| 542 | |
| 543 # gperf rule | |
| 544 '../third_party/WebKit/WebCore/html/DocTypeStrings.gperf', | |
| 545 '../third_party/WebKit/WebCore/html/HTMLEntityNames.gperf', | |
| 546 '../third_party/WebKit/WebCore/platform/ColorData.gperf', | |
| 547 | |
| 548 # This file includes all the .cpp files generated from the .idl files | |
| 549 # in webcore_files. | |
| 550 '../third_party/WebKit/WebCore/bindings/v8/DerivedSourcesAllInOne.cpp', | |
| 551 | |
| 552 '<@(webcore_files)', | |
| 553 | |
| 554 'extensions/v8/gc_extension.cc', | |
| 555 'extensions/v8/gc_extension.h', | |
| 556 'extensions/v8/gears_extension.cc', | |
| 557 'extensions/v8/gears_extension.h', | |
| 558 'extensions/v8/interval_extension.cc', | |
| 559 'extensions/v8/interval_extension.h', | |
| 560 'extensions/v8/playback_extension.cc', | |
| 561 'extensions/v8/playback_extension.h', | |
| 562 'extensions/v8/profiler_extension.cc', | |
| 563 'extensions/v8/profiler_extension.h', | |
| 564 'extensions/v8/benchmarking_extension.cc', | |
| 565 'extensions/v8/benchmarking_extension.h', | |
| 566 | |
| 567 # For WebCoreSystemInterface, Mac-only. | |
| 568 '../third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystemInterface.m', | |
| 569 ], | |
| 570 'sources/': [ | |
| 571 # Exclude JSC custom bindings. | |
| 572 ['exclude', '/third_party/WebKit/WebCore/bindings/js'], | |
| 573 | |
| 574 # SVG_FILTERS only. | |
| 575 ['exclude', '/third_party/WebKit/WebCore/svg/SVG(FE|Filter)[^/]*\\.idl$' ], | |
| 576 | |
| 577 # Fortunately, many things can be excluded by using broad patterns. | |
| 578 | |
| 579 # Exclude things that don't apply to the Chromium platform on the basis | |
| 580 # of their enclosing directories and tags at the ends of their | |
| 581 # filenames. | |
| 582 ['exclude', '/(android|cairo|cf|cg|curl|gtk|haiku|linux|mac|opentype|pos ix|qt|soup|symbian|win|wx)/'], | |
| 583 ['exclude', '(?<!Chromium)(SVGAllInOne|Android|Cairo|CF|CG|Curl|Gtk|Linu x|Mac|OpenType|POSIX|Posix|Qt|Safari|Soup|Symbian|Win|Wx)\\.(cpp|mm?)$'], | |
| 584 | |
| 585 # JSC-only. | |
| 586 ['exclude', '/third_party/WebKit/WebCore/inspector/JavaScript[^/]*\\.cpp $'], | |
| 587 | |
| 588 # ENABLE_OFFLINE_WEB_APPLICATIONS, exclude most of webcore's impl | |
| 589 ['exclude', '/third_party/WebKit/WebCore/loader/appcache/'], | |
| 590 ['include', '/third_party/WebKit/WebCore/loader/appcache/ApplicationCach eHost\.h$'], | |
| 591 ['include', '/third_party/WebKit/WebCore/loader/appcache/DOMApplicationC ache\.(h|cpp|idl)$'], | |
| 592 | |
| 593 # SVG_FILTERS only. | |
| 594 ['exclude', '/third_party/WebKit/WebCore/(platform|svg)/graphics/filters /'], | |
| 595 ['exclude', '/third_party/WebKit/WebCore/svg/Filter[^/]*\\.cpp$'], | |
| 596 ['exclude', '/third_party/WebKit/WebCore/svg/SVG(FE|Filter)[^/]*\\.cpp$' ], | |
| 597 | |
| 598 # Exclude some DB-related files. | |
| 599 ['exclude', '/third_party/WebKit/WebCore/platform/sql/SQLiteFileSystem.c pp'], | |
| 600 ], | |
| 601 'sources!': [ | |
| 602 # Custom bindings in bindings/v8/custom exist for these. | |
| 603 '../third_party/WebKit/WebCore/dom/EventListener.idl', | |
| 604 '../third_party/WebKit/WebCore/dom/EventTarget.idl', | |
| 605 '../third_party/WebKit/WebCore/html/VoidCallback.idl', | |
| 606 | |
| 607 # JSC-only. | |
| 608 '../third_party/WebKit/WebCore/inspector/JavaScriptCallFrame.idl', | |
| 609 | |
| 610 # ENABLE_GEOLOCATION only. | |
| 611 '../third_party/WebKit/WebCore/page/Geolocation.idl', | |
| 612 '../third_party/WebKit/WebCore/page/Geoposition.idl', | |
| 613 '../third_party/WebKit/WebCore/page/PositionCallback.idl', | |
| 614 '../third_party/WebKit/WebCore/page/PositionError.idl', | |
| 615 '../third_party/WebKit/WebCore/page/PositionErrorCallback.idl', | |
| 616 | |
| 617 # Bindings with custom Objective-C implementations. | |
| 618 '../third_party/WebKit/WebCore/page/AbstractView.idl', | |
| 619 | |
| 620 # TODO(mark): I don't know why all of these are excluded. | |
| 621 # Extra SVG bindings to exclude. | |
| 622 '../third_party/WebKit/WebCore/svg/ElementTimeControl.idl', | |
| 623 '../third_party/WebKit/WebCore/svg/SVGAnimatedPathData.idl', | |
| 624 '../third_party/WebKit/WebCore/svg/SVGComponentTransferFunctionElement.i dl', | |
| 625 '../third_party/WebKit/WebCore/svg/SVGExternalResourcesRequired.idl', | |
| 626 '../third_party/WebKit/WebCore/svg/SVGFitToViewBox.idl', | |
| 627 '../third_party/WebKit/WebCore/svg/SVGHKernElement.idl', | |
| 628 '../third_party/WebKit/WebCore/svg/SVGLangSpace.idl', | |
| 629 '../third_party/WebKit/WebCore/svg/SVGLocatable.idl', | |
| 630 '../third_party/WebKit/WebCore/svg/SVGStylable.idl', | |
| 631 '../third_party/WebKit/WebCore/svg/SVGTests.idl', | |
| 632 '../third_party/WebKit/WebCore/svg/SVGTransformable.idl', | |
| 633 '../third_party/WebKit/WebCore/svg/SVGViewSpec.idl', | |
| 634 '../third_party/WebKit/WebCore/svg/SVGZoomAndPan.idl', | |
| 635 | |
| 636 # TODO(mark): I don't know why these are excluded, either. | |
| 637 # Someone (me?) should figure it out and add appropriate comments. | |
| 638 '../third_party/WebKit/WebCore/css/CSSUnknownRule.idl', | |
| 639 | |
| 640 # A few things can't be excluded by patterns. List them individually. | |
| 641 | |
| 642 # Don't build StorageNamespace. We have our own implementation. | |
| 643 '../third_party/WebKit/WebCore/storage/StorageNamespace.cpp', | |
| 644 | |
| 645 # Use history/BackForwardListChromium.cpp instead. | |
| 646 '../third_party/WebKit/WebCore/history/BackForwardList.cpp', | |
| 647 | |
| 648 # Use loader/icon/IconDatabaseNone.cpp instead. | |
| 649 '../third_party/WebKit/WebCore/loader/icon/IconDatabase.cpp', | |
| 650 | |
| 651 # Use platform/KURLGoogle.cpp instead. | |
| 652 '../third_party/WebKit/WebCore/platform/KURL.cpp', | |
| 653 | |
| 654 # Use platform/MIMETypeRegistryChromium.cpp instead. | |
| 655 '../third_party/WebKit/WebCore/platform/MIMETypeRegistry.cpp', | |
| 656 | |
| 657 # USE_NEW_THEME only. | |
| 658 '../third_party/WebKit/WebCore/platform/Theme.cpp', | |
| 659 | |
| 660 # Exclude some, but not all, of plugins. | |
| 661 '../third_party/WebKit/WebCore/plugins/PluginDatabase.cpp', | |
| 662 '../third_party/WebKit/WebCore/plugins/PluginInfoStore.cpp', | |
| 663 '../third_party/WebKit/WebCore/plugins/PluginMainThreadScheduler.cpp', | |
| 664 '../third_party/WebKit/WebCore/plugins/PluginPackage.cpp', | |
| 665 '../third_party/WebKit/WebCore/plugins/PluginStream.cpp', | |
| 666 '../third_party/WebKit/WebCore/plugins/PluginView.cpp', | |
| 667 '../third_party/WebKit/WebCore/plugins/npapi.cpp', | |
| 668 | |
| 669 # Use LinkHashChromium.cpp instead | |
| 670 '../third_party/WebKit/WebCore/platform/LinkHash.cpp', | |
| 671 | |
| 672 # Don't build these. | |
| 673 # TODO(mark): I don't know exactly why these are excluded. It would | |
| 674 # be nice to provide more explicit comments. Some of these do actually | |
| 675 # compile. | |
| 676 '../third_party/WebKit/WebCore/dom/StaticStringList.cpp', | |
| 677 '../third_party/WebKit/WebCore/loader/icon/IconFetcher.cpp', | |
| 678 '../third_party/WebKit/WebCore/loader/UserStyleSheetLoader.cpp', | |
| 679 '../third_party/WebKit/WebCore/platform/graphics/GraphicsLayer.cpp', | |
| 680 '../third_party/WebKit/WebCore/platform/graphics/RenderLayerBacking.cpp' , | |
| 681 '../third_party/WebKit/WebCore/platform/graphics/RenderLayerCompositor.c pp', | |
| 682 | |
| 683 # We use a multi-process version from the WebKit API. | |
| 684 '../third_party/WebKit/WebCore/dom/default/PlatformMessagePortChannel.cp p', | |
| 685 '../third_party/WebKit/WebCore/dom/default/PlatformMessagePortChannel.h' , | |
| 686 | |
| 687 ], | |
| 688 'direct_dependent_settings': { | |
| 689 'include_dirs': [ | |
| 690 '<(SHARED_INTERMEDIATE_DIR)/webkit', | |
| 691 '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', | |
| 692 '<@(webcore_include_dirs)', | |
| 693 ], | |
| 694 'mac_framework_dirs': [ | |
| 695 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Fr ameworks', | |
| 696 ], | |
| 697 }, | |
| 698 'export_dependent_settings': [ | |
| 699 'wtf', | |
| 700 '../build/temp_gyp/googleurl.gyp:googleurl', | |
| 701 '../skia/skia.gyp:skia', | |
| 702 '../third_party/npapi/npapi.gyp:npapi', | |
| 703 ], | |
| 704 'link_settings': { | |
| 705 'mac_bundle_resources': [ | |
| 706 '../third_party/WebKit/WebCore/Resources/aliasCursor.png', | |
| 707 '../third_party/WebKit/WebCore/Resources/cellCursor.png', | |
| 708 '../third_party/WebKit/WebCore/Resources/contextMenuCursor.png', | |
| 709 '../third_party/WebKit/WebCore/Resources/copyCursor.png', | |
| 710 '../third_party/WebKit/WebCore/Resources/crossHairCursor.png', | |
| 711 '../third_party/WebKit/WebCore/Resources/eastResizeCursor.png', | |
| 712 '../third_party/WebKit/WebCore/Resources/eastWestResizeCursor.png', | |
| 713 '../third_party/WebKit/WebCore/Resources/helpCursor.png', | |
| 714 '../third_party/WebKit/WebCore/Resources/linkCursor.png', | |
| 715 '../third_party/WebKit/WebCore/Resources/missingImage.png', | |
| 716 '../third_party/WebKit/WebCore/Resources/moveCursor.png', | |
| 717 '../third_party/WebKit/WebCore/Resources/noDropCursor.png', | |
| 718 '../third_party/WebKit/WebCore/Resources/noneCursor.png', | |
| 719 '../third_party/WebKit/WebCore/Resources/northEastResizeCursor.png', | |
| 720 '../third_party/WebKit/WebCore/Resources/northEastSouthWestResizeCurso r.png', | |
| 721 '../third_party/WebKit/WebCore/Resources/northResizeCursor.png', | |
| 722 '../third_party/WebKit/WebCore/Resources/northSouthResizeCursor.png', | |
| 723 '../third_party/WebKit/WebCore/Resources/northWestResizeCursor.png', | |
| 724 '../third_party/WebKit/WebCore/Resources/northWestSouthEastResizeCurso r.png', | |
| 725 '../third_party/WebKit/WebCore/Resources/notAllowedCursor.png', | |
| 726 '../third_party/WebKit/WebCore/Resources/progressCursor.png', | |
| 727 '../third_party/WebKit/WebCore/Resources/southEastResizeCursor.png', | |
| 728 '../third_party/WebKit/WebCore/Resources/southResizeCursor.png', | |
| 729 '../third_party/WebKit/WebCore/Resources/southWestResizeCursor.png', | |
| 730 '../third_party/WebKit/WebCore/Resources/verticalTextCursor.png', | |
| 731 '../third_party/WebKit/WebCore/Resources/waitCursor.png', | |
| 732 '../third_party/WebKit/WebCore/Resources/westResizeCursor.png', | |
| 733 '../third_party/WebKit/WebCore/Resources/zoomInCursor.png', | |
| 734 '../third_party/WebKit/WebCore/Resources/zoomOutCursor.png', | |
| 735 ], | |
| 736 }, | |
| 737 'hard_dependency': 1, | |
| 738 'mac_framework_dirs': [ | |
| 739 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Fram eworks', | |
| 740 ], | |
| 741 'msvs_disabled_warnings': [ | |
| 742 4138, 4244, 4291, 4305, 4344, 4355, 4521, 4099, | |
| 743 ], | |
| 744 'scons_line_length' : 1, | |
| 745 'xcode_settings': { | |
| 746 # Some Mac-specific parts of WebKit won't compile without having this | |
| 747 # prefix header injected. | |
| 748 # TODO(mark): make this a first-class setting. | |
| 749 'GCC_PREFIX_HEADER': '../third_party/WebKit/WebCore/WebCorePrefix.h', | |
| 750 }, | |
| 751 'conditions': [ | |
| 752 ['javascript_engine=="v8"', { | |
| 753 'dependencies': [ | |
| 754 '../v8/tools/gyp/v8.gyp:v8', | |
| 755 ], | |
| 756 'export_dependent_settings': [ | |
| 757 '../v8/tools/gyp/v8.gyp:v8', | |
| 758 ], | |
| 759 }], | |
| 760 ['OS=="linux" or OS=="freebsd"', { | |
| 761 'dependencies': [ | |
| 762 '../build/linux/system.gyp:fontconfig', | |
| 763 '../build/linux/system.gyp:gtk', | |
| 764 ], | |
| 765 'sources': [ | |
| 766 '../third_party/WebKit/WebCore/platform/graphics/chromium/VDMXParser .cpp', | |
| 767 '../third_party/WebKit/WebCore/platform/graphics/chromium/HarfbuzzSk ia.cpp', | |
| 768 ], | |
| 769 'sources/': [ | |
| 770 # Cherry-pick files excluded by the broader regular expressions abov e. | |
| 771 ['include', 'third_party/WebKit/WebCore/platform/chromium/KeyCodeCon versionGtk\\.cpp$'], | |
| 772 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F ontCacheLinux\\.cpp$'], | |
| 773 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F ontLinux\\.cpp$'], | |
| 774 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/F ontPlatformDataLinux\\.cpp$'], | |
| 775 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/G lyphPageTreeNodeLinux\\.cpp$'], | |
| 776 ['include', 'third_party/WebKit/WebCore/platform/graphics/chromium/S impleFontDataLinux\\.cpp$'], | |
| 777 ], | |
| 778 'cflags': [ | |
| 779 # WebCore does not work with strict aliasing enabled. | |
| 780 # https://bugs.webkit.org/show_bug.cgi?id=25864 | |
| 781 '-fno-strict-aliasing', | |
| 782 ], | |
| 783 }], | |
| 784 ['OS=="mac"', { | |
| 785 'actions': [ | |
| 786 { | |
| 787 # Allow framework-style #include of | |
| 788 # <WebCore/WebCoreSystemInterface.h>. | |
| 789 'action_name': 'WebCoreSystemInterface.h', | |
| 790 'inputs': [ | |
| 791 '../third_party/WebKit/WebCore/platform/mac/WebCoreSystemInterfa ce.h', | |
| 792 ], | |
| 793 'outputs': [ | |
| 794 '<(INTERMEDIATE_DIR)/WebCore/WebCoreSystemInterface.h', | |
| 795 ], | |
| 796 'action': ['cp', '<@(_inputs)', '<@(_outputs)'], | |
| 797 }, | |
| 798 ], | |
| 799 'include_dirs': [ | |
| 800 '../third_party/WebKit/WebKitLibraries', | |
| 801 ], | |
| 802 'sources/': [ | |
| 803 # Additional files from the WebCore Mac build that are presently | |
| 804 # used in the WebCore Chromium Mac build too. | |
| 805 | |
| 806 # The Mac build is PLATFORM_CF but does not use CFNetwork. | |
| 807 ['include', 'CF\\.cpp$'], | |
| 808 ['exclude', '/network/cf/'], | |
| 809 | |
| 810 # The Mac build is PLATFORM_CG too. platform/graphics/cg is the | |
| 811 # only place that CG files we want to build are located, and not | |
| 812 # all of them even have a CG suffix, so just add them by a | |
| 813 # regexp matching their directory. | |
| 814 ['include', '/platform/graphics/cg/[^/]*(?<!Win)?\\.(cpp|mm?)$'], | |
| 815 | |
| 816 # Use native Mac font code from WebCore. | |
| 817 ['include', '/platform/(graphics/)?mac/[^/]*Font[^/]*\\.(cpp|mm?)$'] , | |
| 818 | |
| 819 # Cherry-pick some files that can't be included by broader regexps. | |
| 820 # Some of these are used instead of Chromium platform files, see | |
| 821 # the specific exclusions in the "sources!" list below. | |
| 822 ['include', '/third_party/WebKit/WebCore/loader/archive/cf/LegacyWeb Archive\\.cpp$'], | |
| 823 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Color Mac\\.mm$'], | |
| 824 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Glyph PageTreeNodeMac\\.cpp$'], | |
| 825 ['include', '/third_party/WebKit/WebCore/platform/graphics/mac/Graph icsContextMac\\.mm$'], | |
| 826 ['include', '/third_party/WebKit/WebCore/platform/mac/BlockException s\\.mm$'], | |
| 827 ['include', '/third_party/WebKit/WebCore/platform/mac/LocalCurrentGr aphicsContext\\.mm$'], | |
| 828 ['include', '/third_party/WebKit/WebCore/platform/mac/PurgeableBuffe rMac\\.cpp$'], | |
| 829 ['include', '/third_party/WebKit/WebCore/platform/mac/ScrollbarTheme Mac\\.mm$'], | |
| 830 ['include', '/third_party/WebKit/WebCore/platform/mac/WebCoreSystemI nterface\\.mm$'], | |
| 831 ['include', '/third_party/WebKit/WebCore/platform/mac/WebCoreTextRen derer\\.mm$'], | |
| 832 ['include', '/third_party/WebKit/WebCore/platform/text/mac/ShapeArab ic\\.c$'], | |
| 833 ['include', '/third_party/WebKit/WebCore/platform/text/mac/String(Im pl)?Mac\\.mm$'], | |
| 834 | |
| 835 ['include', '/third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystem Interface\\.m$'], | |
| 836 ], | |
| 837 'sources!': [ | |
| 838 # The Mac currently uses FontCustomPlatformData.cpp from | |
| 839 # platform/graphics/mac, included by regex above, instead. | |
| 840 '../third_party/WebKit/WebCore/platform/graphics/chromium/FontCustom PlatformData.cpp', | |
| 841 | |
| 842 # The Mac currently uses ScrollbarThemeMac.mm, included by regex | |
| 843 # above, instead of ScrollbarThemeChromium.cpp. | |
| 844 '../third_party/WebKit/WebCore/platform/chromium/ScrollbarThemeChrom ium.cpp', | |
| 845 | |
| 846 # The Mac uses ImageSourceCG.cpp from platform/graphics/cg, included | |
| 847 # by regex above, instead. | |
| 848 '../third_party/WebKit/WebCore/platform/graphics/ImageSource.cpp', | |
| 849 | |
| 850 # These Skia files aren't currently built on the Mac, which uses | |
| 851 # CoreGraphics directly for this portion of graphics handling. | |
| 852 '../third_party/WebKit/WebCore/platform/graphics/skia/FloatPointSkia .cpp', | |
| 853 '../third_party/WebKit/WebCore/platform/graphics/skia/FloatRectSkia. cpp', | |
| 854 '../third_party/WebKit/WebCore/platform/graphics/skia/GradientSkia.c pp', | |
| 855 '../third_party/WebKit/WebCore/platform/graphics/skia/GraphicsContex tSkia.cpp', | |
| 856 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageBufferSki a.cpp', | |
| 857 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageSkia.cpp' , | |
| 858 '../third_party/WebKit/WebCore/platform/graphics/skia/ImageSourceSki a.cpp', | |
| 859 '../third_party/WebKit/WebCore/platform/graphics/skia/IntPointSkia.c pp', | |
| 860 '../third_party/WebKit/WebCore/platform/graphics/skia/IntRectSkia.cp p', | |
| 861 '../third_party/WebKit/WebCore/platform/graphics/skia/PathSkia.cpp', | |
| 862 '../third_party/WebKit/WebCore/platform/graphics/skia/PatternSkia.cp p', | |
| 863 '../third_party/WebKit/WebCore/platform/graphics/skia/Transformation MatrixSkia.cpp', | |
| 864 | |
| 865 # RenderThemeChromiumSkia is not used on mac since RenderThemeChromi umMac | |
| 866 # does not reference the Skia code that is used by Windows and Linux . | |
| 867 '../third_party/WebKit/WebCore/rendering/RenderThemeChromiumSkia.cpp ', | |
| 868 | |
| 869 # Skia image-decoders are also not used on mac. CoreGraphics | |
| 870 # is used directly instead. | |
| 871 '../third_party/WebKit/WebCore/platform/image-decoders/ImageDecoder. h', | |
| 872 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageD ecoder.cpp', | |
| 873 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageD ecoder.h', | |
| 874 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageR eader.cpp', | |
| 875 '../third_party/WebKit/WebCore/platform/image-decoders/bmp/BMPImageR eader.h', | |
| 876 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageD ecoder.cpp', | |
| 877 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageD ecoder.h', | |
| 878 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageR eader.cpp', | |
| 879 '../third_party/WebKit/WebCore/platform/image-decoders/gif/GIFImageR eader.h', | |
| 880 '../third_party/WebKit/WebCore/platform/image-decoders/ico/ICOImageD ecoder.cpp', | |
| 881 '../third_party/WebKit/WebCore/platform/image-decoders/ico/ICOImageD ecoder.h', | |
| 882 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg/JPEGImag eDecoder.cpp', | |
| 883 '../third_party/WebKit/WebCore/platform/image-decoders/jpeg/JPEGImag eDecoder.h', | |
| 884 '../third_party/WebKit/WebCore/platform/image-decoders/png/PNGImageD ecoder.cpp', | |
| 885 '../third_party/WebKit/WebCore/platform/image-decoders/png/PNGImageD ecoder.h', | |
| 886 '../third_party/WebKit/WebCore/platform/image-decoders/skia/ImageDec oderSkia.cpp', | |
| 887 '../third_party/WebKit/WebCore/platform/image-decoders/xbm/XBMImageD ecoder.cpp', | |
| 888 '../third_party/WebKit/WebCore/platform/image-decoders/xbm/XBMImageD ecoder.h', | |
| 889 ], | |
| 890 'link_settings': { | |
| 891 'libraries': [ | |
| 892 '../third_party/WebKit/WebKitLibraries/libWebKitSystemInterfaceLeo pard.a', | |
| 893 ], | |
| 894 }, | |
| 895 'direct_dependent_settings': { | |
| 896 'include_dirs': [ | |
| 897 '../third_party/WebKit/WebKitLibraries', | |
| 898 '../third_party/WebKit/WebKit/mac/WebCoreSupport', | |
| 899 ], | |
| 900 }, | |
| 901 }], | |
| 902 ['OS=="win"', { | |
| 903 'dependencies': ['../build/win/system.gyp:cygwin'], | |
| 904 'sources/': [ | |
| 905 ['exclude', 'Posix\\.cpp$'], | |
| 906 ['include', '/opentype/'], | |
| 907 ['include', '/TransparencyWin\\.cpp$'], | |
| 908 ['include', '/SkiaFontWin\\.cpp$'], | |
| 909 ], | |
| 910 'defines': [ | |
| 911 '__PRETTY_FUNCTION__=__FUNCTION__', | |
| 912 ], | |
| 913 # This is needed because Event.h in this directory is blocked | |
| 914 # by a system header on windows. | |
| 915 'include_dirs++': ['../third_party/WebKit/WebCore/dom'], | |
| 916 'direct_dependent_settings': { | |
| 917 'include_dirs+++': ['../third_party/WebKit/WebCore/dom'], | |
| 918 }, | |
| 919 }], | |
| 920 ['OS!="linux" and OS!="freebsd"', {'sources/': [['exclude', '(Gtk|Linux) \\.cpp$']]}], | |
| 921 ['OS!="mac"', {'sources/': [['exclude', 'Mac\\.(cpp|mm?)$']]}], | |
| 922 ['OS!="win"', { | |
| 923 'sources/': [ | |
| 924 ['exclude', 'Win\\.cpp$'], | |
| 925 ['exclude', '/(Windows|Uniscribe)[^/]*\\.cpp$'] | |
| 926 ], | |
| 927 }], | |
| 928 ], | |
| 929 }, | |
| 930 { | |
| 931 'target_name': 'webkit', | 25 'target_name': 'webkit', |
| 932 'type': '<(library)', | 26 'type': '<(library)', |
| 933 'msvs_guid': '5ECEC9E5-8F23-47B6-93E0-C3B328B3BE65', | 27 'msvs_guid': '5ECEC9E5-8F23-47B6-93E0-C3B328B3BE65', |
| 934 'dependencies': [ | 28 'dependencies': [ |
| 935 'webcore', | 29 'webcore.gyp:webcore', |
| 936 ], | 30 ], |
| 937 'include_dirs': [ | 31 'include_dirs': [ |
| 938 'api/public', | 32 'api/public', |
| 939 'api/src', | 33 'api/src', |
| 940 ], | 34 ], |
| 941 'defines': [ | 35 'defines': [ |
| 942 'WEBKIT_IMPLEMENTATION', | 36 'WEBKIT_IMPLEMENTATION', |
| 943 ], | 37 ], |
| 944 'sources': [ | 38 'sources': [ |
| 945 'api/public/gtk/WebInputEventFactory.h', | 39 'api/public/gtk/WebInputEventFactory.h', |
| (...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1250 'appcache/web_application_cache_host_impl.h', | 344 'appcache/web_application_cache_host_impl.h', |
| 1251 ], | 345 ], |
| 1252 }, | 346 }, |
| 1253 { | 347 { |
| 1254 'target_name': 'glue', | 348 'target_name': 'glue', |
| 1255 'type': '<(library)', | 349 'type': '<(library)', |
| 1256 'msvs_guid': 'C66B126D-0ECE-4CA2-B6DC-FA780AFBBF09', | 350 'msvs_guid': 'C66B126D-0ECE-4CA2-B6DC-FA780AFBBF09', |
| 1257 'dependencies': [ | 351 'dependencies': [ |
| 1258 '../net/net.gyp:net', | 352 '../net/net.gyp:net', |
| 1259 'inspector_resources', | 353 'inspector_resources', |
| 1260 'webcore', | 354 'webcore.gyp:webcore', |
| 1261 'webkit', | 355 'webkit', |
| 1262 'webkit_resources', | 356 'webkit_resources', |
| 1263 'webkit_strings', | 357 'webkit_strings', |
| 1264 ], | 358 ], |
| 1265 'actions': [ | 359 'actions': [ |
| 1266 { | 360 { |
| 1267 'action_name': 'webkit_version', | 361 'action_name': 'webkit_version', |
| 1268 'inputs': [ | 362 'inputs': [ |
| 1269 'build/webkit_version.py', | 363 'build/webkit_version.py', |
| 1270 '../third_party/WebKit/WebCore/Configurations/Version.xcconfig', | 364 '../third_party/WebKit/WebCore/Configurations/Version.xcconfig', |
| (...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1459 'glue/webworkerclient_impl.cc', | 553 'glue/webworkerclient_impl.cc', |
| 1460 'glue/webworkerclient_impl.h', | 554 'glue/webworkerclient_impl.h', |
| 1461 'glue/window_open_disposition.h', | 555 'glue/window_open_disposition.h', |
| 1462 'glue/window_open_disposition.cc', | 556 'glue/window_open_disposition.cc', |
| 1463 ], | 557 ], |
| 1464 # When glue is a dependency, it needs to be a hard dependency. | 558 # When glue is a dependency, it needs to be a hard dependency. |
| 1465 # Dependents may rely on files generated by this target or one of its | 559 # Dependents may rely on files generated by this target or one of its |
| 1466 # own hard dependencies. | 560 # own hard dependencies. |
| 1467 'hard_dependency': 1, | 561 'hard_dependency': 1, |
| 1468 'export_dependent_settings': [ | 562 'export_dependent_settings': [ |
| 1469 'webcore', | 563 'webcore.gyp:webcore', |
| 1470 ], | 564 ], |
| 1471 'conditions': [ | 565 'conditions': [ |
| 1472 ['OS=="linux" or OS=="freebsd"', { | 566 ['OS=="linux" or OS=="freebsd"', { |
| 1473 'dependencies': [ | 567 'dependencies': [ |
| 1474 '../build/linux/system.gyp:gtk', | 568 '../build/linux/system.gyp:gtk', |
| 1475 '../base/base.gyp:linux_versioninfo', | 569 '../base/base.gyp:linux_versioninfo', |
| 1476 ], | 570 ], |
| 1477 'export_dependent_settings': [ | 571 'export_dependent_settings': [ |
| 1478 # Users of webcursor.h need the GTK include path. | 572 # Users of webcursor.h need the GTK include path. |
| 1479 '../build/linux/system.gyp:gtk', | 573 '../build/linux/system.gyp:gtk', |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1561 'files': [ | 655 'files': [ |
| 1562 | 656 |
| 1563 '<@(webinspector_image_files)', | 657 '<@(webinspector_image_files)', |
| 1564 | 658 |
| 1565 ], | 659 ], |
| 1566 }, | 660 }, |
| 1567 ], | 661 ], |
| 1568 }, | 662 }, |
| 1569 ], # targets | 663 ], # targets |
| 1570 } | 664 } |
| OLD | NEW |