Ignore:
Timestamp:
Apr 8, 2009, 6:27:41 PM (16 years ago)
Author:
[email protected]
Message:

<rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings

Reviewed by Darin Adler and Maciej Stachowiak.

Introduce the ENABLE_SVG_DOM_OBJC_BINDINGS feature define so
that SVG DOM Objective-C bindings may be optionally disabled.

JavaScriptCore:

  • Configurations/JavaScriptCore.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES.

WebCore:

  • Configurations/WebCore.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES and EXCLUDED_SOURCE_FILE_NAMES. When SVG DOM Objective-C bindings are disabled, two generated header files no longer exist and none of the generated DOMSVG*.mm files should be compiled.
  • DerivedSources.make: All of the WebCore.SVG*.exp files contain SVG DOM Objective-C bindings classes, so exclude them unless ENABLE_SVG_DOM_OBJC_BINDINGS is set.
  • bindings/objc/DOM.mm: Switched from using ENABLE(SVG) to using ENABLE(SVG_DOM_OBJC_BINDINGS). (WebCore::createElementClassMap): (+[DOMNode _wrapNode:WebCore::]):
  • bindings/objc/DOMCSS.mm: Ditto. (+[DOMCSSValue _wrapCSSValue:WebCore::]):
  • bindings/objc/DOMEvents.mm: Ditto. (+[DOMEvent _wrapEvent:WebCore::]):
  • bindings/objc/DOMInternal.h: Ditto.
  • bindings/objc/ExceptionHandlers.mm: Added use of ENABLE(SVG_DOM_OBJC_BINDINGS). (WebCore::raiseDOMException):
  • html/HTMLEmbedElement.idl: Excluded -getSVGDocument method in generated Objective-C DOM classes if SVG DOM Objective-C bindings are disabled.
  • html/HTMLFrameElement.idl: Ditto.
  • html/HTMLIFrameElement.idl: Ditto.
  • html/HTMLObjectElement.idl: Ditto.

WebKit/mac:

  • Configurations/WebKit.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES.
  • DOM/WebDOMOperations.mm: Removed unused header.
  • MigrateHeaders.make: Switched from using ENABLE_SVG to using ENABLE_SVG_DOM_OBJC_BINDINGS.

WebKitTools:

  • Scripts/build-webkit: Added --[no-]svg-dom-objc-bindings command-line argument. Set special ENABLE_SVG_DOM_OBJC_BINDINGS Xcode variable required by WebCore.xcconfig.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/Configurations/JavaScriptCore.xcconfig

    r41613 r42345  
    1313PRODUCT_NAME = JavaScriptCore;
    1414
     15// Set to an empty string to disable this feature
     16ENABLE_SVG_DOM_OBJC_BINDINGS = ENABLE_SVG_DOM_OBJC_BINDINGS;
     17
    1518// This needs to be kept sorted, and in sync with FEATURE_DEFINES in WebCore.xcconfig, WebKit.xcconfig and
    1619// the default settings of build-webkit to prevent needless rebuilding when using both Xcode and build-webkit.
    1720FEATURE_DEFINES = $(FEATURE_DEFINES_$(MAC_OS_X_VERSION_MAJOR));
    18 FEATURE_DEFINES_BASE = ENABLE_DATABASE ENABLE_DOM_STORAGE ENABLE_ICONDATABASE ENABLE_OFFLINE_WEB_APPLICATIONS ENABLE_SVG ENABLE_SVG_ANIMATION ENABLE_SVG_AS_IMAGE ENABLE_SVG_FONTS ENABLE_SVG_FOREIGN_OBJECT ENABLE_SVG_USE ENABLE_VIDEO ENABLE_WORKERS ENABLE_XPATH ENABLE_XSLT;
     21FEATURE_DEFINES_BASE = ENABLE_DATABASE ENABLE_DOM_STORAGE ENABLE_ICONDATABASE ENABLE_OFFLINE_WEB_APPLICATIONS ENABLE_SVG ENABLE_SVG_ANIMATION ENABLE_SVG_AS_IMAGE $(ENABLE_SVG_DOM_OBJC_BINDINGS) ENABLE_SVG_FONTS ENABLE_SVG_FOREIGN_OBJECT ENABLE_SVG_USE ENABLE_VIDEO ENABLE_WORKERS ENABLE_XPATH ENABLE_XSLT;
    1922FEATURE_DEFINES_ = $(FEATURE_DEFINES_1040);
    2023FEATURE_DEFINES_1040 = $(FEATURE_DEFINES_BASE);
Note: See TracChangeset for help on using the changeset viewer.