From dec7b17e7308a19743191c04f900927e6df32fda Mon Sep 17 00:00:00 2001 From: "yaar@chromium.org" Date: Wed, 23 Sep 2009 22:11:35 +0000 Subject: Upstreamings parts of webkit.gyp (step 3) This is step 3 a multi-step process that is part of the webkit chromium port. This step includes: A. Removal of features.gypi, webcore.gyp and javascriptcore.gyp. All three now live upstream on webkit. B. Changing downstream dependencies to point at new upstream gyp files. Remaining steps: * Implement a mechanism to allow downstream override of upstream features.gypi. Will be part of the upstream chromium build mechanism. Review URL: http://codereview.chromium.org/212050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27000 0039d316-1c4b-4281-b951-d872f2087c98 --- webkit/features.gypi | 35 -- webkit/javascriptcore.gyp | 164 ------- webkit/tools/test_shell/test_shell.gyp | 2 +- webkit/webcore.gyp | 764 --------------------------------- webkit/webkit.gyp | 6 +- 5 files changed, 4 insertions(+), 967 deletions(-) delete mode 100644 webkit/features.gypi delete mode 100644 webkit/javascriptcore.gyp delete mode 100644 webkit/webcore.gyp (limited to 'webkit') diff --git a/webkit/features.gypi b/webkit/features.gypi deleted file mode 100644 index 3f93b33..0000000 --- a/webkit/features.gypi +++ /dev/null @@ -1,35 +0,0 @@ -# Copyright (c) 2009 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -{ - 'includes': { - # TODO(yaar) Include upstream (webkit.org) features.gypi here, so - # that this file inherits upstream feature_defines. - }, - 'variables': { - 'feature_defines': [ - 'ENABLE_CHANNEL_MESSAGING=1', - 'ENABLE_DATABASE=1', - 'ENABLE_DATAGRID=0', - 'ENABLE_OFFLINE_WEB_APPLICATIONS=1', - 'ENABLE_DASHBOARD_SUPPORT=0', - 'ENABLE_DOM_STORAGE=1', - 'ENABLE_JAVASCRIPT_DEBUGGER=0', - 'ENABLE_JSC_MULTIPLE_THREADS=0', - 'ENABLE_ICONDATABASE=0', - 'ENABLE_NOTIFICATIONS=0', - 'ENABLE_XSLT=1', - 'ENABLE_XPATH=1', - 'ENABLE_SHARED_WORKERS=0', - 'ENABLE_SVG=1', - 'ENABLE_SVG_ANIMATION=1', - 'ENABLE_SVG_AS_IMAGE=1', - 'ENABLE_SVG_USE=1', - 'ENABLE_SVG_FOREIGN_OBJECT=1', - 'ENABLE_SVG_FONTS=1', - 'ENABLE_VIDEO=1', - 'ENABLE_WORKERS=1', - ], - }, -} diff --git a/webkit/javascriptcore.gyp b/webkit/javascriptcore.gyp deleted file mode 100644 index 565c139..0000000 --- a/webkit/javascriptcore.gyp +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2009 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -{ - 'includes': [ - 'features.gypi', - '../third_party/WebKit/JavaScriptCore/JavaScriptCore.gypi', - ], - 'targets': [ - { - # This target sets up defines and includes that are required by WTF and - # its dependents. - 'target_name': 'wtf_config', - 'type': 'none', - 'msvs_guid': '2E2D3301-2EC4-4C0F-B889-87073B30F673', - 'direct_dependent_settings': { - 'defines': [ - # Import features_defines from features.gypi - '<@(feature_defines)', - - # Turns on #if PLATFORM(CHROMIUM) - 'BUILDING_CHROMIUM__=1', - # Controls wtf/FastMalloc - # TODO(yaar) consider moving into config.h - 'USE_SYSTEM_MALLOC=1', - ], - 'conditions': [ - ['OS=="win"', { - 'defines': [ - '__STD_C', - '_CRT_SECURE_NO_DEPRECATE', - '_SCL_SECURE_NO_DEPRECATE', - 'CRASH=__debugbreak', - ], - 'include_dirs': [ - '../third_party/WebKit/JavaScriptCore/os-win32', - 'build/JavaScriptCore', - ], - }], - ['OS=="mac"', { - 'defines': [ - # Ensure that only Leopard features are used when doing the - # Mac build. - 'BUILDING_ON_LEOPARD', - - # Use USE_NEW_THEME on Mac. - 'WTF_USE_NEW_THEME=1', - ], - }], - ['OS=="linux" or OS=="freebsd"', { - 'defines': [ - 'WTF_USE_PTHREADS=1', - ], - }], - ], - } - }, - { - 'target_name': 'wtf', - 'type': '<(library)', - 'msvs_guid': 'AA8A5A85-592B-4357-BC60-E0E91E026AF6', - 'dependencies': [ - 'wtf_config', - '../third_party/icu/icu.gyp:icui18n', - '../third_party/icu/icu.gyp:icuuc', - ], - 'include_dirs': [ - '../third_party/WebKit/JavaScriptCore', - '../third_party/WebKit/JavaScriptCore/wtf', - '../third_party/WebKit/JavaScriptCore/wtf/unicode', - ], - 'sources': [ - '<@(javascriptcore_files)', - ], - 'sources/': [ - # First exclude everything ... - ['exclude', 'JavaScriptCore/'], - # ... Then include what we want. - ['include', 'JavaScriptCore/wtf/'], - # GLib/GTK, even though its name doesn't really indicate. - ['exclude', '/(GOwnPtr|glib/.*)\\.(cpp|h)$'], - ['exclude', '(Default|Gtk|Mac|None|Qt|Win|Wx)\\.(cpp|mm)$'], - ], - 'direct_dependent_settings': { - 'include_dirs': [ - '../third_party/WebKit/JavaScriptCore', - '../third_party/WebKit/JavaScriptCore/wtf', - ], - }, - 'export_dependent_settings': [ - 'wtf_config', - '../third_party/icu/icu.gyp:icui18n', - '../third_party/icu/icu.gyp:icuuc', - ], - 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706], - 'conditions': [ - ['OS=="win"', { - 'sources/': [ - ['exclude', 'ThreadingPthreads\\.cpp$'], - ['include', 'Thread(ing|Specific)Win\\.cpp$'] - ], - 'include_dirs': [ - 'build', - '../third_party/WebKit/JavaScriptCore/kjs', - '../third_party/WebKit/JavaScriptCore/API', - # These 3 do not seem to exist. - '../third_party/WebKit/JavaScriptCore/bindings', - '../third_party/WebKit/JavaScriptCore/bindings/c', - '../third_party/WebKit/JavaScriptCore/bindings/jni', - 'pending', - 'pending/wtf', - ], - 'include_dirs!': [ - '<(SHARED_INTERMEDIATE_DIR)/webkit', - ], - }], - ], - }, - { - 'target_name': 'pcre', - 'type': '<(library)', - 'dependencies': [ - 'wtf', - ], - 'msvs_guid': '49909552-0B0C-4C14-8CF6-DB8A2ADE0934', - 'actions': [ - { - 'action_name': 'dftables', - 'inputs': [ - '../third_party/WebKit/JavaScriptCore/pcre/dftables', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/chartables.c', - ], - 'action': ['perl', '-w', '<@(_inputs)', '<@(_outputs)'], - }, - ], - 'include_dirs': [ - '<(INTERMEDIATE_DIR)', - ], - 'sources': [ - '<@(javascriptcore_files)', - ], - 'sources/': [ - # First exclude everything ... - ['exclude', 'JavaScriptCore/'], - # ... Then include what we want. - ['include', 'JavaScriptCore/pcre/'], - # ucptable.cpp is #included by pcre_ucp_searchfunchs.cpp and is not - # intended to be compiled directly. - ['exclude', 'JavaScriptCore/pcre/ucptable.cpp$'], - ], - 'export_dependent_settings': [ - 'wtf', - ], - 'conditions': [ - ['OS=="win"', { - 'dependencies': ['../build/win/system.gyp:cygwin'], - }], - ], - }, - ], # targets -} diff --git a/webkit/tools/test_shell/test_shell.gyp b/webkit/tools/test_shell/test_shell.gyp index cc497eb..7ff875b 100644 --- a/webkit/tools/test_shell/test_shell.gyp +++ b/webkit/tools/test_shell/test_shell.gyp @@ -464,7 +464,7 @@ ], 'dependencies': [ '../../../third_party/npapi/npapi.gyp:npapi', - '../../javascriptcore.gyp:wtf', + '../../../third_party/WebKit/JavaScriptCore/JavaScriptCore.gyp/JavaScriptCore.gyp:wtf', ], 'msvs_disabled_warnings': [ 4996 ], 'mac_bundle_resources': [ diff --git a/webkit/webcore.gyp b/webkit/webcore.gyp deleted file mode 100644 index b8dc8d0..0000000 --- a/webkit/webcore.gyp +++ /dev/null @@ -1,764 +0,0 @@ -# Copyright (c) 2009 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -{ - 'includes': [ - 'features.gypi', - '../third_party/WebKit/WebCore/WebCore.gypi', - ], - 'variables': { - 'webcore_include_dirs': [ - '../third_party/WebKit/WebCore', - '../third_party/WebKit/WebCore/accessibility', - '../third_party/WebKit/WebCore/accessibility/chromium', - '../third_party/WebKit/WebCore/bindings/v8', - '../third_party/WebKit/WebCore/bindings/v8/custom', - '../third_party/WebKit/WebCore/bridge', - '../third_party/WebKit/WebCore/css', - '../third_party/WebKit/WebCore/dom', - '../third_party/WebKit/WebCore/dom/default', - '../third_party/WebKit/WebCore/editing', - '../third_party/WebKit/WebCore/history', - '../third_party/WebKit/WebCore/html', - '../third_party/WebKit/WebCore/html/canvas', - '../third_party/WebKit/WebCore/inspector', - '../third_party/WebKit/WebCore/loader', - '../third_party/WebKit/WebCore/loader/appcache', - '../third_party/WebKit/WebCore/loader/archive', - '../third_party/WebKit/WebCore/loader/icon', - '../third_party/WebKit/WebCore/notifications', - '../third_party/WebKit/WebCore/page', - '../third_party/WebKit/WebCore/page/animation', - '../third_party/WebKit/WebCore/page/chromium', - '../third_party/WebKit/WebCore/platform', - '../third_party/WebKit/WebCore/platform/animation', - '../third_party/WebKit/WebCore/platform/chromium', - '../third_party/WebKit/WebCore/platform/graphics', - '../third_party/WebKit/WebCore/platform/graphics/chromium', - '../third_party/WebKit/WebCore/platform/graphics/opentype', - '../third_party/WebKit/WebCore/platform/graphics/skia', - '../third_party/WebKit/WebCore/platform/graphics/transforms', - '../third_party/WebKit/WebCore/platform/image-decoders', - '../third_party/WebKit/WebCore/platform/image-decoders/bmp', - '../third_party/WebKit/WebCore/platform/image-decoders/gif', - '../third_party/WebKit/WebCore/platform/image-decoders/ico', - '../third_party/WebKit/WebCore/platform/image-decoders/jpeg', - '../third_party/WebKit/WebCore/platform/image-decoders/png', - '../third_party/WebKit/WebCore/platform/image-decoders/skia', - '../third_party/WebKit/WebCore/platform/image-decoders/xbm', - '../third_party/WebKit/WebCore/platform/image-encoders/skia', - '../third_party/WebKit/WebCore/platform/mock', - '../third_party/WebKit/WebCore/platform/network', - '../third_party/WebKit/WebCore/platform/network/chromium', - '../third_party/WebKit/WebCore/platform/sql', - '../third_party/WebKit/WebCore/platform/text', - '../third_party/WebKit/WebCore/plugins', - '../third_party/WebKit/WebCore/rendering', - '../third_party/WebKit/WebCore/rendering/style', - '../third_party/WebKit/WebCore/storage', - '../third_party/WebKit/WebCore/svg', - '../third_party/WebKit/WebCore/svg/animation', - '../third_party/WebKit/WebCore/svg/graphics', - '../third_party/WebKit/WebCore/workers', - '../third_party/WebKit/WebCore/xml', - ], - 'conditions': [ - ['OS=="mac"', { - 'webcore_include_dirs+': [ - # platform/graphics/cg and mac needs to come before - # platform/graphics/chromium so that the Mac build picks up the - # version of ImageBufferData.h in the cg directory and - # FontPlatformData.h in the mac directory. The + prepends this - # directory to the list. - # TODO(port): This shouldn't need to be prepended. - # TODO(port): Eliminate dependency on platform/graphics/mac and - # related directories. - # platform/graphics/cg may need to stick around, though. - '../third_party/WebKit/WebCore/platform/graphics/cg', - '../third_party/WebKit/WebCore/platform/graphics/mac', - ], - 'webcore_include_dirs': [ - # TODO(port): Eliminate dependency on platform/mac and related - # directories. - '../third_party/WebKit/WebCore/loader/archive/cf', - '../third_party/WebKit/WebCore/platform/mac', - '../third_party/WebKit/WebCore/platform/text/mac', - ], - }], - ['OS=="win"', { - 'webcore_include_dirs': [ - '../third_party/WebKit/WebCore/page/win', - '../third_party/WebKit/WebCore/platform/graphics/win', - '../third_party/WebKit/WebCore/platform/text/win', - '../third_party/WebKit/WebCore/platform/win', - ], - }], - ], - }, - 'targets': [ - { - 'target_name': 'webcore', - 'type': '<(library)', - 'msvs_guid': '1C16337B-ACF3-4D03-AA90-851C5B5EADA6', - 'dependencies': [ - 'javascriptcore.gyp:pcre', - 'javascriptcore.gyp:wtf', - '../build/temp_gyp/googleurl.gyp:googleurl', - '../skia/skia.gyp:skia', - '../third_party/libjpeg/libjpeg.gyp:libjpeg', - '../third_party/libpng/libpng.gyp:libpng', - '../third_party/libxml/libxml.gyp:libxml', - '../third_party/libxslt/libxslt.gyp:libxslt', - '../third_party/npapi/npapi.gyp:npapi', - '../third_party/sqlite/sqlite.gyp:sqlite', - ], - 'defines': [ - 'WEBCORE_NAVIGATOR_VENDOR="Google Inc."', - ], - 'conditions': [ - ['OS=="linux"', { - 'defines': [ - # Mozilla on Linux effectively uses uname -sm, but when running - # 32-bit x86 code on an x86_64 processor, it uses - # "Linux i686 (x86_64)". Matching that would require making a - # run-time determination. - 'WEBCORE_NAVIGATOR_PLATFORM="Linux i686"', - ], - }], - ['OS=="mac"', { - 'defines': [ - # Match Safari and Mozilla on Mac x86. - 'WEBCORE_NAVIGATOR_PLATFORM="MacIntel"', - - # Chromium's version of WebCore includes the following Objective-C - # classes. The system-provided WebCore framework may also provide - # these classes. Because of the nature of Objective-C binding - # (dynamically at runtime), it's possible for the Chromium-provided - # versions to interfere with the system-provided versions. This may - # happen when a system framework attempts to use WebCore.framework, - # such as when converting an HTML-flavored string to an - # NSAttributedString. The solution is to force Objective-C class - # names that would conflict to use alternate names. - - # TODO(mark) This list will hopefully shrink but may also grow. - # Periodically run: - # nm libwebcore.a | grep -E '[atsATS] ([+-]\[|\.objc_class_name)' - # and make sure that everything listed there has the alternate - # ChromiumWebCoreObjC name, and that nothing extraneous is listed - # here. If all Objective-C can be eliminated from Chromium's WebCore - # library, these defines should be removed entirely. - # TODO(yaar) move these out of command line defines. - 'ScrollbarPrefsObserver=ChromiumWebCoreObjCScrollbarPrefsObserver', - 'WebCoreRenderThemeNotificationObserver=ChromiumWebCoreObjCWebCoreRenderThemeNotificationObserver', - 'WebFontCache=ChromiumWebCoreObjCWebFontCache', - ], - }], - ['OS=="win"', { - 'defines': [ - # Match Safari and Mozilla on Windows. - 'WEBCORE_NAVIGATOR_PLATFORM="Win32"', - ], - 'dependencies': [ - # Needed on windows for some actions and rules - '../build/win/system.gyp:cygwin' - ], - }], - ], - 'actions': [ - # Actions to build derived sources. - { - 'action_name': 'CSSPropertyNames', - 'inputs': [ - '../third_party/WebKit/WebCore/css/makeprop.pl', - '../third_party/WebKit/WebCore/css/CSSPropertyNames.in', - '../third_party/WebKit/WebCore/css/SVGCSSPropertyNames.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/CSSPropertyNames.cpp', - '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSPropertyNames.h', - ], - 'action': ['python', 'build/action_csspropertynames.py', '<@(_outputs)', '--', '<@(_inputs)'], - }, - { - 'action_name': 'CSSValueKeywords', - 'inputs': [ - '../third_party/WebKit/WebCore/css/makevalues.pl', - '../third_party/WebKit/WebCore/css/CSSValueKeywords.in', - '../third_party/WebKit/WebCore/css/SVGCSSValueKeywords.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/CSSValueKeywords.c', - '<(SHARED_INTERMEDIATE_DIR)/webkit/CSSValueKeywords.h', - ], - 'action': ['python', 'build/action_cssvaluekeywords.py', '<@(_outputs)', '--', '<@(_inputs)'], - }, - { - 'action_name': 'HTMLNames', - 'inputs': [ - '../third_party/WebKit/WebCore/dom/make_names.pl', - '../third_party/WebKit/WebCore/html/HTMLTagNames.in', - '../third_party/WebKit/WebCore/html/HTMLAttributeNames.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/HTMLNames.cpp', - '<(SHARED_INTERMEDIATE_DIR)/webkit/HTMLNames.h', - '<(INTERMEDIATE_DIR)/HTMLElementFactory.cpp', - # Pass --wrapperFactory to make_names to get these (JSC build?) - #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.cpp', - #'<(INTERMEDIATE_DIR)/JSHTMLElementWrapperFactory.h', - ], - 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--', '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], - 'process_outputs_as_sources': 1, - }, - { - 'action_name': 'SVGNames', - 'inputs': [ - '../third_party/WebKit/WebCore/dom/make_names.pl', - '../third_party/WebKit/WebCore/svg/svgtags.in', - '../third_party/WebKit/WebCore/svg/svgattrs.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/SVGNames.cpp', - '<(INTERMEDIATE_DIR)/SVGNames.h', - '<(INTERMEDIATE_DIR)/SVGElementFactory.cpp', - '<(INTERMEDIATE_DIR)/SVGElementFactory.h', - # Pass --wrapperFactory to make_names to get these (JSC build?) - #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.cpp', - #'<(INTERMEDIATE_DIR)/JSSVGElementWrapperFactory.h', - ], - 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--', '<@(_inputs)', '--', '--factory', '--extraDefines', '<(feature_defines)'], - 'process_outputs_as_sources': 1, - }, - { - 'action_name': 'UserAgentStyleSheets', - 'inputs': [ - '../third_party/WebKit/WebCore/css/make-css-file-arrays.pl', - '../third_party/WebKit/WebCore/css/html.css', - '../third_party/WebKit/WebCore/css/quirks.css', - '../third_party/WebKit/WebCore/css/view-source.css', - '../third_party/WebKit/WebCore/css/themeChromiumLinux.css', - '../third_party/WebKit/WebCore/css/themeWin.css', - '../third_party/WebKit/WebCore/css/themeWinQuirks.css', - '../third_party/WebKit/WebCore/css/svg.css', - '../third_party/WebKit/WebCore/css/mediaControls.css', - '../third_party/WebKit/WebCore/css/mediaControlsChromium.css', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/UserAgentStyleSheets.h', - '<(INTERMEDIATE_DIR)/UserAgentStyleSheetsData.cpp', - ], - 'action': ['python', 'build/action_useragentstylesheets.py', '<@(_outputs)', '--', '<@(_inputs)'], - 'process_outputs_as_sources': 1, - }, - { - 'action_name': 'XLinkNames', - 'inputs': [ - '../third_party/WebKit/WebCore/dom/make_names.pl', - '../third_party/WebKit/WebCore/svg/xlinkattrs.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/XLinkNames.cpp', - '<(INTERMEDIATE_DIR)/XLinkNames.h', - ], - 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--', '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], - 'process_outputs_as_sources': 1, - }, - { - 'action_name': 'XMLNames', - 'inputs': [ - '../third_party/WebKit/WebCore/dom/make_names.pl', - '../third_party/WebKit/WebCore/xml/xmlattrs.in', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/XMLNames.cpp', - '<(INTERMEDIATE_DIR)/XMLNames.h', - ], - 'action': ['python', 'build/action_makenames.py', '<@(_outputs)', '--', '<@(_inputs)', '--', '--extraDefines', '<(feature_defines)'], - 'process_outputs_as_sources': 1, - }, - { - 'action_name': 'tokenizer', - 'inputs': [ - '../third_party/WebKit/WebCore/css/maketokenizer', - '../third_party/WebKit/WebCore/css/tokenizer.flex', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/tokenizer.cpp', - ], - 'action': ['python', 'build/action_maketokenizer.py', '<@(_outputs)', '--', '<@(_inputs)'], - }, - ], - 'rules': [ - # Rules to build derived sources. - { - 'rule_name': 'bison', - 'extension': 'y', - 'outputs': [ - '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).cpp', - '<(INTERMEDIATE_DIR)/<(RULE_INPUT_ROOT).h' - ], - 'action': ['python', 'build/rule_bison.py', '<(RULE_INPUT_PATH)', '<(INTERMEDIATE_DIR)'], - 'process_outputs_as_sources': 1, - }, - { - 'rule_name': 'gperf', - 'extension': 'gperf', - # gperf output is only ever #included by other source files. As - # such, process_outputs_as_sources is off. Some gperf output is - # #included as *.c and some as *.cpp. Since there's no way to tell - # which one will be needed in a rule definition, declare both as - # outputs. The harness script will generate one file and copy it to - # the other. - # - # This rule places outputs in SHARED_INTERMEDIATE_DIR because glue - # needs access to HTMLEntityNames.c. - 'outputs': [ - '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).c', - '<(SHARED_INTERMEDIATE_DIR)/webkit/<(RULE_INPUT_ROOT).cpp', - ], - 'action': ['python', 'build/rule_gperf.py', '<(RULE_INPUT_PATH)', '<(SHARED_INTERMEDIATE_DIR)/webkit'], - 'process_outputs_as_sources': 0, - }, - # Rule to build generated JavaScript (V8) bindings from .idl source. - { - 'rule_name': 'binding', - 'extension': 'idl', - 'msvs_external_rule': 1, - 'inputs': [ - '../third_party/WebKit/WebCore/bindings/scripts/generate-bindings.pl', - '../third_party/WebKit/WebCore/bindings/scripts/CodeGenerator.pm', - '../third_party/WebKit/WebCore/bindings/scripts/CodeGeneratorV8.pm', - '../third_party/WebKit/WebCore/bindings/scripts/IDLParser.pm', - '../third_party/WebKit/WebCore/bindings/scripts/IDLStructure.pm', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/bindings/V8<(RULE_INPUT_ROOT).cpp', - '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings/V8<(RULE_INPUT_ROOT).h', - ], - 'variables': { - 'generator_include_dirs': [ - '--include', '../third_party/WebKit/WebCore/css', - '--include', '../third_party/WebKit/WebCore/dom', - '--include', '../third_party/WebKit/WebCore/html', - '--include', '../third_party/WebKit/WebCore/notifications', - '--include', '../third_party/WebKit/WebCore/page', - '--include', '../third_party/WebKit/WebCore/plugins', - '--include', '../third_party/WebKit/WebCore/svg', - '--include', '../third_party/WebKit/WebCore/workers', - '--include', '../third_party/WebKit/WebCore/xml', - ], - }, - 'action': ['python', 'build/rule_binding.py', '<(RULE_INPUT_PATH)', '<(INTERMEDIATE_DIR)/bindings', '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', '--', '<@(_inputs)', '--', '--defines', '<(feature_defines) LANGUAGE_JAVASCRIPT V8_BINDING', '--generator', 'V8', '<@(generator_include_dirs)'], - # They are included by DerivedSourcesAllInOne.cpp instead. - 'process_outputs_as_sources': 0, - 'message': 'Generating binding from <(RULE_INPUT_PATH)', - }, - ], - 'include_dirs': [ - '<(INTERMEDIATE_DIR)', - '<(SHARED_INTERMEDIATE_DIR)/webkit', - '<(SHARED_INTERMEDIATE_DIR)/webkit/bindings', - '<@(webcore_include_dirs)', - ], - 'sources': [ - # bison rule - '../third_party/WebKit/WebCore/css/CSSGrammar.y', - '../third_party/WebKit/WebCore/xml/XPathGrammar.y', - - # gperf rule - '../third_party/WebKit/WebCore/html/DocTypeStrings.gperf', - '../third_party/WebKit/WebCore/html/HTMLEntityNames.gperf', - '../third_party/WebKit/WebCore/platform/ColorData.gperf', - - # This file includes all the .cpp files generated from the .idl files - # in webcore_files. - '../third_party/WebKit/WebCore/bindings/v8/DerivedSourcesAllInOne.cpp', - - '<@(webcore_files)', - - 'extensions/v8/gc_extension.cc', - 'extensions/v8/gc_extension.h', - 'extensions/v8/gears_extension.cc', - 'extensions/v8/gears_extension.h', - 'extensions/v8/interval_extension.cc', - 'extensions/v8/interval_extension.h', - 'extensions/v8/playback_extension.cc', - 'extensions/v8/playback_extension.h', - 'extensions/v8/profiler_extension.cc', - 'extensions/v8/profiler_extension.h', - 'extensions/v8/benchmarking_extension.cc', - 'extensions/v8/benchmarking_extension.h', - - # For WebCoreSystemInterface, Mac-only. - '../third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystemInterface.m', - ], - 'sources/': [ - # Exclude JSC custom bindings. - ['exclude', '/third_party/WebKit/WebCore/bindings/js'], - - # SVG_FILTERS only. - ['exclude', '/third_party/WebKit/WebCore/svg/SVG(FE|Filter)[^/]*\\.idl$'], - - # Fortunately, many things can be excluded by using broad patterns. - - # Exclude things that don't apply to the Chromium platform on the basis - # of their enclosing directories and tags at the ends of their - # filenames. - ['exclude', '/(android|cairo|cf|cg|curl|gtk|haiku|linux|mac|opentype|posix|qt|soup|symbian|win|wx)/'], - ['exclude', '(?. - 'action_name': 'WebCoreSystemInterface.h', - 'inputs': [ - '../third_party/WebKit/WebCore/platform/mac/WebCoreSystemInterface.h', - ], - 'outputs': [ - '<(INTERMEDIATE_DIR)/WebCore/WebCoreSystemInterface.h', - ], - 'action': ['cp', '<@(_inputs)', '<@(_outputs)'], - }, - ], - 'include_dirs': [ - '../third_party/WebKit/WebKitLibraries', - ], - 'sources/': [ - # Additional files from the WebCore Mac build that are presently - # used in the WebCore Chromium Mac build too. - - # The Mac build is PLATFORM_CF but does not use CFNetwork. - ['include', 'CF\\.cpp$'], - ['exclude', '/network/cf/'], - - # The Mac build is PLATFORM_CG too. platform/graphics/cg is the - # only place that CG files we want to build are located, and not - # all of them even have a CG suffix, so just add them by a - # regexp matching their directory. - ['include', '/platform/graphics/cg/[^/]*(?