From 77ac647caa18783a2800f67523133a798a9bf024 Mon Sep 17 00:00:00 2001 From: zack Date: Sun, 10 Dec 2006 00:58:36 +0000 Subject: [PATCH] CMake is too slow to make it the default build for us. This patch adds QMake build which works, way, way better. Mostly done by Simon Hausmann. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@18114 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- ChangeLog | 9 + JavaScriptCore/ChangeLog | 10 + JavaScriptCore/JavaScriptCore.pro | 114 ++ JavaScriptCore/kjs/kjs.pro | 74 -- JavaScriptCore/pcre/pcre.pri | 36 + WebCore/ChangeLog | 9 + WebCore/WebCore.pro | 1134 +++++++++++++++++ .../graphics/qt/GraphicsContextQt.cpp | 3 + WebKit.pri | 29 + WebKit.pro | 7 + WebKitQt/ChangeLog | 9 + WebKitQt/QtLauncher/QtLauncher.pro | 4 + WebKitQt/QtLauncher/main.cpp | 1 + 13 files changed, 1365 insertions(+), 74 deletions(-) create mode 100644 JavaScriptCore/JavaScriptCore.pro delete mode 100644 JavaScriptCore/kjs/kjs.pro create mode 100644 JavaScriptCore/pcre/pcre.pri create mode 100644 WebCore/WebCore.pro create mode 100644 WebKit.pri create mode 100644 WebKit.pro create mode 100644 WebKitQt/QtLauncher/QtLauncher.pro diff --git a/ChangeLog b/ChangeLog index b5d01fcfe361..0106d0de7510 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2006-12-09 Lars Knoll + + Reviewed by Zack + + Make it possible to build WebKit with qmake. + + * WebKit.pri: Added. + * WebKit.pro: Added. + 2006-11-19 Simon Hausmann Reviewed by Zack. diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog index b92544648c8c..8b894fb8c239 100644 --- a/JavaScriptCore/ChangeLog +++ b/JavaScriptCore/ChangeLog @@ -1,3 +1,13 @@ +2006-12-09 Lars Knoll + + Reviewed by Zack + + Make it possible to build WebKit with qmake. + + * JavaScriptCore.pro: Added. + * kjs/kjs.pro: Removed. + * pcre/pcre.pri: Added. + 2006-12-09 Zack Rusin Fixing the compilation with platform kde after the icu changes. diff --git a/JavaScriptCore/JavaScriptCore.pro b/JavaScriptCore/JavaScriptCore.pro new file mode 100644 index 000000000000..a5d017790417 --- /dev/null +++ b/JavaScriptCore/JavaScriptCore.pro @@ -0,0 +1,114 @@ +# JavaScriptCore - Qt4 build info +VPATH += $$PWD +TEMPLATE = lib +TARGET = JavaScriptCore +DESTDIR = ../lib +OBJECTS_DIR = tmp +INCLUDEPATH += tmp +INCLUDEPATH += $$PWD $$PWD/kjs $$PWD/bindings $$PWD/bindings/c $$PWD/wtf +DEFINES -= KJS_IDENTIFIER_HIDE_GLOBALS +DEFINES += BUILDING_QT__ +QT -= gui + +isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD +include($$OUTPUT_DIR/config.pri) + +include(pcre/pcre.pri) + +LUT_FILES += \ + kjs/date_object.cpp \ + kjs/number_object.cpp \ + kjs/string_object.cpp \ + kjs/array_object.cpp \ + kjs/math_object.cpp \ + kjs/regexp_object.cpp + +KEYWORDLUT_FILES += \ + kjs/keywords.table + +KJSBISON += \ + kjs/grammar.y + +SOURCES += \ + wtf/TCSystemAlloc.cpp \ + wtf/Assertions.cpp \ + wtf/HashTable.cpp \ + wtf/FastMalloc.cpp \ + bindings/NP_jsobject.cpp \ + bindings/npruntime.cpp \ + bindings/runtime_array.cpp \ + bindings/runtime.cpp \ + bindings/runtime_method.cpp \ + bindings/runtime_object.cpp \ + bindings/runtime_root.cpp \ + bindings/c/c_class.cpp \ + bindings/c/c_instance.cpp \ + bindings/c/c_runtime.cpp \ + bindings/c/c_utility.cpp \ + kjs/DateMath.cpp \ + kjs/JSWrapperObject.cpp \ + kjs/PropertyNameArray.cpp \ + kjs/array_object.cpp \ + kjs/bool_object.cpp \ + kjs/collector.cpp \ + kjs/Context.cpp \ + kjs/date_object.cpp \ + kjs/debugger.cpp \ + kjs/dtoa.cpp \ + kjs/error_object.cpp \ + kjs/ExecState.cpp \ + kjs/fpconst.cpp \ + kjs/function.cpp \ + kjs/function_object.cpp \ + kjs/identifier.cpp \ + kjs/internal.cpp \ + kjs/interpreter.cpp \ + kjs/JSImmediate.cpp \ + kjs/JSLock.cpp \ + kjs/lexer.cpp \ + kjs/list.cpp \ + kjs/lookup.cpp \ + kjs/math_object.cpp \ + kjs/nodes.cpp \ + kjs/nodes2string.cpp \ + kjs/number_object.cpp \ + kjs/object.cpp \ + kjs/object_object.cpp \ + kjs/operations.cpp \ + kjs/Parser.cpp \ + kjs/property_map.cpp \ + kjs/property_slot.cpp \ + kjs/regexp.cpp \ + kjs/regexp_object.cpp \ + kjs/scope_chain.cpp \ + kjs/string_object.cpp \ + kjs/ustring.cpp \ + kjs/value.cpp + + +# GENERATOR 1-A: LUT creator +lut.output = tmp/${QMAKE_FILE_BASE}.lut.h +lut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} +lut.depend = ${QMAKE_FILE_NAME} +lut.input = LUT_FILES +lut.CONFIG += no_link +QMAKE_EXTRA_COMPILERS += lut + +# GENERATOR 1-B: particular LUT creator (for 1 file only) +keywordlut.output = tmp/lexer.lut.h +keywordlut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} +keywordlut.depend = ${QMAKE_FILE_NAME} +keywordlut.input = KEYWORDLUT_FILES +keywordlut.CONFIG += no_link +QMAKE_EXTRA_COMPILERS += keywordlut + +# GENERATOR 2: bison grammar +kjsbison.output = tmp/${QMAKE_FILE_BASE}.cpp +macx:kjsbison.commands = bison -d -p kjsyy ${QMAKE_FILE_NAME} && mv kjs/${QMAKE_FILE_BASE}.tab.c ${QMAKE_FILE_OUT} && mv kjs/${QMAKE_FILE_BASE}.tab.h tmp/${QMAKE_FILE_BASE}.h +!macx:kjsbison.commands = bison -d -p kjsyy ${QMAKE_FILE_NAME} && mv ${QMAKE_FILE_BASE}.tab.c ${QMAKE_FILE_OUT} && mv ${QMAKE_FILE_BASE}.tab.h tmp/${QMAKE_FILE_BASE}.h +kjsbison.depend = ${QMAKE_FILE_NAME} +kjsbison.input = KJSBISON +kjsbison.variable_out = GENERATED_SOURCES +kjsbison.dependency_type = TYPE_C +kjsbison.CONFIG = target_predeps +QMAKE_EXTRA_COMPILERS += kjsbison diff --git a/JavaScriptCore/kjs/kjs.pro b/JavaScriptCore/kjs/kjs.pro deleted file mode 100644 index 0fc81c58166c..000000000000 --- a/JavaScriptCore/kjs/kjs.pro +++ /dev/null @@ -1,74 +0,0 @@ -LANGUAGE = C++ -TARGET = kjs -TEMPLATE = lib -CONFIG += qt warn_on debug static -QT -= gui - -unix { - !system(which perl >/dev/null 2>&1):error("Build requires perl.") - !exists(lexer.lut.h):system(perl create_hash_table keywords.table -i >lexer.lut.h) - !exists(array_object.lut.h):system(perl create_hash_table array_object.cpp -i >array_object.lut.h) - !exists(math_object.lut.h):system(perl create_hash_table math_object.cpp -i >math_object.lut.h) - !exists(date_object.lut.h):system(perl create_hash_table date_object.cpp -i >date_object.lut.h) - !exists(number_object.lut.h):system(perl create_hash_table number_object.cpp -i >number_object.lut.h) - !exists(string_object.lut.h):system(perl create_hash_table string_object.cpp -i >string_object.lut.h) - !exists(regexp_object.lut.h):system(perl create_hash_table regexp_object.cpp -i >regexp_object.lut.h) - !exists(grammar.cpp):system(bison -d -p kjsyy grammar.y && mv grammar.tab.c grammar.cpp && mv grammar.tab.h grammar.h) -} - -# QMakes YACC support is strange -# YACCSOURCES += grammar.y - -SOURCES += \ - ../kxmlcore/FastMalloc.cpp \ - ../kxmlcore/TCSystemAlloc.cpp \ - ../kxmlcore/HashTable.cpp \ - array_object.cpp \ - function_object.cpp \ - nodes2string.cpp \ - reference.cpp \ - bool_object.cpp \ - identifier.cpp \ - nodes.cpp \ - reference_list.cpp \ - collector.cpp \ - internal.cpp \ - number_object.cpp \ - regexp.cpp \ - date_object.cpp \ - interpreter.cpp \ - object.cpp \ - regexp_object.cpp \ - debugger.cpp \ - object_object.cpp \ - scope_chain.cpp \ - dtoa.cpp \ - lexer.cpp \ - operations.cpp \ - string_object.cpp \ - error_object.cpp \ - list.cpp \ - property_map.cpp \ - fpconst.cpp \ - lookup.cpp \ - property_slot.cpp \ - ustring.cpp \ - function.cpp \ - math_object.cpp \ - value.cpp \ - JSLock.cpp \ - grammar.cpp - -!macx:unix { - INCLUDEPATH += .. ../pcre ../kxmlcore ../bindings - MOC_DIR = .moc - OBJECTS_DIR = .obj - QMAKE_CXXFLAGS_DEBUG += -ansi -} - -win32 { - INCLUDEPATH += .. ../pcre ../kxmlcore ../bindings ../icu - QMAKE_CXXFLAGS_RELEASE += /Zm1000 - QMAKE_CXXFLAGS_DEBUG += /Zm1000 -} - diff --git a/JavaScriptCore/pcre/pcre.pri b/JavaScriptCore/pcre/pcre.pri new file mode 100644 index 000000000000..ba407e59607d --- /dev/null +++ b/JavaScriptCore/pcre/pcre.pri @@ -0,0 +1,36 @@ +# Perl Compatible Regular Expressions - Qt4 build info +VPATH += $$PWD +INCLUDEPATH += $$PWD + +SOURCES += \ + pcre_get.c \ + pcre_printint.c \ + pcre_refcount.c \ + pcre_ucp_findchar.c \ + pcre_compile.c \ + pcre_globals.c \ + pcre_config.c \ + pcre_version.c \ + pcre_info.c \ + pcre_study.c \ + pcre_exec.c \ + pcre_xclass.c \ + ucp_findchar.c \ + pcre_tables.c \ + pcre_maketables.c \ + pcre_try_flipped.c \ + pcre_ord2utf8.c \ + pcre_fullinfo.c + +CTGENFILE += \ + dftables.c + + +# GENERATOR: "chartables.c": compile and execute the chartables generator (and add it to sources) +ctgen.output = tmp/chartables.c +ctgen.commands = gcc ${QMAKE_FILE_NAME} -DBUILDING_QT__ -I$$PWD/../wtf -o tmp/${QMAKE_FILE_BASE} && ./tmp/${QMAKE_FILE_BASE} ${QMAKE_FILE_OUT} +ctgen.input = CTGENFILE +ctgen.CONFIG += target_predeps no_link +ctgen.variable_out = GENERATED_SOURCES +ctgen.dependency_type = TYPE_C +QMAKE_EXTRA_COMPILERS += ctgen diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 79582bac21ae..b2a4950785ba 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,12 @@ +2006-12-09 Lars Knoll + + Reviewed by Zack + + Make it possible to build WebKit with qmake. + + * WebCore.pro: Added. + * platform/graphics/qt/GraphicsContextQt.cpp: + 2006-12-10 Lars Knoll Reviewed by Zack. diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro new file mode 100644 index 000000000000..60931b9b366d --- /dev/null +++ b/WebCore/WebCore.pro @@ -0,0 +1,1134 @@ +# WebCore - Qt4 build info + +TEMPLATE = lib +TARGET = WebKitQt +OBJECTS_DIR = tmp +INCLUDEPATH += tmp + +isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD/.. +DESTDIR = $$OUTPUT_DIR/lib + +include($$OUTPUT_DIR/config.pri) + +CONFIG -= warn_on +#QMAKE_CXXFLAGS_RELEASE += -Wall -Wno-undef -Wno-unused-parameter + +# PRE-BUILD: make the required config.h file +#config_h.target = config.h +#config_h.commands = cp config.h.qmake config.h +#config_h.depends = config.h.qmake +#QMAKE_EXTRA_TARGETS += config_h +#PRE_TARGETDEPS += config.h + +# Optional components (look for defs in config.h and included files!) +#DEFINES += XPATH_SUPPORT=1 +DEFINES += XSLT_SUPPORT=1 +#DEFINES += XBL_SUPPORT=1 +#DEFINES += SVG_SUPPORT=1 + +DEFINES += WTF_CHANGES=1 BUILDING_QT__=1 + +INCLUDEPATH += $$PWD/../JavaScriptCore +LIBS += -L$$OUTPUT_DIR/lib -lJavaScriptCore + +macx { + INCLUDEPATH += /opt/local/include /opt/local/include/libxml2 + INCLUDEPATH += /usr/include/libxml2 + LIBS += -L/opt/local/lib -lxml2 -lxslt +} + +INCLUDEPATH += $$PWD \ + $$[QT_INSTALL_PREFIX]/src/3rdparty/sqlite/ \ + $$PWD/ForwardingHeaders \ + $$PWD/../JavaScriptCore/kjs \ + $$PWD/../JavaScriptCore/bindings \ + $$PWD/platform \ + $$PWD/platform/qt \ + $$PWD/platform/network \ + $$PWD/platform/network/qt \ + $$PWD/platform/graphics \ + $$PWD/platform/graphics/qt \ + $$PWD/platform/graphics/svg \ + $$PWD/loader $$PWD/loader/icon $$PWD/loader/qt \ + $$PWD/css \ + $$PWD/dom \ + $$PWD/page \ + $$PWD/bridge \ + $$PWD/editing \ + $$PWD/kwq \ + $$PWD/rendering \ + $$PWD/xml \ + $$PWD/html \ + $$PWD/bindings/js \ + $$PWD/kcanvas $$PWD/kcanvas/device $$PWD/kcanvas/device/qt \ + $$PWD/ksvg2 $$PWD/ksvg2/css $$PWD/ksvg2/svg $$PWD/ksvg2/misc $$PWD/ksvg2/events \ + $$PWD/platform/image-decoders \ + $$PWD/WebCore+SVG +QT += network +!mac:CONFIG += link_pkgconfig +PKGCONFIG += libxslt +LIBS += -lsqlite3 + + +FEATURE_DEFINES_JAVASCRIPT = LANGUAGE_JAVASCRIPT + + + +TOKENIZER = $$PWD/css/tokenizer.flex + +CSSBISON = $$PWD/css/CSSGrammar.y + +HTML_NAMES = $$PWD/html/HTMLTagNames.in + +ENTITIES_GPERF = $$PWD/html/HTMLEntityNames.gperf + +COLORDAT_GPERF = $$PWD/platform/ColorData.gperf + +WALDOCSSPROPS = $$PWD/css/CSSPropertyNames.in + +WALDOCSSVALUES = $$PWD/css/CSSValueKeywords.in + +SVGCSSPROPERTIES = $$PWD/ksvg2/css/CSSPropertyNames.in + +SVGCSSVALUES = $$PWD/ksvg2/css/CSSValueKeywords.in + +STYLESHEETS_EMBED = $$PWD/css/html4.css + +MANUALMOC += \ + $$PWD/platform/qt/SharedTimerQt.h \ + $$PWD/platform/qt/ScrollViewCanvasQt.h \ + $$PWD/platform/network/qt/ResourceHandleManager.h \ + +LUT_FILES += \ + bindings/js/kjs_window.cpp \ + bindings/js/kjs_css.cpp \ + bindings/js/kjs_dom.cpp \ + bindings/js/kjs_html.cpp \ + bindings/js/kjs_events.cpp \ + bindings/js/kjs_navigator.cpp \ + bindings/js/kjs_traversal.cpp \ + bindings/js/JSXMLHttpRequest.cpp \ + bindings/js/JSXSLTProcessor.cpp + +LUT_TABLE_FILES += \ + bindings/js/JSHTMLInputElementBase.cpp + +IDL_BINDINGS += \ + css/CSSValue.idl \ + css/CSSRuleList.idl \ + css/CSSValueList.idl \ + css/CSSStyleDeclaration.idl \ + css/CSSPrimitiveValue.idl \ + css/CSSRule.idl \ + css/Counter.idl \ + css/MediaList.idl \ + dom/Event.idl \ + dom/Range.idl \ + dom/Text.idl \ + dom/DOMImplementation.idl \ + dom/NodeFilter.idl \ + dom/MouseEvent.idl \ + dom/CharacterData.idl \ + dom/DocumentFragment.idl \ + dom/Entity.idl \ + dom/UIEvent.idl \ + dom/Node.idl \ + dom/ProcessingInstruction.idl \ + dom/Notation.idl \ + dom/Element.idl \ + dom/DocumentType.idl \ + dom/Document.idl \ + dom/Attr.idl \ + dom/MutationEvent.idl \ + dom/KeyboardEvent.idl \ + dom/WheelEvent.idl \ + dom/OverflowEvent.idl \ + dom/NodeIterator.idl \ + dom/TreeWalker.idl \ + dom/RangeException.idl \ + html/CanvasGradient.idl \ + html/CanvasPattern.idl \ + html/CanvasRenderingContext2D.idl \ + html/HTMLAnchorElement.idl \ + html/HTMLAppletElement.idl \ + html/HTMLAreaElement.idl \ + html/HTMLBaseElement.idl \ + html/HTMLBaseFontElement.idl \ + html/HTMLBlockquoteElement.idl \ + html/HTMLBodyElement.idl \ + html/HTMLBRElement.idl \ + html/HTMLButtonElement.idl \ + html/HTMLCanvasElement.idl \ + html/HTMLDirectoryElement.idl \ + html/HTMLDivElement.idl \ + html/HTMLDListElement.idl \ + html/HTMLDocument.idl \ + html/HTMLElement.idl \ + html/HTMLFieldSetElement.idl \ + html/HTMLFontElement.idl \ + html/HTMLFormElement.idl \ + html/HTMLHeadElement.idl \ + html/HTMLHeadingElement.idl \ + html/HTMLHRElement.idl \ + html/HTMLHtmlElement.idl \ + html/HTMLImageElement.idl \ + html/HTMLInputElement.idl \ + html/HTMLIsIndexElement.idl \ + html/HTMLLabelElement.idl \ + html/HTMLLegendElement.idl \ + html/HTMLLIElement.idl \ + html/HTMLLinkElement.idl \ + html/HTMLMapElement.idl \ + html/HTMLMenuElement.idl \ + html/HTMLMetaElement.idl \ + html/HTMLModElement.idl \ + html/HTMLOListElement.idl \ + html/HTMLOptGroupElement.idl \ + html/HTMLOptionElement.idl \ + html/HTMLParagraphElement.idl \ + html/HTMLParamElement.idl \ + html/HTMLPreElement.idl \ + html/HTMLQuoteElement.idl \ + html/HTMLScriptElement.idl \ + html/HTMLStyleElement.idl \ + html/HTMLTextAreaElement.idl \ + html/HTMLTitleElement.idl \ + html/HTMLUListElement.idl \ + html/HTMLOptionsCollection.idl \ + xml/DOMParser.idl \ + xml/XMLSerializer.idl \ + page/DOMWindow.idl + +SOURCES += \ + bindings/js/kjs_binding.cpp \ + bindings/js/kjs_css.cpp \ + bindings/js/kjs_dom.cpp \ + bindings/js/kjs_events.cpp \ + bindings/js/kjs_html.cpp \ + bindings/js/kjs_navigator.cpp \ + bindings/js/kjs_proxy.cpp \ + bindings/js/kjs_traversal.cpp \ + bindings/js/kjs_window.cpp \ + bindings/js/JSCanvasRenderingContext2DCustom.cpp \ + bindings/js/JSHTMLElementWrapperFactory.cpp \ + bindings/js/JSHTMLFormElementCustom.cpp \ + bindings/js/JSHTMLOptionElementConstructor.cpp \ + bindings/js/JSHTMLOptionsCollectionCustom.cpp \ + bindings/js/JSHTMLInputElementBase.cpp \ + bindings/js/JSXMLHttpRequest.cpp \ + bindings/js/JSNodeIteratorCustom.cpp \ + bindings/js/JSTreeWalkerCustom.cpp \ + bindings/js/JSXSLTProcessor.cpp \ + css/cssparser.cpp \ + css/cssstyleselector.cpp \ + css/csshelper.cpp \ + css/FontValue.cpp \ + css/CSSSelector.cpp \ + css/MediaFeatureNames.cpp \ + css/CSSRuleList.cpp \ + css/CSSCharsetRule.cpp \ + css/MediaQueryExp.cpp \ + css/CSSImportRule.cpp \ + css/CSSValueList.cpp \ + css/CSSStyleDeclaration.cpp \ + css/CSSPrimitiveValue.cpp \ + css/CSSProperty.cpp \ + css/CSSCursorImageValue.cpp \ + css/CSSBorderImageValue.cpp \ + css/MediaQuery.cpp \ + css/StyleSheet.cpp \ + css/CSSPageRule.cpp \ + css/StyleSheetList.cpp \ + css/MediaQueryEvaluator.cpp \ + css/StyleBase.cpp \ + css/CSSRule.cpp \ + css/CSSStyleSheet.cpp \ + css/CSSInitialValue.cpp \ + css/CSSImageValue.cpp \ + css/CSSStyleRule.cpp \ + css/CSSInheritedValue.cpp \ + css/StyleList.cpp \ + css/FontFamilyValue.cpp \ + css/CSSMediaRule.cpp \ + css/CSSComputedStyleDeclaration.cpp \ + css/CSSMutableStyleDeclaration.cpp \ + css/MediaList.cpp \ + css/CSSFontFaceRule.cpp \ + css/ShadowValue.cpp \ + dom/Event.cpp \ + dom/Range.cpp \ + dom/Text.cpp \ + dom/DOMImplementation.cpp \ + dom/NodeFilter.cpp \ + dom/MouseEvent.cpp \ + dom/EntityReference.cpp \ + dom/NameNodeList.cpp \ + dom/CharacterData.cpp \ + dom/XMLTokenizer.cpp \ + dom/StyleElement.cpp \ + dom/StyledElement.cpp \ + dom/MappedAttribute.cpp \ + dom/NamedAttrMap.cpp \ + dom/ContainerNode.cpp \ + dom/NamedMappedAttrMap.cpp \ + dom/EventNames.cpp \ + dom/Comment.cpp \ + dom/EditingText.cpp \ + dom/DocumentFragment.cpp \ + dom/ChildNodeList.cpp \ + dom/Entity.cpp \ + dom/BeforeTextInsertedEvent.cpp \ + dom/UIEvent.cpp \ + dom/Node.cpp \ + dom/Attribute.cpp \ + dom/Position.cpp \ + dom/ProcessingInstruction.cpp \ + dom/TreeWalker.cpp \ + dom/Notation.cpp \ + dom/Element.cpp \ + dom/NodeFilterCondition.cpp \ + dom/CDATASection.cpp \ + dom/DocumentType.cpp \ + dom/NodeList.cpp \ + dom/CSSMappedAttributeDeclaration.cpp \ + dom/QualifiedName.cpp \ + dom/Document.cpp \ + dom/Attr.cpp \ + dom/OverflowEvent.cpp \ + dom/RegisteredEventListener.cpp \ + dom/EventTargetNode.cpp \ + dom/BeforeUnloadEvent.cpp \ + dom/MutationEvent.cpp \ + dom/MouseRelatedEvent.cpp \ + dom/KeyboardEvent.cpp \ + dom/NodeIterator.cpp \ + dom/ClipboardEvent.cpp \ + dom/Traversal.cpp \ + dom/WheelEvent.cpp \ + dom/UIEventWithKeyState.cpp \ + editing/DeleteButtonController.cpp \ + editing/DeleteButton.cpp \ + editing/Editor.cpp \ + editing/CommandByName.cpp \ + editing/InsertIntoTextNodeCommand.cpp \ + editing/WrapContentsInDummySpanCommand.cpp \ + editing/ReplaceSelectionCommand.cpp \ + editing/MoveSelectionCommand.cpp \ + editing/RemoveNodePreservingChildrenCommand.cpp \ + editing/HTMLInterchange.cpp \ + editing/UnlinkCommand.cpp \ + editing/InsertLineBreakCommand.cpp \ + editing/FormatBlockCommand.cpp \ + editing/AppendNodeCommand.cpp \ + editing/BreakBlockquoteCommand.cpp \ + editing/htmlediting.cpp \ + editing/markup.cpp \ + editing/InsertParagraphSeparatorCommand.cpp \ + editing/ModifySelectionListLevel.cpp \ + editing/JSEditor.cpp \ + editing/Selection.cpp \ + editing/TextIterator.cpp \ + editing/InsertListCommand.cpp \ + editing/IndentOutdentCommand.cpp \ + editing/InsertNodeBeforeCommand.cpp \ + editing/SplitTextNodeContainingElementCommand.cpp \ + editing/TypingCommand.cpp \ + editing/MergeIdenticalElementsCommand.cpp \ + editing/EditCommand.cpp \ + editing/SplitTextNodeCommand.cpp \ + editing/RemoveCSSPropertyCommand.cpp \ + editing/JoinTextNodesCommand.cpp \ + editing/InsertTextCommand.cpp \ + editing/SelectionController.cpp \ + editing/DeleteSelectionCommand.cpp \ + editing/SplitElementCommand.cpp \ + editing/VisiblePosition.cpp \ + editing/ApplyStyleCommand.cpp \ + editing/visible_units.cpp \ + editing/RemoveNodeAttributeCommand.cpp \ + editing/DeleteFromTextNodeCommand.cpp \ + editing/RemoveNodeCommand.cpp \ + editing/CompositeEditCommand.cpp \ + editing/SetNodeAttributeCommand.cpp \ + editing/CreateLinkCommand.cpp \ + editing/qt/EditorQt.cpp \ +# kwq/KWQWMatrix.cpp \ +# kwq/KWQCString.cpp \ +# kwq/KWQTextStream.cpp \ + xml/XSLStyleSheet.cpp \ + xml/XSLTProcessor.cpp \ + xml/XSLImportRule.cpp \ + xml/DOMParser.cpp \ + xml/XMLSerializer.cpp \ + xml/xmlhttprequest.cpp \ +# icon/IconDatabase.cpp \ +# icon/SQLTransaction.cpp \ +# icon/SQLStatement.cpp \ +# icon/SiteIcon.cpp \ +# icon/SQLDatabase.cpp \ + html/HTMLParser.cpp \ + html/HTMLFontElement.cpp \ + html/HTMLEmbedElement.cpp \ + html/HTMLLinkElement.cpp \ + html/HTMLOptGroupElement.cpp \ + html/HTMLCanvasElement.cpp \ + html/HTMLTitleElement.cpp \ + html/CanvasRenderingContext2D.cpp \ + html/HTMLObjectElement.cpp \ + html/HTMLAppletElement.cpp \ + html/HTMLKeygenElement.cpp \ + html/HTMLDivElement.cpp \ + html/HTMLMapElement.cpp \ + html/HTMLScriptElement.cpp \ + html/HTMLHtmlElement.cpp \ + html/HTMLTokenizer.cpp \ + html/HTMLOptionElement.cpp \ + html/HTMLTableCaptionElement.cpp \ + html/HTMLImageLoader.cpp \ + html/FormDataList.cpp \ + html/HTMLLabelElement.cpp \ + html/HTMLTableColElement.cpp \ + html/HTMLDListElement.cpp \ + html/HTMLTablePartElement.cpp \ + html/HTMLTableSectionElement.cpp \ + html/HTMLTextAreaElement.cpp \ + html/HTMLTextFieldInnerElement.cpp \ + html/HTMLAreaElement.cpp \ + html/CanvasStyle.cpp \ + html/HTMLIsIndexElement.cpp \ + html/HTMLHeadElement.cpp \ + html/HTMLFrameSetElement.cpp \ + html/HTMLBodyElement.cpp \ + html/HTMLBRElement.cpp \ + html/HTMLNameCollection.cpp \ + html/HTMLLegendElement.cpp \ + html/HTMLLIElement.cpp \ + html/HTMLParamElement.cpp \ + html/HTMLMetaElement.cpp \ + html/HTMLHeadingElement.cpp \ + html/HTMLUListElement.cpp \ + html/HTMLInputElement.cpp \ + html/HTMLElementFactory.cpp \ + html/HTMLPlugInElement.cpp \ + html/HTMLFieldSetElement.cpp \ + html/HTMLParagraphElement.cpp \ + html/HTMLStyleElement.cpp \ + html/HTMLMarqueeElement.cpp \ + html/HTMLGenericFormElement.cpp \ + html/HTMLElement.cpp \ + html/HTMLDocument.cpp \ + html/HTMLOListElement.cpp \ + html/HTMLFormElement.cpp \ + html/HTMLPreElement.cpp \ + html/HTMLTableElement.cpp \ + html/CanvasGradient.cpp \ + html/HTMLViewSourceDocument.cpp \ + html/HTMLFrameElement.cpp \ + html/HTMLFrameElementBase.cpp \ + html/HTMLAnchorElement.cpp \ + html/HTMLTableCellElement.cpp \ + html/CanvasPattern.cpp \ + html/HTMLBlockquoteElement.cpp \ + html/HTMLIFrameElement.cpp \ + html/HTMLMenuElement.cpp \ + html/HTMLCollection.cpp \ + html/HTMLModElement.cpp \ + html/HTMLQuoteElement.cpp \ + html/HTMLDirectoryElement.cpp \ + html/HTMLSelectElement.cpp \ + html/HTMLImageElement.cpp \ + html/HTMLOptionsCollection.cpp \ + html/HTMLTableRowElement.cpp \ + html/HTMLBaseFontElement.cpp \ + html/HTMLHRElement.cpp \ + html/HTMLButtonElement.cpp \ + html/HTMLFormCollection.cpp \ + html/HTMLBaseElement.cpp \ + page/FrameTree.cpp \ + page/DOMWindow.cpp \ + page/MouseEventWithHitTestResults.cpp \ + page/Frame.cpp \ + page/Page.cpp \ + page/Chrome.cpp \ + page/FrameView.cpp \ + page/PageState.cpp \ + page/ContextMenuController.cpp \ + page/EventHandler.cpp \ + page/qt/EventHandlerQt.cpp \ + xml/XPathUtil.cpp \ + xml/XPathPredicate.cpp \ + xml/XPathVariableReference.cpp \ + xml/XPathValue.cpp \ + xml/XPathPath.cpp \ + xml/XPathFunctions.cpp \ + xml/XPathParser.cpp \ + xml/XPathStep.cpp \ + xml/XPathExpressionNode.cpp \ + xml/XPathNamespace.cpp \ + xml/XPathNSResolver.cpp \ + xml/XPathExpression.cpp \ + xml/XPathResult.cpp \ + xml/XPathEvaluator.cpp \ + loader/Cache.cpp \ + loader/CachedCSSStyleSheet.cpp \ + loader/CachedImage.cpp \ + loader/CachedResource.cpp \ + loader/CachedResourceClientWalker.cpp \ + loader/CachedScript.cpp \ + loader/CachedXSLStyleSheet.cpp \ + loader/DocLoader.cpp \ + loader/DocumentLoader.cpp \ + loader/FormState.cpp \ + loader/FrameLoader.cpp \ + loader/ImageDocument.cpp \ + loader/MainResourceLoader.cpp \ + loader/NetscapePlugInStreamLoader.cpp \ + loader/PluginDocument.cpp \ + loader/Request.cpp \ + loader/ResourceLoader.cpp \ + loader/SubresourceLoader.cpp \ + loader/TextDocument.cpp \ + loader/TextResourceDecoder.cpp \ + loader/loader.cpp \ + loader/icon/IconLoader.cpp \ + loader/icon/IconDatabase.cpp \ + loader/icon/IconDataCache.cpp \ + loader/icon/SQLTransaction.cpp \ + loader/icon/SQLStatement.cpp \ + loader/icon/SQLDatabase.cpp \ + loader/qt/FrameLoaderQt.cpp \ + loader/qt/FrameLoaderClientQt.cpp \ + loader/qt/DocumentLoaderQt.cpp \ + loader/qt/NavigationActionQt.cpp \ + loader/qt/ResourceLoaderQt.cpp \ + platform/CString.cpp \ + platform/AtomicString.cpp \ + platform/graphics/AffineTransform.cpp \ + platform/TextStream.cpp \ + platform/Widget.cpp \ + platform/GlyphWidthMap.cpp \ + platform/graphics/Pen.cpp \ + platform/graphics/Image.cpp \ + platform/DeprecatedStringList.cpp \ + platform/graphics/FloatSize.cpp \ + platform/String.cpp \ + platform/DeprecatedValueListImpl.cpp \ + platform/graphics/IntRect.cpp \ + platform/Arena.cpp \ + platform/ArrayImpl.cpp \ + platform/graphics/FloatPoint.cpp \ + platform/SegmentedString.cpp \ + platform/TextCodec.cpp \ + platform/qt/TextCodecQt.cpp \ + platform/DeprecatedString.cpp \ + platform/DeprecatedCString.cpp \ + platform/qt/TextBreakIteratorQt.cpp \ + platform/TextCodecLatin1.cpp \ + platform/TextCodecUTF16.cpp \ + platform/TextDecoder.cpp \ + platform/TextEncoding.cpp \ + platform/TextEncodingRegistry.cpp \ + platform/Logging.cpp \ + platform/graphics/Color.cpp \ + platform/DeprecatedPtrListImpl.cpp \ + platform/KURL.cpp \ + platform/StringImpl.cpp \ + platform/graphics/FloatRect.cpp \ + platform/graphics/Path.cpp \ + platform/MimeTypeRegistry.cpp \ + platform/qt/MimeTypeRegistryQt.cpp \ + platform/qt/EditorClientQt.cpp \ + platform/qt/SoundQt.cpp \ + platform/qt/LoaderFunctionsQt.cpp \ + platform/qt/FileChooserQt.cpp \ + platform/graphics/qt/IconQt.cpp \ + platform/graphics/qt/AffineTransformQt.cpp \ + platform/qt/StringQt.cpp \ + platform/graphics/qt/ColorQt.cpp \ + platform/qt/GlyphMapQt.cpp \ + platform/qt/CookieJarQt.cpp \ + platform/qt/FontPlatformDataQt.cpp \ + platform/qt/ScrollViewQt.cpp \ + platform/qt/TemporaryLinkStubs.cpp \ + platform/qt/CursorQt.cpp \ + platform/qt/WidgetQt.cpp \ + platform/qt/SystemTimeQt.cpp \ + platform/qt/RenderThemeQt.cpp \ + platform/qt/FontDataQt.cpp \ + platform/qt/SharedTimerQt.cpp \ + platform/qt/PopupMenuQt.cpp \ + platform/qt/ChromeClientQt.cpp \ + platform/qt/ContextMenuQt.cpp \ + platform/qt/ContextMenuItemQt.cpp \ + platform/qt/ContextMenuClientQt.cpp \ + platform/qt/PasteBoardQt.cpp \ + platform/ContextMenu.cpp \ + platform/network/FormData.cpp \ + platform/network/ResourceHandle.cpp \ + platform/network/ResourceRequest.cpp \ + platform/network/ResourceResponse.cpp \ + platform/network/qt/ResourceHandleQt.cpp \ + platform/network/HTTPParsers.cpp \ + platform/network/qt/ResourceHandleManager.cpp \ + platform/graphics/qt/FloatPointQt.cpp \ + platform/graphics/qt/FloatRectQt.cpp \ + platform/graphics/qt/GraphicsContextQt.cpp \ + platform/graphics/qt/IntPointQt.cpp \ + platform/graphics/qt/IntRectQt.cpp \ + platform/graphics/qt/IntSizeQt.cpp \ + platform/graphics/qt/PathQt.cpp \ + platform/graphics/qt/ImageQt.cpp \ + platform/graphics/qt/ImageSourceQt.cpp \ + platform/graphics/qt/ImageDecoderQt.cpp \ + platform/qt/FontCacheQt.cpp \ + platform/qt/FontQt.cpp \ +# platform/qt/LineEditQt.cpp \ + platform/qt/ScreenQt.cpp \ +# platform/qt/FileButtonQt.cpp \ + platform/qt/FrameQt.cpp \ + platform/qt/FrameQtClient.cpp \ +# platform/qt/TextEditQt.cpp \ + platform/qt/ScrollViewCanvasQt.cpp \ + platform/qt/PlatformMouseEventQt.cpp \ + platform/qt/PlatformKeyboardEventQt.cpp \ + platform/qt/TextBoundaries.cpp \ + platform/graphics/GraphicsTypes.cpp \ + platform/graphics/GraphicsContext.cpp \ + platform/FontFamily.cpp \ + platform/Timer.cpp \ + platform/FontCache.cpp \ + platform/FontFallbackList.cpp \ + platform/RegularExpression.cpp \ + platform/GlyphMap.cpp \ + platform/Font.cpp \ + platform/FontData.cpp \ + rendering/HitTestResult.cpp \ + rendering/RenderCounter.cpp \ + rendering/CounterNode.cpp \ + rendering/CounterResetNode.cpp \ + rendering/RenderListBox.cpp \ + rendering/RenderReplaced.cpp \ + rendering/RenderPartObject.cpp \ + rendering/RenderView.cpp \ + rendering/RenderMenuList.cpp \ + rendering/InlineFlowBox.cpp \ + rendering/RenderListMarker.cpp \ + rendering/RenderImage.cpp \ + rendering/RenderTheme.cpp \ + rendering/RenderLayer.cpp \ + rendering/RenderTableCell.cpp \ + rendering/RenderListItem.cpp \ + rendering/AutoTableLayout.cpp \ + rendering/RenderArena.cpp \ + rendering/RenderWidget.cpp \ + rendering/break_lines.cpp \ + rendering/RenderStyle.cpp \ + rendering/RenderContainer.cpp \ + rendering/EllipsisBox.cpp \ + rendering/RenderFieldset.cpp \ + rendering/RenderFrameSet.cpp \ + rendering/RenderTable.cpp \ + rendering/RenderPart.cpp \ + rendering/RenderBlock.cpp \ + rendering/InlineBox.cpp \ + rendering/RenderText.cpp \ + rendering/RenderFrame.cpp \ + rendering/RenderLineEdit.cpp \ + rendering/FixedTableLayout.cpp \ + rendering/RenderTableCol.cpp \ + rendering/RenderObject.cpp \ + rendering/RenderTreeAsText.cpp \ + rendering/SVGRenderTreeAsText.cpp \ + rendering/RootInlineBox.cpp \ + rendering/RenderFormElement.cpp \ + rendering/RenderBox.cpp \ + rendering/RenderButton.cpp \ + rendering/RenderTableSection.cpp \ + rendering/ListMarkerBox.cpp \ + rendering/RenderLabel.cpp \ + rendering/RenderTableRow.cpp \ + rendering/RenderInline.cpp \ + rendering/RenderFileUploadControl.cpp \ + rendering/RenderHTMLCanvas.cpp \ + rendering/bidi.cpp \ + rendering/RenderFlexibleBox.cpp \ + rendering/RenderApplet.cpp \ + rendering/RenderLegend.cpp \ + rendering/RenderTextControl.cpp \ + rendering/RenderTextFragment.cpp \ + rendering/RenderBR.cpp \ + rendering/InlineTextBox.cpp \ + rendering/RenderFlow.cpp \ + rendering/RenderSlider.cpp + +contains(DEFINES, XPATH_SUPPORT=1) { + FEATURE_DEFINES_JAVASCRIPT += XPATH_SUPPORT + + # TODO: convert to generator + !exists(xml/XPathGrammar.cpp) { + message("generating xpath grammar") + !system( bison -d -p xpathyy xml/XPathGrammar.y ): error("error executing bison") + !system( mv XPathGrammar.tab.c xml/XPathGrammar.cpp ): error("error renaming XPathGrammar.cpp") + !system( mv XPathGrammar.tab.h xml/XPathGrammar.h ): error("error renaming XPathGrammar.h") + } + + IDL_BINDINGS += \ + xpath/XPathNSResolver.idl \ + xpath/XPathExpression.idl \ + xpath/XPathResult.idl \ + xpath/XPathEvaluator.idl + + SOURCES += xml/XPathGrammar.cpp +} + +contains(DEFINES, XSLT_SUPPORT=1) { + FEATURE_DEFINES_JAVASCRIPT += XSLT_SUPPORT +} + +contains(DEFINES, XBL_SUPPORT=1) { + FEATURE_DEFINES_JAVASCRIPT += XBL_SUPPORT +} + +contains(DEFINES, SVG_SUPPORT=1) { + FEATURE_DEFINES_JAVASCRIPT += SVG_SUPPORT + + SVG_NAMES = $$PWD/ksvg2/svg/svgtags.in + + XML_NAMES = $$PWD/xml/xmlattrs.in + + XLINK_NAMES = $$PWD/ksvg2/misc/xlinkattrs.in + + IDL_BINDINGS += ksvg2/svg/SVGAElement.idl \ + ksvg2/svg/SVGAngle.idl \ + ksvg2/svg/SVGAnimateColorElement.idl \ + ksvg2/svg/SVGAnimateElement.idl \ + ksvg2/svg/SVGAnimateTransformElement.idl \ + ksvg2/svg/SVGAnimatedAngle.idl \ + ksvg2/svg/SVGAnimatedBoolean.idl \ + ksvg2/svg/SVGAnimatedEnumeration.idl \ + ksvg2/svg/SVGAnimatedInteger.idl \ + ksvg2/svg/SVGAnimatedLength.idl \ + ksvg2/svg/SVGAnimatedLengthList.idl \ + ksvg2/svg/SVGAnimatedNumber.idl \ + ksvg2/svg/SVGAnimatedNumberList.idl \ + ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl \ + ksvg2/svg/SVGAnimatedRect.idl \ + ksvg2/svg/SVGAnimatedString.idl \ + ksvg2/svg/SVGAnimatedTransformList.idl \ + ksvg2/svg/SVGAnimationElement.idl \ + ksvg2/svg/SVGCircleElement.idl \ + ksvg2/svg/SVGClipPathElement.idl \ + ksvg2/svg/SVGColor.idl \ + ksvg2/svg/SVGComponentTransferFunctionElement.idl \ + ksvg2/svg/SVGCursorElement.idl \ + ksvg2/svg/SVGDefsElement.idl \ + ksvg2/svg/SVGDescElement.idl \ + ksvg2/svg/SVGDocument.idl \ + ksvg2/svg/SVGElement.idl \ + ksvg2/svg/SVGEllipseElement.idl \ + ksvg2/svg/SVGFEBlendElement.idl \ + ksvg2/svg/SVGFEColorMatrixElement.idl \ + ksvg2/svg/SVGFEComponentTransferElement.idl \ + ksvg2/svg/SVGFECompositeElement.idl \ + ksvg2/svg/SVGFEDiffuseLightingElement.idl \ + ksvg2/svg/SVGFEDisplacementMapElement.idl \ + ksvg2/svg/SVGFEDistantLightElement.idl \ + ksvg2/svg/SVGFEFloodElement.idl \ + ksvg2/svg/SVGFEFuncAElement.idl \ + ksvg2/svg/SVGFEFuncBElement.idl \ + ksvg2/svg/SVGFEFuncGElement.idl \ + ksvg2/svg/SVGFEFuncRElement.idl \ + ksvg2/svg/SVGFEGaussianBlurElement.idl \ + ksvg2/svg/SVGFEImageElement.idl \ + ksvg2/svg/SVGFEMergeElement.idl \ + ksvg2/svg/SVGFEMergeNodeElement.idl \ + ksvg2/svg/SVGFEOffsetElement.idl \ + ksvg2/svg/SVGFEPointLightElement.idl \ + ksvg2/svg/SVGFESpecularLightingElement.idl \ + ksvg2/svg/SVGFESpotLightElement.idl \ + ksvg2/svg/SVGFETileElement.idl \ + ksvg2/svg/SVGFETurbulenceElement.idl \ + ksvg2/svg/SVGFilterElement.idl \ + ksvg2/svg/SVGForeignObjectElement.idl \ + ksvg2/svg/SVGGElement.idl \ + ksvg2/svg/SVGGradientElement.idl \ + ksvg2/svg/SVGImageElement.idl \ + ksvg2/svg/SVGLength.idl \ + ksvg2/svg/SVGLengthList.idl \ + ksvg2/svg/SVGLineElement.idl \ + ksvg2/svg/SVGLinearGradientElement.idl \ + ksvg2/svg/SVGMaskElement.idl \ + ksvg2/svg/SVGMarkerElement.idl \ + ksvg2/svg/SVGMatrix.idl \ + ksvg2/svg/SVGMetadataElement.idl \ + ksvg2/svg/SVGNumberList.idl \ + ksvg2/svg/SVGPaint.idl \ + ksvg2/svg/SVGPathElement.idl \ + ksvg2/svg/SVGPathSeg.idl \ + ksvg2/svg/SVGPathSegArcAbs.idl \ + ksvg2/svg/SVGPathSegArcRel.idl \ + ksvg2/svg/SVGPathSegClosePath.idl \ + ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl \ + ksvg2/svg/SVGPathSegCurvetoCubicRel.idl \ + ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl \ + ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl \ + ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl \ + ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl \ + ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl \ + ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl \ + ksvg2/svg/SVGPathSegLinetoAbs.idl \ + ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl \ + ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl \ + ksvg2/svg/SVGPathSegLinetoRel.idl \ + ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl \ + ksvg2/svg/SVGPathSegLinetoVerticalRel.idl \ + ksvg2/svg/SVGPathSegList.idl \ + ksvg2/svg/SVGPathSegMovetoAbs.idl \ + ksvg2/svg/SVGPathSegMovetoRel.idl \ + ksvg2/svg/SVGPatternElement.idl \ + ksvg2/svg/SVGPointList.idl \ + ksvg2/svg/SVGPolygonElement.idl \ + ksvg2/svg/SVGPolylineElement.idl \ + ksvg2/svg/SVGPreserveAspectRatio.idl \ + ksvg2/svg/SVGRadialGradientElement.idl \ + ksvg2/svg/SVGRectElement.idl \ + ksvg2/svg/SVGRenderingIntent.idl \ + ksvg2/svg/SVGSetElement.idl \ + ksvg2/svg/SVGScriptElement.idl \ + ksvg2/svg/SVGStyleElement.idl \ + ksvg2/svg/SVGSwitchElement.idl \ + ksvg2/svg/SVGStopElement.idl \ + ksvg2/svg/SVGStringList.idl \ + ksvg2/svg/SVGSymbolElement.idl \ + ksvg2/svg/SVGSVGElement.idl \ + ksvg2/svg/SVGTRefElement.idl \ + ksvg2/svg/SVGTSpanElement.idl \ + ksvg2/svg/SVGTextElement.idl \ + ksvg2/svg/SVGTextContentElement.idl \ + ksvg2/svg/SVGTextPositioningElement.idl \ + ksvg2/svg/SVGTitleElement.idl \ + ksvg2/svg/SVGTransform.idl \ + ksvg2/svg/SVGTransformList.idl \ + ksvg2/svg/SVGUnitTypes.idl \ + ksvg2/svg/SVGUseElement.idl \ + ksvg2/svg/SVGViewElement.idl \ + ksvg2/events/SVGZoomEvent.idl + + LUT_TABLE_FILES += \ + bindings/js/JSSVGNumber.cpp \ + bindings/js/JSSVGPoint.cpp \ + bindings/js/JSSVGRect.cpp + + SOURCES += \ +# TODO: this-one-is-not-auto-added! FIXME! tmp/SVGElementFactory.cpp \ + bindings/js/JSSVGPoint.cpp \ + bindings/js/JSSVGRect.cpp \ + bindings/js/JSSVGNumber.cpp \ + bindings/js/JSSVGElementWrapperFactory.cpp \ + ksvg2/css/SVGCSSParser.cpp \ + ksvg2/css/SVGRenderStyleDefs.cpp \ + ksvg2/css/SVGRenderStyle.cpp \ + ksvg2/css/SVGCSSStyleSelector.cpp \ + ksvg2/svg/SVGHelper.cpp \ + ksvg2/svg/SVGFEFuncBElement.cpp \ + ksvg2/svg/SVGPathSeg.cpp \ + ksvg2/svg/SVGColor.cpp \ + ksvg2/svg/SVGSwitchElement.cpp \ + ksvg2/svg/SVGFETileElement.cpp \ + ksvg2/svg/SVGDOMImplementation.cpp \ + ksvg2/svg/SVGMarkerElement.cpp \ + ksvg2/svg/SVGFECompositeElement.cpp \ + ksvg2/svg/SVGImageElement.cpp \ + ksvg2/svg/SVGAnimateElement.cpp \ + ksvg2/svg/SVGURIReference.cpp \ + ksvg2/svg/SVGLength.cpp \ + ksvg2/svg/SVGPathSegCurvetoCubic.cpp \ + ksvg2/svg/SVGExternalResourcesRequired.cpp \ + ksvg2/svg/SVGPolylineElement.cpp \ + ksvg2/svg/SVGFEOffsetElement.cpp \ + ksvg2/svg/SVGFETurbulenceElement.cpp \ + ksvg2/svg/SVGZoomAndPan.cpp \ + ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp \ + ksvg2/svg/SVGStyledLocatableElement.cpp \ + ksvg2/svg/SVGLineElement.cpp \ + ksvg2/svg/SVGTransform.cpp \ + ksvg2/svg/SVGPathSegLinetoVertical.cpp \ + ksvg2/svg/SVGFitToViewBox.cpp \ + ksvg2/svg/SVGRadialGradientElement.cpp \ + ksvg2/svg/SVGMatrix.cpp \ + ksvg2/svg/SVGMaskElement.cpp \ + ksvg2/svg/SVGTitleElement.cpp \ + ksvg2/svg/SVGTRefElement.cpp \ + ksvg2/svg/SVGLangSpace.cpp \ + ksvg2/svg/SVGTransformList.cpp \ + ksvg2/svg/SVGStylable.cpp \ + ksvg2/svg/SVGPolyElement.cpp \ + ksvg2/svg/SVGPolygonElement.cpp \ +# ksvg2/svg/SVGElementInstanceList.cpp \ + ksvg2/svg/SVGTSpanElement.cpp \ + ksvg2/svg/SVGFEFuncRElement.cpp \ + ksvg2/svg/SVGFEFloodElement.cpp \ + ksvg2/svg/SVGPointList.cpp \ + ksvg2/svg/SVGAnimatedPoints.cpp \ + ksvg2/svg/SVGAnimatedPathData.cpp \ + ksvg2/svg/SVGUseElement.cpp \ + ksvg2/svg/SVGNumberList.cpp \ + ksvg2/svg/SVGFEPointLightElement.cpp \ + ksvg2/svg/SVGPathSegLineto.cpp \ + ksvg2/svg/SVGRectElement.cpp \ + ksvg2/svg/SVGTextContentElement.cpp \ + ksvg2/svg/SVGFESpotLightElement.cpp \ + ksvg2/svg/SVGLocatable.cpp \ + ksvg2/svg/SVGEllipseElement.cpp \ + ksvg2/svg/SVGPathElement.cpp \ + ksvg2/svg/SVGStyledElement.cpp \ + ksvg2/svg/SVGFEMergeNodeElement.cpp \ + ksvg2/svg/svgpathparser.cpp \ + ksvg2/svg/SVGFEGaussianBlurElement.cpp \ + ksvg2/svg/SVGLinearGradientElement.cpp \ + ksvg2/svg/SVGFEDisplacementMapElement.cpp \ + ksvg2/svg/SVGFEImageElement.cpp \ + ksvg2/svg/SVGFEDiffuseLightingElement.cpp \ + ksvg2/svg/SVGSymbolElement.cpp \ + ksvg2/svg/SVGForeignObjectElement.cpp \ + ksvg2/svg/SVGAngle.cpp \ + ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp \ + ksvg2/svg/SVGSVGElement.cpp \ + ksvg2/svg/SVGFESpecularLightingElement.cpp \ + ksvg2/svg/SVGAnimateColorElement.cpp \ + ksvg2/svg/SVGGElement.cpp \ + ksvg2/svg/SVGFEFuncGElement.cpp \ + ksvg2/svg/SVGFEComponentTransferElement.cpp \ + ksvg2/svg/SVGSetElement.cpp \ + ksvg2/svg/SVGFEBlendElement.cpp \ + ksvg2/svg/SVGFEMergeElement.cpp \ + ksvg2/svg/SVGCursorElement.cpp \ + ksvg2/svg/SVGStringList.cpp \ +# ksvg2/svg/SVGElementInstance.cpp \ + ksvg2/svg/SVGFilterElement.cpp \ + ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp \ + ksvg2/svg/SVGPatternElement.cpp \ + ksvg2/svg/SVGPathSegList.cpp \ + ksvg2/svg/SVGStyleElement.cpp \ + ksvg2/svg/SVGPaint.cpp \ + ksvg2/svg/SVGFEDistantLightElement.cpp \ + ksvg2/svg/SVGTextPositioningElement.cpp \ + ksvg2/svg/SVGPreserveAspectRatio.cpp \ + ksvg2/svg/SVGScriptElement.cpp \ + ksvg2/svg/SVGComponentTransferFunctionElement.cpp \ + ksvg2/svg/SVGTextElement.cpp \ + ksvg2/svg/SVGViewElement.cpp \ + ksvg2/svg/SVGLengthList.cpp \ + ksvg2/svg/SVGStyledTransformableElement.cpp \ + ksvg2/svg/SVGPathSegArc.cpp \ + ksvg2/svg/SVGDescElement.cpp \ + ksvg2/svg/SVGTransformable.cpp \ + ksvg2/svg/SVGDocument.cpp \ + ksvg2/svg/SVGClipPathElement.cpp \ + ksvg2/svg/SVGPathSegMoveto.cpp \ + ksvg2/svg/SVGAElement.cpp \ + ksvg2/svg/SVGCircleElement.cpp \ + ksvg2/svg/SVGFEFuncAElement.cpp \ + ksvg2/svg/SVGTests.cpp \ + ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp \ + ksvg2/svg/SVGElement.cpp \ + ksvg2/svg/SVGAnimateTransformElement.cpp \ + ksvg2/svg/SVGFEColorMatrixElement.cpp \ + ksvg2/svg/SVGGradientElement.cpp \ + ksvg2/svg/SVGAnimationElement.cpp \ + ksvg2/svg/SVGFELightElement.cpp \ + ksvg2/svg/SVGPathSegClosePath.cpp \ + ksvg2/svg/SVGPathSegLinetoHorizontal.cpp \ + ksvg2/svg/SVGStopElement.cpp \ + ksvg2/svg/SVGDefsElement.cpp \ + ksvg2/svg/SVGMetadataElement.cpp \ + ksvg2/misc/SVGImageLoader.cpp \ + ksvg2/misc/SVGDocumentExtensions.cpp \ + ksvg2/misc/KSVGTimeScheduler.cpp \ + ksvg2/misc/KCanvasRenderingStyle.cpp \ + ksvg2/events/JSSVGLazyEventListener.cpp \ + ksvg2/events/SVGZoomEvent.cpp \ + kcanvas/KCanvasFilters.cpp \ + kcanvas/device/KRenderingPaintServerGradient.cpp \ + kcanvas/device/KRenderingPaintServerSolid.cpp \ + kcanvas/device/KRenderingPaintServerPattern.cpp \ + kcanvas/device/KRenderingDevice.cpp \ + kcanvas/device/qt/RenderPathQt.cpp \ + kcanvas/device/qt/KRenderingDeviceQt.cpp \ + kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp \ + kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp \ + kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp \ + kcanvas/device/qt/KRenderingPaintServerQt.cpp \ +# kcanvas/device/qt/KCanvasFilterQt.cpp \ +# kcanvas/device/qt/KCanvasImageItemQt.cpp \ + platform/graphics/svg/SVGResource.cpp \ + platform/graphics/svg/SVGResourceClipper.cpp \ + platform/graphics/svg/SVGResourceMasker.cpp \ + platform/graphics/svg/SVGResourceMarker.cpp \ + platform/graphics/svg/qt/SVGResourceClipperQt.cpp \ + platform/graphics/svg/qt/SVGResourceImageQt.cpp \ + platform/graphics/svg/qt/SVGResourceMaskerQt.cpp \ + rendering/RenderForeignObject.cpp \ + rendering/RenderPath.cpp \ + rendering/RenderSVGContainer.cpp \ + rendering/RenderSVGImage.cpp \ + rendering/RenderSVGInline.cpp \ + rendering/RenderSVGInlineText.cpp \ + rendering/RenderSVGText.cpp \ + rendering/RenderSVGTSpan.cpp \ + rendering/SVGInlineFlowBox.cpp \ + rendering/SVGRootInlineBox.cpp + + # GENERATOR 5-B: + svgnames_a.output = tmp/SVGNames.cpp + svgnames_a.commands = perl $$PWD/ksvg2/scripts/make_names.pl --tags $$PWD/ksvg2/svg/svgtags.in --attrs $$PWD/ksvg2/svg/svgattrs.in --namespace SVG --cppNamespace WebCore --namespaceURI 'http://www.w3.org/2000/svg' --factory --attrsNullNamespace --output tmp + svgnames_a.input = SVG_NAMES + svgnames_a.dependency_type = TYPE_C + svgnames_a.CONFIG = target_predeps + svgnames_a.variable_out = GENERATED_SOURCES + QMAKE_EXTRA_COMPILERS += svgnames_a + svgnames_b.output = tmp/SVGElementFactory.cpp + svgnames_b.commands = @echo -n '' + svgnames_b.input = SVG_NAMES + svgnames_b.depends = tmp/SVGNames.cpp + svgnames_b.CONFIG = target_predeps + svgnames_b.variable_out = GENERATED_SOURCES + QMAKE_EXTRA_COMPILERS += svgnames_b + + # GENERATOR 5-C: + xlinknames.output = tmp/XLinkNames.cpp + xlinknames.commands = perl $$PWD/ksvg2/scripts/make_names.pl --attrs $$PWD/ksvg2/misc/xlinkattrs.in --namespace XLink --cppNamespace WebCore --namespaceURI 'http://www.w3.org/1999/xlink' --output tmp + xlinknames.input = XLINK_NAMES + xlinknames.dependency_type = TYPE_C + xlinknames.CONFIG = target_predeps + xlinknames.variable_out = GENERATED_SOURCES + QMAKE_EXTRA_COMPILERS += xlinknames + + # GENERATOR 5-D: + xmlnames.output = tmp/XMLNames.cpp + xmlnames.commands = perl $$PWD/ksvg2/scripts/make_names.pl --attrs $$PWD/xml/xmlattrs.in --namespace XML --cppNamespace WebCore --namespaceURI 'http://www.w3.org/XML/1998/namespace' --output tmp + xmlnames.input = XML_NAMES + xmlnames.dependency_type = TYPE_C + xmlnames.CONFIG = target_predeps + xmlnames.variable_out = GENERATED_SOURCES + QMAKE_EXTRA_COMPILERS += xmlnames +} + + +# GENERATOR 1: IDL compiler +idl.output = tmp/JS${QMAKE_FILE_BASE}.cpp +idl.variable_out = GENERATED_SOURCES +idl.input = IDL_BINDINGS +idl.commands = perl -I$$PWD/bindings/scripts $$PWD/bindings/scripts/generate-bindings.pl --defines \"$${FEATURE_DEFINES_JAVASCRIPT}\" --generator JS --include $$PWD/dom --include $$PWD/html --include $$PWD/xml --include $$PWD/ksvg2/svg --outputdir tmp ${QMAKE_FILE_NAME} +idl.CONFIG += target_predeps +QMAKE_EXTRA_COMPILERS += idl + +# GENERATOR 2-A: LUT creator +lut.output = tmp/${QMAKE_FILE_BASE}.lut.h +lut.commands = perl $$PWD/../JavaScriptCore/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} +lut.depend = ${QMAKE_FILE_NAME} +lut.input = LUT_FILES +lut.CONFIG += no_link +QMAKE_EXTRA_COMPILERS += lut + +# GENERATOR 2-B: like JavaScriptCore/LUT Generator, but rename output +luttable.output = tmp/${QMAKE_FILE_BASE}Table.cpp +luttable.commands = perl $$PWD/../JavaScriptCore/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} +luttable.depend = ${QMAKE_FILE_NAME} +luttable.input = LUT_TABLE_FILES +luttable.CONFIG += no_link +luttable.dependency_type = TYPE_C +QMAKE_EXTRA_COMPILERS += luttable + +# GENERATOR 3: tokenizer (flex) +tokenizer.output = tmp/${QMAKE_FILE_BASE}.cpp +tokenizer.commands = flex -t < ${QMAKE_FILE_NAME} | perl $$PWD/css/maketokenizer > ${QMAKE_FILE_OUT} +tokenizer.dependency_Type = TYPE_C +tokenizer.input = TOKENIZER +tokenizer.CONFIG += target_predeps no_link +QMAKE_EXTRA_COMPILERS += tokenizer + +# GENERATOR 4: CSS grammar +cssbison.output = tmp/${QMAKE_FILE_BASE}.cpp +macx:cssbison.commands = bison -d -p cssyy ${QMAKE_FILE_NAME} && mv css/${QMAKE_FILE_BASE}.tab.c tmp/${QMAKE_FILE_BASE}.cpp && mv css/${QMAKE_FILE_BASE}.tab.h tmp/${QMAKE_FILE_BASE}.h +!macx:cssbison.commands = bison -d -p cssyy ${QMAKE_FILE_NAME} && mv ${QMAKE_FILE_BASE}.tab.c tmp/${QMAKE_FILE_BASE}.cpp && mv ${QMAKE_FILE_BASE}.tab.h tmp/${QMAKE_FILE_BASE}.h +cssbison.depend = ${QMAKE_FILE_NAME} +cssbison.input = CSSBISON +cssbison.CONFIG = target_predeps +cssbison.dependency_type = TYPE_C +cssbison.variable_out = GENERATED_SOURCES +QMAKE_EXTRA_COMPILERS += cssbison +#PRE_TARGETDEPS += tmp/CSSGrammar.cpp + +# GENERATOR 5-A: +htmlnames.output = tmp/HTMLNames.cpp +htmlnames.commands = perl $$PWD/ksvg2/scripts/make_names.pl --tags $$PWD/html/HTMLTagNames.in --attrs $$PWD/html/HTMLAttributeNames.in --namespace HTML --namespacePrefix xhtml --cppNamespace WebCore --namespaceURI 'http://www.w3.org/1999/xhtml' --attrsNullNamespace --output tmp +htmlnames.input = HTML_NAMES +htmlnames.dependency_type = TYPE_C +htmlnames.CONFIG = target_predeps +htmlnames.variable_out = GENERATED_SOURCES +QMAKE_EXTRA_COMPILERS += htmlnames + +# GENERATOR 6-A: +cssprops.output = tmp/CSSPropertyNames.c +cssprops.input = WALDOCSSPROPS +cssprops.commands = cp ${QMAKE_FILE_NAME} tmp && cd tmp && sh $$PWD/css/makeprop +cssprops.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += cssprops + +# GENERATOR 6-B: +cssvalues.output = tmp/CSSValueKeywords.c +cssvalues.input = WALDOCSSVALUES +cssvalues.commands = cp ${QMAKE_FILE_NAME} tmp && cd tmp && sh $$PWD/css/makevalues +cssvalues.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += cssvalues + +# GENERATOR 7-A: +svgcssproperties.output = tmp/ksvgcssproperties.h +svgcssproperties.input = SVGCSSPROPERTIES +svgcssproperties.commands = cp $$PWD/ksvg2/css/CSSPropertyNames.in tmp/ksvgcssproperties.in && cd tmp && perl $$PWD/ksvg2/scripts/cssmakeprops -n SVG -f ksvgcssproperties.in +svgcssproperties.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += svgcssproperties + +# GENERATOR 7-B: +svgcssvalues.output = tmp/ksvgcssvalues.h +svgcssvalues.input = SVGCSSVALUES +svgcssvalues.commands = perl -ne \'print lc\' $$PWD/ksvg2/css/CSSValueKeywords.in > tmp/ksvgcssvalues.in && cd tmp && perl $$PWD/ksvg2/scripts/cssmakevalues -n SVG -f ksvgcssvalues.in +svgcssvalues.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += svgcssvalues + +# GENERATOR 8-A: +entities.output = tmp/HTMLEntityNames.c +entities.commands = gperf -a -L ANSI-C -C -G -c -o -t -k '\*' -N findEntity -D -s 2 < $$PWD/html/HTMLEntityNames.gperf > tmp/HTMLEntityNames.c +entities.input = ENTITIES_GPERF +entities.dependency_type = TYPE_C +entities.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += entities + +# PRE-GENERATOR 8-B: +doctypestrings.target = $$OUTPUT_DIR/WebCore/tmp/DocTypeStrings.cpp +doctypestrings.commands = echo \"$${LITERAL_HASH}include \" > $$doctypestrings.target && gperf -CEot -L ANSI-C -k \'*\' -N findDoctypeEntry -F ,PubIDInfo::eAlmostStandards,PubIDInfo::eAlmostStandards < $$PWD/html/DocTypeStrings.gperf >> $$doctypestrings.target +QMAKE_EXTRA_TARGETS += doctypestrings +PRE_TARGETDEPS += $$OUTPUT_DIR/WebCore/tmp/DocTypeStrings.cpp + +# GENERATOR 8-C: +colordata.output = tmp/ColorData.c +colordata.commands = echo \"$${LITERAL_HASH}include \" > ${QMAKE_FILE_OUT} && gperf -CDEot -L ANSI-C -k \'*\' -N findColor -D -s 2 < ${QMAKE_FILE_NAME} >> ${QMAKE_FILE_OUT} +colordata.input = COLORDAT_GPERF +colordata.CONFIG = target_predeps no_link +QMAKE_EXTRA_COMPILERS += colordata + +# GENERATOR 9: +stylesheets.output = tmp/UserAgentStyleSheetsData.cpp +stylesheets.commands = perl $$PWD/css/make-css-file-arrays.pl tmp/UserAgentStyleSheets.h tmp/UserAgentStyleSheetsData.cpp $$PWD/css/html4.css $$PWD/css/quirks.css $$PWD/css/svg.css $$PWD/css/view-source.css +stylesheets.input = STYLESHEETS_EMBED +stylesheets.CONFIG = target_predeps +stylesheets.variable_out = GENERATED_SOURCES +QMAKE_EXTRA_COMPILERS += stylesheets + +# GENERATOR M +manual_moc.output = tmp/${QMAKE_FILE_BASE}.moc +manual_moc.commands = $$QMAKE_MOC ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_OUT} +manual_moc.input = MANUALMOC +manual_moc.CONFIG += target_predeps no_link +QMAKE_EXTRA_COMPILERS += manual_moc diff --git a/WebCore/platform/graphics/qt/GraphicsContextQt.cpp b/WebCore/platform/graphics/qt/GraphicsContextQt.cpp index 921e85a352df..1fa1d32c66b1 100644 --- a/WebCore/platform/graphics/qt/GraphicsContextQt.cpp +++ b/WebCore/platform/graphics/qt/GraphicsContextQt.cpp @@ -38,6 +38,7 @@ #include "GraphicsContext.h" #include "Font.h" #include "Pen.h" +#include "SVGResourceImage.h" #include #include @@ -850,11 +851,13 @@ void GraphicsContext::setPlatformFillColor(const Color& color) m_data->p().setBrush(QBrush(color)); } +#ifdef SVG_SUPPORT GraphicsContext* contextForImage(SVGResourceImage*) { // FIXME! return 0; } +#endif } // vim: ts=4 sw=4 et diff --git a/WebKit.pri b/WebKit.pri new file mode 100644 index 000000000000..96a8aac0b123 --- /dev/null +++ b/WebKit.pri @@ -0,0 +1,29 @@ +# Include file to make it easy to include WebKit into Qt projects + +INCLUDEPATH += $$PWD/JavaScriptCore \ + $$PWD/WebCore \ + $$PWD/WebCore/platform \ + $$PWD/WebCore/platform/qt \ + $$PWD/WebCore/platform/network \ + $$PWD/WebCore/platform/graphics \ + $$PWD/WebCore/editing \ + $$PWD/WebCore/page \ + $$PWD/WebCore/dom \ + $$PWD/WebCore/html \ + $$PWD/WebCore/rendering \ + $$PWD/WebCore/loader \ + $$PWD/WebCore/loader/qt \ + $$PWD/WebCore/css \ + $$PWD/WebCore/bridge + +DEFINES += BUILDING_QT__=1 + +isEmpty(OUTPUT_DIR):OUTPUT_DIR=$$PWD + +LIBS += -L$$OUTPUT_DIR/lib -lWebKitQt -lJavaScriptCore + +macx { + INCLUDEPATH += /opt/local/include /opt/local/include/libxml2 + INCLUDEPATH += /usr/include/libxml2 + LIBS += -L/opt/local/lib -lxml2 -lxslt +} diff --git a/WebKit.pro b/WebKit.pro new file mode 100644 index 000000000000..1960b2b35f4a --- /dev/null +++ b/WebKit.pro @@ -0,0 +1,7 @@ +TEMPLATE = subdirs +CONFIG += ordered +SUBDIRS = \ + JavaScriptCore \ + WebCore \ + WebKitQt/QtLauncher + diff --git a/WebKitQt/ChangeLog b/WebKitQt/ChangeLog index dbb3c201c99b..e8edf70fc2a1 100644 --- a/WebKitQt/ChangeLog +++ b/WebKitQt/ChangeLog @@ -1,3 +1,12 @@ +2006-12-09 Lars Knoll + + Reviewed by Zack + + Make it possible to build WebKit with qmake. + + * QtLauncher/QtLauncher.pro: Added. + * QtLauncher/main.cpp: + 2006-12-08 Zack Rusin Reviewed by Maciej. diff --git a/WebKitQt/QtLauncher/QtLauncher.pro b/WebKitQt/QtLauncher/QtLauncher.pro new file mode 100644 index 000000000000..9cc567a2b6c5 --- /dev/null +++ b/WebKitQt/QtLauncher/QtLauncher.pro @@ -0,0 +1,4 @@ +TEMPLATE = app +SOURCES += main.cpp + +include(../../WebKit.pri) diff --git a/WebKitQt/QtLauncher/main.cpp b/WebKitQt/QtLauncher/main.cpp index 0d49e1b23391..c8c7a8dc8813 100644 --- a/WebKitQt/QtLauncher/main.cpp +++ b/WebKitQt/QtLauncher/main.cpp @@ -31,6 +31,7 @@ #include #include +#include #if PLATFORM(KDE) #include #include -- 2.36.0