Commit 6f3ef8f8 authored by evan@chromium.org's avatar evan@chromium.org

2010-02-23 Evan Martin <evan@chromium.org>

        Reviewed by Jeremy Orlow.

        [chromium] Allow building without SVG
        https://bugs.webkit.org/show_bug.cgi?id=31522

        * WebCore.gyp/WebCore.gyp, WebCore.gypi: test enable_svg flag.
        * bindings/v8/custom/V8SVGDocumentCustom.cpp,
          bindings/v8/custom/V8SVGPathSegCustom.cpp: test ENABLE(SVG).

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent 0fa22023
2010-02-23 Evan Martin <evan@chromium.org>
Reviewed by Jeremy Orlow.
[chromium] Allow building without SVG
https://bugs.webkit.org/show_bug.cgi?id=31522
* WebCore.gyp/WebCore.gyp, WebCore.gypi: test enable_svg flag.
* bindings/v8/custom/V8SVGDocumentCustom.cpp,
bindings/v8/custom/V8SVGPathSegCustom.cpp: test ENABLE(SVG).
2010-02-23 Leandro Pereira <leandro@profusion.mobi>
Reviewed by Gustavo Noronha Silva.
......
......@@ -101,7 +101,11 @@
# If set to 1, doesn't compile debug symbols into webcore reducing the
# size of the binary and increasing the speed of gdb. gcc only.
'remove_webcore_debug_symbols%': 0,
# If set to 0, doesn't build SVG support, reducing the size of the
# binary and increasing the speed of gdb.
'enable_svg%': 1,
'webcore_include_dirs': [
'../',
'../accessibility',
......@@ -216,9 +220,16 @@
'../html/HTMLEntityNames.gperf',
'../platform/ColorData.gperf',
# idl rule
# idl rules except for svg (added below)
'<@(webcore_bindings_idl_files)',
],
'conditions': [
['enable_svg!=0', {
'sources': [
'<@(webcore_bindings_idl_files)',
],
}],
],
'sources!': [
# Custom bindings in bindings/v8/custom exist for these.
'../dom/EventListener.idl',
......@@ -583,11 +594,8 @@
# Additional .cpp files from webcore_bindings_sources actions.
'<(SHARED_INTERMEDIATE_DIR)/webkit/HTMLElementFactory.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/HTMLNames.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/SVGElementFactory.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/SVGNames.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/UserAgentStyleSheetsData.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/V8HTMLElementWrapperFactory.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/V8SVGElementWrapperFactory.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/XLinkNames.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/XMLNSNames.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/XMLNames.cpp',
......@@ -602,6 +610,13 @@
'<(chromium_src_dir)/v8/tools/gyp/v8.gyp:v8',
],
}],
['enable_svg!=0', {
'sources': [
'<(SHARED_INTERMEDIATE_DIR)/webkit/SVGElementFactory.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/SVGNames.cpp',
'<(SHARED_INTERMEDIATE_DIR)/webkit/V8SVGElementWrapperFactory.cpp',
],
}],
['OS=="mac"', {
'include_dirs': [
'../../WebKitLibraries',
......@@ -674,10 +689,6 @@
['exclude', '(android|cairo|cf|cg|curl|gtk|haiku|linux|mac|opentype|posix|qt|soup|symbian|win|wx)/'],
['exclude', '(?<!Chromium)(Android|Cairo|CF|CG|Curl|Gtk|Linux|Mac|OpenType|POSIX|Posix|Qt|Safari|Soup|Symbian|Win|Wx)\\.(cpp|mm?)$'],
['include', 'platform/graphics/opentype/OpenTypeSanitizer\\.cpp$'],
# Exclude everything in svg/ directly but not in subdirectories.
# Everything in svg/*.cpp is included in svg/SVGAllInOne.cpp.
['exclude', 'svg/[^/]+\\.cpp$'],
['include', 'svg/SVGAllInOne\\.cpp$'],
# JSC-only.
['exclude', 'inspector/JavaScript[^/]*\\.cpp$'],
......@@ -818,6 +829,20 @@
'<(chromium_src_dir)/v8/tools/gyp/v8.gyp:v8',
],
}],
['enable_svg!=0', {
'sources/': [
['exclude', 'svg/[^/]+\\.cpp$'],
['include', 'svg/SVGAllInOne\\.cpp$'],
],
}, { # svg disabled
'sources/': [
['exclude', 'svg/'],
['exclude', 'css/svg/'],
['exclude', 'rendering/style/SVG'],
['exclude', 'rendering/RenderSVG'],
['exclude', 'rendering/SVG'],
],
}],
['OS=="linux" or OS=="freebsd"', {
'dependencies': [
'<(chromium_src_dir)/build/linux/system.gyp:fontconfig',
......
{
'variables': {
'webcore_bindings_idl_files': [
#IDL files
'css/CSSCharsetRule.idl',
'css/CSSFontFaceRule.idl',
'css/CSSImportRule.idl',
......@@ -224,6 +222,28 @@
'storage/SQLTransaction.idl',
'storage/Storage.idl',
'storage/StorageEvent.idl',
'websockets/WebSocket.idl',
'workers/AbstractWorker.idl',
'workers/DedicatedWorkerContext.idl',
'workers/SharedWorker.idl',
'workers/SharedWorkerContext.idl',
'workers/Worker.idl',
'workers/WorkerContext.idl',
'workers/WorkerLocation.idl',
'xml/DOMParser.idl',
'xml/XMLHttpRequest.idl',
'xml/XMLHttpRequestException.idl',
'xml/XMLHttpRequestProgressEvent.idl',
'xml/XMLHttpRequestUpload.idl',
'xml/XMLSerializer.idl',
'xml/XPathEvaluator.idl',
'xml/XPathException.idl',
'xml/XPathExpression.idl',
'xml/XPathNSResolver.idl',
'xml/XPathResult.idl',
'xml/XSLTProcessor.idl',
],
'webcore_bindings_idl_svg_files': [
'svg/ElementTimeControl.idl',
'svg/SVGAElement.idl',
'svg/SVGAltGlyphElement.idl',
......@@ -370,26 +390,6 @@
'svg/SVGViewSpec.idl',
'svg/SVGZoomAndPan.idl',
'svg/SVGZoomEvent.idl',
'websockets/WebSocket.idl',
'workers/AbstractWorker.idl',
'workers/DedicatedWorkerContext.idl',
'workers/SharedWorker.idl',
'workers/SharedWorkerContext.idl',
'workers/Worker.idl',
'workers/WorkerContext.idl',
'workers/WorkerLocation.idl',
'xml/DOMParser.idl',
'xml/XMLHttpRequest.idl',
'xml/XMLHttpRequestException.idl',
'xml/XMLHttpRequestProgressEvent.idl',
'xml/XMLHttpRequestUpload.idl',
'xml/XMLSerializer.idl',
'xml/XPathEvaluator.idl',
'xml/XPathException.idl',
'xml/XPathExpression.idl',
'xml/XPathNSResolver.idl',
'xml/XPathResult.idl',
'xml/XSLTProcessor.idl',
],
'webcore_files': [
......
......@@ -29,6 +29,8 @@
*/
#include "config.h"
#if ENABLE(SVG)
#include "V8SVGDocument.h"
#include "V8IsolatedContext.h"
......@@ -51,3 +53,5 @@ v8::Handle<v8::Value> toV8(SVGDocument* impl, bool forceNewObject)
}
} // namespace WebCore
#endif
......@@ -29,6 +29,8 @@
*/
#include "config.h"
#if ENABLE(SVG)
#include "V8SVGPathSeg.h"
#include "V8DOMWindow.h"
......@@ -104,3 +106,5 @@ v8::Handle<v8::Value> toV8(SVGPathSeg* impl)
}
} // namespace WebCore
#endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment