3cac2fd8968fb0dfe3f0bb5b76b734ecc3a1a0ac
[WebKit-https.git] / WebCore / WebCore.pro
1 # -*- Mode:makefile -*-
2 # WebCore - qmake build info
3 CONFIG += building-libs
4 # do not use implicit rules in nmake Makefiles to avoid the clash
5 # of API/Node.c and dom/Node.cpp
6 CONFIG += no_batch
7 include($$PWD/../WebKit.pri)
8 gtk-port:LIBS -= -lWebKitGtk
9
10 TEMPLATE = lib
11 qt-port:TARGET = QtWebKit
12 gtk-port:TARGET = WebKitGtk
13
14 CONFIG(QTDIR_build) {
15     GENERATED_SOURCES_DIR = $$PWD/generated
16     include($$QT_SOURCE_TREE/src/qbase.pri)
17     PRECOMPILED_HEADER = $$PWD/../WebKit/qt/WebKit_pch.h
18 }
19
20 isEmpty(GENERATED_SOURCES_DIR):GENERATED_SOURCES_DIR = tmp
21 GENERATED_SOURCES_DIR_SLASH = $$GENERATED_SOURCES_DIR/
22 win32-*: GENERATED_SOURCES_DIR_SLASH ~= s|/|\|
23
24 INCLUDEPATH += $$GENERATED_SOURCES_DIR
25
26 !CONFIG(QTDIR_build) {
27      OBJECTS_DIR = tmp
28      DESTDIR = $$OUTPUT_DIR/lib
29 }
30
31 DEPENDPATH += css dom loader editing history html \
32     loader page platform platform/graphics platform/network platform/text plugins rendering xml \
33     bindings/js
34
35 include($$OUTPUT_DIR/config.pri)
36
37 CONFIG -= warn_on
38 *-g++*:QMAKE_CXXFLAGS += -Wreturn-type -fno-strict-aliasing
39 #QMAKE_CXXFLAGS += -Wall -Wno-undef -Wno-unused-parameter
40
41 CONFIG(release):!CONFIG(QTDIR_build) {
42     contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
43     unix:contains(QT_CONFIG, reduce_relocations):CONFIG += bsymbolic_functions
44 }
45
46 linux-*: DEFINES += HAVE_STDINT_H
47 freebsd-*: DEFINES += HAVE_PTHREAD_NP_H
48
49 # PRE-BUILD: make the required config.h file
50 #config_h.target = config.h
51 #config_h.commands = cp config.h.qmake config.h
52 #config_h.depends = config.h.qmake
53 #QMAKE_EXTRA_TARGETS += config_h
54 #PRE_TARGETDEPS += config.h
55
56 DEFINES += BUILD_WEBKIT
57
58 win32-*: DEFINES += ENABLE_ICONDATABASE=0 ENABLE_DATABASE=0
59
60 # Pick up 3rdparty libraries from INCLUDE/LIB just like with MSVC
61 win32-g++ {
62     TMPPATH            = $$quote($$(INCLUDE))
63     QMAKE_INCDIR_POST += $$split(TMPPATH,";")
64     TMPPATH            = $$quote($$(LIB))
65     QMAKE_LIBDIR_POST += $$split(TMPPATH,";")
66 }
67
68 gtk-port: PKGCONFIG += gthread-2.0
69
70 # Optional components (look for defs in config.h and included files!)
71 !contains(DEFINES, ENABLE_DATABASE=.): DEFINES += ENABLE_DATABASE=1
72 !contains(DEFINES, ENABLE_ICONDATABASE=.): DEFINES += ENABLE_ICONDATABASE=1
73 !contains(DEFINES, ENABLE_XPATH=.): DEFINES += ENABLE_XPATH=1
74 gtk-port:!contains(DEFINES, ENABLE_XSLT=.): DEFINES += ENABLE_XSLT=1
75 #!contains(DEFINES, ENABLE_XBL=.): DEFINES += ENABLE_XBL=1
76 qt-port: !contains(DEFINES, ENABLE_SVG=.): DEFINES += ENABLE_SVG=1
77 gtk-port:DEFINES += ENABLE_SVG=0
78 DEFINES += ENABLE_VIDEO=0
79
80 DEFINES += WTF_CHANGES=1
81
82 #
83 # For builds inside Qt we interpret the output rule and the input of each extra compiler manually
84 # and add the resulting sources to the SOURCES variable, because the build inside Qt contains already
85 # all the generated files. We do not need to generate any extra compiler rules in that case.
86 #
87 # In addition this function adds a new target called 'generated_files' that allows manually calling
88 # all the extra compilers to generate all the necessary files for the build using 'make generated_files'
89 #
90 defineTest(addExtraCompiler) {
91     CONFIG(QTDIR_build) {
92         outputRule = $$eval($${1}.output)
93
94         input = $$eval($${1}.input)
95         input = $$eval($$input)
96
97         for(file,input) {
98             base = $$basename(file)
99             base ~= s/\..+//
100             newfile=$$replace(outputRule,\\$\\{QMAKE_FILE_BASE\\},$$base)
101             SOURCES += $$newfile
102         }
103
104         export(SOURCES)
105     } else {
106         QMAKE_EXTRA_COMPILERS += $$1
107         generated_files.depends += compiler_$${1}_make_all
108         export(QMAKE_EXTRA_COMPILERS)
109         export(generated_files.depends)
110     }
111     return(true)
112 }
113
114 include($$PWD/../JavaScriptCore/JavaScriptCore.pri)
115
116 #INCLUDEPATH += $$PWD/../JavaScriptCore
117 #LIBS += -L$$OUTPUT_DIR/lib -lJavaScriptCore
118
119 qt-port {
120 RESOURCES += $$PWD/../WebCore/page/inspector/WebKit.qrc
121 INCLUDEPATH += \
122                 $$PWD/platform/qt \
123                 $$PWD/platform/network/qt \
124                 $$PWD/platform/graphics/qt \
125                 $$PWD/svg/graphics/qt \
126                 $$PWD/loader/qt \
127                 $$PWD/page/qt \
128                 $$PWD/../WebKit/qt/WebCoreSupport \
129                 $$PWD/../WebKit/qt/Api
130
131 DEPENDPATH += editing/qt history/qt loader/qt page/qt \
132     platform/graphics/qt ../WebKit/qt/Api ../WebKit/qt/WebCoreSupport
133
134     DEFINES += WTF_USE_JAVASCRIPTCORE_BINDINGS=1
135 }
136
137 gtk-port {
138     x11:plugins {
139         DEFINES += XP_UNIX
140     }
141
142     INCLUDEPATH += \
143     $$PWD/platform/gtk \
144     $$PWD/platform/graphics/gtk \
145     $$PWD/platform/graphics/cairo \
146     $$PWD/svg/graphics/cairo \
147     $$PWD/platform/network/curl \
148     $$PWD/platform/image-decoders \
149     $$PWD/platform/image-decoders/bmp \
150     $$PWD/platform/image-decoders/gif \
151     $$PWD/platform/image-decoders/ico \
152     $$PWD/platform/image-decoders/jpeg \
153     $$PWD/platform/image-decoders/png \
154     $$PWD/platform/image-decoders/xbm \
155     $$PWD/loader/gtk \
156     $$PWD/page/gtk \
157     $$PWD/../WebKit/gtk/WebCoreSupport \
158     $$PWD/../WebKit/gtk/WebView
159
160     DEPENDPATH += \
161     platform/gtk \
162     platform/graphics/gtk \
163     platform/graphics/cairo \
164     svg/graphics/cairo \
165     platform/network/curl \
166     platform/image-decoders \
167     platform/image-decoders/bmp \
168     platform/image-decoders/gif \
169     platform/image-decoders/ico \
170     platform/image-decoders/jpeg \
171     platform/image-decoders/png \
172     platform/image-decoders/xbm \
173     loader/gtk \
174     page/gtk \
175     ../WebKit/gtk/WebCoreSupport \
176     ../WebKit/gtk/WebView
177 }
178
179 INCLUDEPATH +=  $$PWD \
180                 $$PWD/ForwardingHeaders \
181                 $$PWD/.. \
182                 $$PWD/../JavaScriptCore/kjs \
183                 $$PWD/../JavaScriptCore/bindings \
184                 $$PWD/../JavaScriptCore/wtf \
185                 $$PWD/platform \
186                 $$PWD/platform/network \
187                 $$PWD/platform/graphics \
188                 $$PWD/svg/graphics \
189                 $$PWD/svg/graphics/filters \
190                 $$PWD/platform/sql \
191                 $$PWD/platform/text \
192                 $$PWD/storage \
193                 $$PWD/loader $$PWD/loader/icon \
194                 $$PWD/css \
195                 $$PWD/dom \
196                 $$PWD/page \
197                 $$PWD/bridge \
198                 $$PWD/editing \
199                 $$PWD/rendering \
200                 $$PWD/history \
201                 $$PWD/xml \
202                 $$PWD/html \
203                 $$PWD/bindings/js \
204                 $$PWD/svg \
205                 $$PWD/platform/image-decoders \
206                 $$PWD/plugins
207
208 QT += network
209 lessThan(QT_MINOR_VERSION, 4): QT += xml
210
211 QMAKE_EXTRA_TARGETS += generated_files
212
213 FEATURE_DEFINES_JAVASCRIPT = LANGUAGE_JAVASCRIPT=1
214
215 TOKENIZER = $$PWD/css/tokenizer.flex
216
217 DOCTYPESTRINGS = $$PWD/html/DocTypeStrings.gperf
218
219 CSSBISON = $$PWD/css/CSSGrammar.y
220
221 HTML_NAMES = $$PWD/html/HTMLTagNames.in
222
223 XML_NAMES = $$PWD/xml/xmlattrs.in
224
225 ENTITIES_GPERF = $$PWD/html/HTMLEntityNames.gperf
226
227 COLORDAT_GPERF = $$PWD/platform/ColorData.gperf
228
229 WALDOCSSPROPS = $$PWD/css/CSSPropertyNames.in
230
231 WALDOCSSVALUES = $$PWD/css/CSSValueKeywords.in
232
233 SVGCSSPROPERTIES = $$PWD/css/SVGCSSPropertyNames.in
234
235 SVGCSSVALUES = $$PWD/css/SVGCSSValueKeywords.in
236
237 STYLESHEETS_EMBED = $$PWD/css/html4.css
238
239 LUT_FILES += \
240     bindings/js/JSEventTargetBase.cpp \
241     bindings/js/JSLocation.cpp \
242     bindings/js/JSXMLHttpRequest.cpp \
243     bindings/js/JSXSLTProcessor.cpp \
244     bindings/js/kjs_css.cpp \
245     bindings/js/kjs_events.cpp \
246     bindings/js/kjs_navigator.cpp \
247     bindings/js/kjs_window.cpp
248
249 LUT_TABLE_FILES += \
250     bindings/js/JSHTMLInputElementBase.cpp
251
252 IDL_BINDINGS += \
253     css/Counter.idl \
254     css/CSSCharsetRule.idl \
255     css/CSSFontFaceRule.idl \
256     css/CSSImportRule.idl \
257     css/CSSMediaRule.idl \
258     css/CSSPageRule.idl \
259     css/CSSPrimitiveValue.idl \
260     css/CSSRule.idl \
261     css/CSSRuleList.idl \
262     css/CSSStyleDeclaration.idl \
263     css/CSSStyleRule.idl \
264     css/CSSStyleSheet.idl \
265     css/CSSValue.idl \
266     css/CSSValueList.idl \
267     css/MediaList.idl \
268     css/Rect.idl \
269     css/StyleSheet.idl \
270     css/StyleSheetList.idl \
271     dom/Attr.idl \
272     dom/CharacterData.idl \
273     dom/CDATASection.idl \
274     dom/Comment.idl \
275     dom/DocumentFragment.idl \
276     dom/Document.idl \
277     dom/DocumentType.idl \
278     dom/DOMCoreException.idl \
279     dom/DOMImplementation.idl \
280     dom/Element.idl \
281     dom/Entity.idl \
282     dom/EntityReference.idl \
283     dom/Event.idl \
284     dom/EventException.idl \
285 #    dom/EventListener.idl \
286 #    dom/EventTarget.idl \
287     dom/KeyboardEvent.idl \
288     dom/MessageEvent.idl \
289     dom/MouseEvent.idl \
290     dom/MutationEvent.idl \
291     dom/NamedNodeMap.idl \
292     dom/Node.idl \
293     dom/NodeFilter.idl \
294     dom/NodeIterator.idl \
295     dom/NodeList.idl \
296     dom/Notation.idl \
297     dom/OverflowEvent.idl \
298     dom/ProcessingInstruction.idl \
299     dom/ProgressEvent.idl \
300     dom/RangeException.idl \
301     dom/Range.idl \
302     dom/Text.idl \
303     dom/TextEvent.idl \
304     dom/TreeWalker.idl \
305     dom/UIEvent.idl \
306     dom/WheelEvent.idl \
307     html/CanvasGradient.idl \
308     html/CanvasPattern.idl \
309     html/CanvasRenderingContext2D.idl \
310     html/HTMLAnchorElement.idl \
311     html/HTMLAppletElement.idl \
312     html/HTMLAreaElement.idl \
313     html/HTMLBaseElement.idl \
314     html/HTMLBaseFontElement.idl \
315     html/HTMLBlockquoteElement.idl \
316     html/HTMLBodyElement.idl \
317     html/HTMLBRElement.idl \
318     html/HTMLButtonElement.idl \
319     html/HTMLCanvasElement.idl \
320     html/HTMLCollection.idl \
321     html/HTMLDirectoryElement.idl \
322     html/HTMLDivElement.idl \
323     html/HTMLDListElement.idl \
324     html/HTMLDocument.idl \
325     html/HTMLElement.idl \
326     html/HTMLEmbedElement.idl \
327     html/HTMLFieldSetElement.idl \
328     html/HTMLFontElement.idl \
329     html/HTMLFormElement.idl \
330     html/HTMLFrameElement.idl \
331     html/HTMLFrameSetElement.idl \
332     html/HTMLHeadElement.idl \
333     html/HTMLHeadingElement.idl \
334     html/HTMLHRElement.idl \
335     html/HTMLHtmlElement.idl \
336     html/HTMLIFrameElement.idl \
337     html/HTMLImageElement.idl \
338     html/HTMLInputElement.idl \
339     html/HTMLIsIndexElement.idl \
340     html/HTMLLabelElement.idl \
341     html/HTMLLegendElement.idl \
342     html/HTMLLIElement.idl \
343     html/HTMLLinkElement.idl \
344     html/HTMLMapElement.idl \
345     html/HTMLMarqueeElement.idl \
346     html/HTMLMenuElement.idl \
347     html/HTMLMetaElement.idl \
348     html/HTMLModElement.idl \
349     html/HTMLObjectElement.idl \
350     html/HTMLOListElement.idl \
351     html/HTMLOptGroupElement.idl \
352     html/HTMLOptionElement.idl \
353     html/HTMLOptionsCollection.idl \
354     html/HTMLParagraphElement.idl \
355     html/HTMLParamElement.idl \
356     html/HTMLPreElement.idl \
357     html/HTMLQuoteElement.idl \
358     html/HTMLScriptElement.idl \
359     html/HTMLSelectElement.idl \
360     html/HTMLStyleElement.idl \
361     html/HTMLTableCaptionElement.idl \
362     html/HTMLTableCellElement.idl \
363     html/HTMLTableColElement.idl \
364     html/HTMLTableElement.idl \
365     html/HTMLTableRowElement.idl \
366     html/HTMLTableSectionElement.idl \
367     html/HTMLTextAreaElement.idl \
368     html/HTMLTitleElement.idl \
369     html/HTMLUListElement.idl \
370     page/BarInfo.idl \
371     page/Console.idl \
372     page/DOMSelection.idl \
373     page/DOMWindow.idl \
374     page/History.idl \
375     page/Screen.idl \
376     xml/DOMParser.idl \
377     xml/XMLHttpRequestException.idl \
378     xml/XMLSerializer.idl
379
380
381 SOURCES += \
382     bindings/js/GCController.cpp \
383     bindings/js/JSAttrCustom.cpp \
384     bindings/js/JSCanvasRenderingContext2DCustom.cpp \
385     bindings/js/JSCSSRuleCustom.cpp \
386     bindings/js/JSCSSStyleDeclarationCustom.cpp \
387     bindings/js/JSCSSValueCustom.cpp \
388     bindings/js/JSCustomVoidCallback.cpp \
389     bindings/js/JSCustomXPathNSResolver.cpp \
390     bindings/js/JSDocumentCustom.cpp \
391     bindings/js/JSDOMWindowCustom.cpp \
392     bindings/js/JSElementCustom.cpp \
393     bindings/js/JSEventCustom.cpp \
394     bindings/js/JSEventTargetBase.cpp \
395     bindings/js/JSEventTargetNode.cpp \
396     bindings/js/JSHistoryCustom.cpp \
397     bindings/js/JSHTMLAppletElementCustom.cpp \
398     bindings/js/JSHTMLCollectionCustom.cpp \
399     bindings/js/JSHTMLDocumentCustom.cpp \
400     bindings/js/JSHTMLElementCustom.cpp \
401     bindings/js/JSHTMLElementWrapperFactory.cpp \
402     bindings/js/JSHTMLEmbedElementCustom.cpp \
403     bindings/js/JSHTMLFormElementCustom.cpp \
404     bindings/js/JSHTMLFrameElementCustom.cpp \
405     bindings/js/JSHTMLFrameSetElementCustom.cpp \
406     bindings/js/JSHTMLIFrameElementCustom.cpp \
407     bindings/js/JSHTMLInputElementBase.cpp \
408     bindings/js/JSHTMLObjectElementCustom.cpp \
409     bindings/js/JSHTMLOptionElementConstructor.cpp \
410     bindings/js/JSHTMLOptionsCollectionCustom.cpp \
411     bindings/js/JSHTMLSelectElementCustom.cpp \
412     bindings/js/JSLocation.cpp \
413     bindings/js/JSNamedNodeMapCustom.cpp \
414     bindings/js/JSNamedNodesCollection.cpp  \
415     bindings/js/JSNodeCustom.cpp \
416     bindings/js/JSNodeFilterCondition.cpp \
417     bindings/js/JSNodeFilterCustom.cpp \
418     bindings/js/JSNodeIteratorCustom.cpp \
419     bindings/js/JSNodeListCustom.cpp \
420     bindings/js/JSStyleSheetCustom.cpp \
421     bindings/js/JSStyleSheetListCustom.cpp \
422     bindings/js/JSTreeWalkerCustom.cpp \
423     bindings/js/JSXMLHttpRequest.cpp \
424     bindings/js/JSXSLTProcessor.cpp \
425     bindings/js/kjs_binding.cpp \
426     bindings/js/kjs_css.cpp \
427     bindings/js/kjs_dom.cpp \
428     bindings/js/kjs_events.cpp \
429     bindings/js/kjs_html.cpp \
430     bindings/js/kjs_navigator.cpp \
431     bindings/js/kjs_proxy.cpp \
432     bindings/js/kjs_window.cpp \
433     bindings/js/PausedTimeouts.cpp \
434     bindings/js/ScheduledAction.cpp \
435     css/CSSBorderImageValue.cpp \
436     css/CSSCharsetRule.cpp \
437     css/CSSComputedStyleDeclaration.cpp \
438     css/CSSCursorImageValue.cpp \
439     css/CSSFontFace.cpp \
440     css/CSSFontFaceRule.cpp \
441     css/CSSFontFaceSrcValue.cpp \
442     css/CSSFontSelector.cpp \
443     css/CSSFontFaceSource.cpp \
444     css/CSSHelper.cpp \
445     css/CSSImageValue.cpp \
446     css/CSSImportRule.cpp \
447     css/CSSInheritedValue.cpp \
448     css/CSSInitialValue.cpp \
449     css/CSSMediaRule.cpp \
450     css/CSSMutableStyleDeclaration.cpp \
451     css/CSSPageRule.cpp \
452     css/CSSParser.cpp \
453     css/CSSPrimitiveValue.cpp \
454     css/CSSProperty.cpp \
455     css/CSSRule.cpp \
456     css/CSSRuleList.cpp \
457     css/CSSSelector.cpp \
458     css/CSSSegmentedFontFace.cpp \
459     css/CSSStyleDeclaration.cpp \
460     css/CSSStyleRule.cpp \
461     css/CSSStyleSelector.cpp \
462     css/CSSStyleSheet.cpp \
463     css/CSSTimingFunctionValue.cpp \
464     css/CSSTransformValue.cpp \
465     css/CSSUnicodeRangeValue.cpp \
466     css/CSSValueList.cpp \
467     css/FontFamilyValue.cpp \
468     css/FontValue.cpp \
469     css/MediaFeatureNames.cpp \
470     css/MediaList.cpp \
471     css/MediaQuery.cpp \
472     css/MediaQueryEvaluator.cpp \
473     css/MediaQueryExp.cpp \
474     css/ShadowValue.cpp \
475     css/StyleBase.cpp \
476     css/StyleList.cpp \
477     css/StyleSheet.cpp \
478     css/StyleSheetList.cpp \
479     dom/Attr.cpp \
480     dom/Attribute.cpp \
481     dom/BeforeTextInsertedEvent.cpp \
482     dom/BeforeUnloadEvent.cpp \
483     dom/CDATASection.cpp \
484     dom/CharacterData.cpp \
485     dom/ChildNodeList.cpp \
486     dom/ClassNames.cpp \
487     dom/ClassNodeList.cpp \
488     dom/Clipboard.cpp \
489     dom/ClipboardEvent.cpp \
490     dom/Comment.cpp \
491     dom/ContainerNode.cpp \
492     dom/CSSMappedAttributeDeclaration.cpp \
493     dom/Document.cpp \
494     dom/DocumentFragment.cpp \
495     dom/DocumentType.cpp \
496     dom/DOMImplementation.cpp \
497     dom/DynamicNodeList.cpp \
498     dom/EditingText.cpp \
499     dom/Element.cpp \
500     dom/Entity.cpp \
501     dom/EntityReference.cpp \
502     dom/Event.cpp \
503     dom/EventNames.cpp \
504     dom/EventTarget.cpp \
505     dom/EventTargetNode.cpp \
506     dom/ExceptionBase.cpp \
507     dom/ExceptionCode.cpp \
508     dom/KeyboardEvent.cpp \
509     dom/MappedAttribute.cpp \
510     dom/MessageEvent.cpp \
511     dom/MouseEvent.cpp \
512     dom/MouseRelatedEvent.cpp \
513     dom/MutationEvent.cpp \
514     dom/NamedAttrMap.cpp \
515     dom/NamedMappedAttrMap.cpp \
516     dom/NameNodeList.cpp \
517     dom/Node.cpp \
518     dom/NodeFilterCondition.cpp \
519     dom/NodeFilter.cpp \
520     dom/NodeIterator.cpp \
521     dom/Notation.cpp \
522     dom/OverflowEvent.cpp \
523     dom/Position.cpp \
524     dom/PositionIterator.cpp \
525     dom/ProcessingInstruction.cpp \
526     dom/ProgressEvent.cpp \
527     dom/QualifiedName.cpp \
528     dom/Range.cpp \
529     dom/RegisteredEventListener.cpp \
530     dom/SelectorNodeList.cpp \
531     dom/StaticNodeList.cpp \
532     dom/StyledElement.cpp \
533     dom/StyleElement.cpp \
534     dom/TagNodeList.cpp \
535     dom/Text.cpp \
536     dom/TextEvent.cpp \
537     dom/Traversal.cpp \
538     dom/TreeWalker.cpp \
539     dom/UIEvent.cpp \
540     dom/UIEventWithKeyState.cpp \
541     dom/WheelEvent.cpp \
542     dom/XMLTokenizer.cpp \
543     editing/AppendNodeCommand.cpp \
544     editing/ApplyStyleCommand.cpp \
545     editing/BreakBlockquoteCommand.cpp \
546     editing/CompositeEditCommand.cpp \
547     editing/CreateLinkCommand.cpp \
548     editing/DeleteButtonController.cpp \
549     editing/DeleteButton.cpp \
550     editing/DeleteFromTextNodeCommand.cpp \
551     editing/DeleteSelectionCommand.cpp \
552     editing/EditCommand.cpp \
553     editing/Editor.cpp \
554     editing/EditorCommand.cpp \
555     editing/FormatBlockCommand.cpp \
556     editing/htmlediting.cpp \
557     editing/HTMLInterchange.cpp \
558     editing/IndentOutdentCommand.cpp \
559     editing/InsertIntoTextNodeCommand.cpp \
560     editing/InsertLineBreakCommand.cpp \
561     editing/InsertListCommand.cpp \
562     editing/InsertNodeBeforeCommand.cpp \
563     editing/InsertParagraphSeparatorCommand.cpp \
564     editing/InsertTextCommand.cpp \
565     editing/JoinTextNodesCommand.cpp \
566     editing/markup.cpp \
567     editing/MergeIdenticalElementsCommand.cpp \
568     editing/ModifySelectionListLevel.cpp \
569     editing/MoveSelectionCommand.cpp \
570     editing/RemoveCSSPropertyCommand.cpp \
571     editing/RemoveFormatCommand.cpp \
572     editing/RemoveNodeAttributeCommand.cpp \
573     editing/RemoveNodeCommand.cpp \
574     editing/RemoveNodePreservingChildrenCommand.cpp \
575     editing/ReplaceSelectionCommand.cpp \
576     editing/SelectionController.cpp \
577     editing/Selection.cpp \
578     editing/SetNodeAttributeCommand.cpp \
579     editing/SmartReplace.cpp \
580     editing/SplitElementCommand.cpp \
581     editing/SplitTextNodeCommand.cpp \
582     editing/SplitTextNodeContainingElementCommand.cpp \
583     editing/TextIterator.cpp \
584     editing/TypingCommand.cpp \
585     editing/UnlinkCommand.cpp \
586     editing/VisiblePosition.cpp \
587     editing/visible_units.cpp \
588     editing/WrapContentsInDummySpanCommand.cpp \
589     history/BackForwardList.cpp \
590     history/CachedPage.cpp \
591     history/HistoryItem.cpp \
592     history/PageCache.cpp \
593     html/CanvasGradient.cpp \
594     html/CanvasPattern.cpp \
595     html/CanvasRenderingContext2D.cpp \
596     html/CanvasStyle.cpp \
597     html/FormDataList.cpp \
598     html/HTMLAnchorElement.cpp \
599     html/HTMLAppletElement.cpp \
600     html/HTMLAreaElement.cpp \
601     html/HTMLBaseElement.cpp \
602     html/HTMLBaseFontElement.cpp \
603     html/HTMLBlockquoteElement.cpp \
604     html/HTMLBodyElement.cpp \
605     html/HTMLBRElement.cpp \
606     html/HTMLButtonElement.cpp \
607     html/HTMLCanvasElement.cpp \
608     html/HTMLCollection.cpp \
609     html/HTMLDirectoryElement.cpp \
610     html/HTMLDivElement.cpp \
611     html/HTMLDListElement.cpp \
612     html/HTMLDocument.cpp \
613     html/HTMLElement.cpp \
614     html/HTMLElementFactory.cpp \
615     html/HTMLEmbedElement.cpp \
616     html/HTMLFieldSetElement.cpp \
617     html/HTMLFontElement.cpp \
618     html/HTMLFormCollection.cpp \
619     html/HTMLFormElement.cpp \
620     html/HTMLFrameElementBase.cpp \
621     html/HTMLFrameElement.cpp \
622     html/HTMLFrameOwnerElement.cpp \
623     html/HTMLFrameSetElement.cpp \
624     html/HTMLGenericFormElement.cpp \
625     html/HTMLHeadElement.cpp \
626     html/HTMLHeadingElement.cpp \
627     html/HTMLHRElement.cpp \
628     html/HTMLHtmlElement.cpp \
629     html/HTMLIFrameElement.cpp \
630     html/HTMLImageElement.cpp \
631     html/HTMLImageLoader.cpp \
632     html/HTMLInputElement.cpp \
633     html/HTMLIsIndexElement.cpp \
634     html/HTMLKeygenElement.cpp \
635     html/HTMLLabelElement.cpp \
636     html/HTMLLegendElement.cpp \
637     html/HTMLLIElement.cpp \
638     html/HTMLLinkElement.cpp \
639     html/HTMLMapElement.cpp \
640     html/HTMLMarqueeElement.cpp \
641     html/HTMLMenuElement.cpp \
642     html/HTMLMetaElement.cpp \
643     html/HTMLModElement.cpp \
644     html/HTMLNameCollection.cpp \
645     html/HTMLObjectElement.cpp \
646     html/HTMLOListElement.cpp \
647     html/HTMLOptGroupElement.cpp \
648     html/HTMLOptionElement.cpp \
649     html/HTMLOptionsCollection.cpp \
650     html/HTMLParagraphElement.cpp \
651     html/HTMLParamElement.cpp \
652     html/HTMLParser.cpp \
653     html/HTMLParserErrorCodes.cpp \
654     html/HTMLPlugInElement.cpp \
655     html/HTMLPreElement.cpp \
656     html/HTMLQuoteElement.cpp \
657     html/HTMLScriptElement.cpp \
658     html/HTMLSelectElement.cpp \
659     html/HTMLStyleElement.cpp \
660     html/HTMLTableCaptionElement.cpp \
661     html/HTMLTableCellElement.cpp \
662     html/HTMLTableColElement.cpp \
663     html/HTMLTableElement.cpp \
664     html/HTMLTablePartElement.cpp \
665     html/HTMLTableRowElement.cpp \
666     html/HTMLTableRowsCollection.cpp \
667     html/HTMLTableSectionElement.cpp \
668     html/HTMLTextAreaElement.cpp \
669     html/HTMLTextFieldInnerElement.cpp \
670     html/HTMLTitleElement.cpp \
671     html/HTMLTokenizer.cpp \
672     html/HTMLUListElement.cpp \
673     html/HTMLViewSourceDocument.cpp \
674     loader/Cache.cpp \
675     loader/CachedCSSStyleSheet.cpp \
676     loader/CachedFont.cpp \
677     loader/CachedImage.cpp \
678     loader/CachedResourceClientWalker.cpp \
679     loader/CachedResource.cpp \
680     loader/CachedScript.cpp \
681     loader/CachedXSLStyleSheet.cpp \
682     loader/DocLoader.cpp \
683     loader/DocumentLoader.cpp \
684     loader/FormState.cpp \
685     loader/FrameLoader.cpp \
686     loader/FTPDirectoryDocument.cpp \
687     loader/FTPDirectoryParser.cpp \
688     loader/icon/IconLoader.cpp \
689     loader/ImageDocument.cpp \
690     loader/loader.cpp \
691     loader/MainResourceLoader.cpp \
692     loader/NavigationAction.cpp \
693     loader/NetscapePlugInStreamLoader.cpp \
694     loader/PluginDocument.cpp \
695     loader/ProgressTracker.cpp \
696     loader/Request.cpp \
697     loader/ResourceLoader.cpp \
698     loader/SubresourceLoader.cpp \
699     loader/TextDocument.cpp \
700     loader/TextResourceDecoder.cpp \
701     page/AnimationController.cpp \
702     page/BarInfo.cpp \
703     page/Chrome.cpp \
704     page/Console.cpp \
705     page/ContextMenuController.cpp \
706     page/DOMSelection.cpp \
707     page/DOMWindow.cpp \
708     page/DragController.cpp \
709     page/EventHandler.cpp \
710     page/FocusController.cpp \
711     page/Frame.cpp \
712     page/FrameTree.cpp \
713     page/FrameView.cpp \
714     page/History.cpp \
715     page/InspectorController.cpp \
716     page/MouseEventWithHitTestResults.cpp \
717     page/Page.cpp \
718     page/Screen.cpp \
719     page/Settings.cpp \
720     page/WindowFeatures.cpp \
721     platform/Arena.cpp \
722     platform/ArrayImpl.cpp \
723     platform/text/AtomicString.cpp \
724     platform/text/Base64.cpp \
725     platform/text/BidiContext.cpp \
726     platform/ContextMenu.cpp \
727     platform/text/CString.cpp \
728     platform/DeprecatedCString.cpp \
729     platform/DeprecatedPtrListImpl.cpp \
730     platform/DeprecatedString.cpp \
731     platform/DeprecatedStringList.cpp \
732     platform/DeprecatedValueListImpl.cpp \
733     platform/DragData.cpp \
734     platform/DragImage.cpp \
735     platform/FileChooser.cpp \
736     platform/graphics/FontFamily.cpp \
737     platform/graphics/AffineTransform.cpp \
738     platform/graphics/BitmapImage.cpp \
739     platform/graphics/Color.cpp \
740     platform/graphics/FloatPoint3D.cpp \
741     platform/graphics/FloatPoint.cpp \
742     platform/graphics/FloatRect.cpp \
743     platform/graphics/FloatSize.cpp \
744     platform/graphics/FontData.cpp \
745     platform/graphics/GraphicsContext.cpp \
746     platform/graphics/GraphicsTypes.cpp \
747     platform/graphics/Image.cpp \
748     platform/graphics/IntRect.cpp \
749     platform/graphics/Path.cpp \
750     platform/graphics/PathTraversalState.cpp \
751     platform/graphics/Pen.cpp \
752     platform/graphics/SegmentedFontData.cpp \
753     platform/KURL.cpp \
754     platform/Logging.cpp \
755     platform/MIMETypeRegistry.cpp \
756     platform/network/AuthenticationChallenge.cpp \
757     platform/network/Credential.cpp \
758     platform/network/FormData.cpp \
759     platform/network/HTTPParsers.cpp \
760     platform/network/ProtectionSpace.cpp \
761     platform/network/ResourceHandle.cpp \
762     platform/network/ResourceRequestBase.cpp \
763     platform/network/ResourceResponseBase.cpp \
764     platform/text/RegularExpression.cpp \
765     platform/ScrollBar.cpp \
766 #    platform/SearchPopupMenu.cpp \
767     platform/SecurityOrigin.cpp \
768     platform/text/SegmentedString.cpp \
769     platform/SharedBuffer.cpp \
770     platform/text/String.cpp \
771     platform/text/StringImpl.cpp \
772     platform/text/TextCodec.cpp \
773     platform/text/TextCodecLatin1.cpp \
774     platform/text/TextCodecUserDefined.cpp \
775     platform/text/TextCodecUTF16.cpp \
776     platform/text/TextDecoder.cpp \
777     platform/text/TextEncoding.cpp \
778     platform/text/TextEncodingRegistry.cpp \
779     platform/text/TextStream.cpp \
780     platform/Timer.cpp \
781     platform/text/UnicodeRange.cpp \
782     platform/Widget.cpp \
783     plugins/PluginStream.cpp \
784     rendering/AutoTableLayout.cpp \
785     rendering/bidi.cpp \
786     rendering/break_lines.cpp \
787     rendering/CounterNode.cpp \
788     rendering/EllipsisBox.cpp \
789     rendering/FixedTableLayout.cpp \
790     rendering/HitTestResult.cpp \
791     rendering/InlineBox.cpp \
792     rendering/InlineFlowBox.cpp \
793     rendering/InlineTextBox.cpp \
794     rendering/LayoutState.cpp \
795     rendering/ListMarkerBox.cpp \
796     rendering/RenderApplet.cpp \
797     rendering/RenderArena.cpp \
798     rendering/RenderBlock.cpp \
799     rendering/RenderBox.cpp \
800     rendering/RenderBR.cpp \
801     rendering/RenderButton.cpp \
802     rendering/RenderContainer.cpp \
803     rendering/RenderCounter.cpp \
804     rendering/RenderFieldset.cpp \
805     rendering/RenderFileUploadControl.cpp \
806     rendering/RenderFlexibleBox.cpp \
807     rendering/RenderFlow.cpp \
808     rendering/RenderFrame.cpp \
809     rendering/RenderFrameSet.cpp \
810     rendering/RenderHTMLCanvas.cpp \
811     rendering/RenderImage.cpp \
812     rendering/RenderInline.cpp \
813     rendering/RenderLayer.cpp \
814     rendering/RenderLegend.cpp \
815     rendering/RenderListBox.cpp \
816     rendering/RenderListItem.cpp \
817     rendering/RenderListMarker.cpp \
818     rendering/RenderMenuList.cpp \
819     rendering/RenderObject.cpp \
820     rendering/RenderPart.cpp \
821     rendering/RenderPartObject.cpp \
822     rendering/RenderReplaced.cpp \
823     rendering/RenderSlider.cpp \
824     rendering/RenderStyle.cpp \
825     rendering/RenderTableCell.cpp \
826     rendering/RenderTableCol.cpp \
827     rendering/RenderTable.cpp \
828     rendering/RenderTableRow.cpp \
829     rendering/RenderTableSection.cpp \
830     rendering/RenderTextControl.cpp \
831     rendering/RenderText.cpp \
832     rendering/RenderTextFragment.cpp \
833     rendering/RenderTheme.cpp \
834     rendering/RenderTreeAsText.cpp \
835     rendering/RenderView.cpp \
836     rendering/RenderWidget.cpp \
837     rendering/RenderWordBreak.cpp \
838     rendering/RootInlineBox.cpp \
839     rendering/SVGRenderTreeAsText.cpp \
840     xml/DOMParser.cpp \
841     xml/NativeXPathNSResolver.cpp \
842     xml/XMLHttpRequest.cpp \
843     xml/XMLSerializer.cpp \
844     xml/XPathEvaluator.cpp \
845     xml/XPathExpression.cpp \
846     xml/XPathExpressionNode.cpp \
847     xml/XPathFunctions.cpp \
848     xml/XPathNamespace.cpp \
849     xml/XPathNodeSet.cpp \
850     xml/XPathNSResolver.cpp \
851     xml/XPathParser.cpp \
852     xml/XPathPath.cpp \
853     xml/XPathPredicate.cpp \
854     xml/XPathResult.cpp \
855     xml/XPathStep.cpp \
856     xml/XPathUtil.cpp \
857     xml/XPathValue.cpp \
858     xml/XPathVariableReference.cpp \
859     xml/XSLImportRule.cpp \
860     xml/XSLStyleSheet.cpp \
861     xml/XSLTExtensions.cpp \
862     xml/XSLTUnicodeSort.cpp \
863     xml/XSLTProcessor.cpp
864
865 gtk-port {
866   SOURCES += \
867     platform/graphics/GlyphPageTreeNode.cpp \
868     platform/graphics/GlyphWidthMap.cpp \
869     platform/graphics/FontCache.cpp \
870     platform/graphics/Font.cpp \
871     platform/graphics/FontFallbackList.cpp \
872     platform/graphics/SimpleFontData.cpp 
873 }
874
875 qt-port {
876
877     HEADERS += \
878     $$PWD/platform/qt/QWebPopup.h \
879     $$PWD/platform/qt/MenuEventProxy.h \
880     $$PWD/platform/qt/SharedTimerQt.h \
881     $$PWD/../WebKit/qt/Api/qwebframe.h \
882     $$PWD/../WebKit/qt/Api/qwebpage.h \
883     $$PWD/../WebKit/qt/Api/qwebview.h \
884     $$PWD/../WebKit/qt/Api/qwebhistoryinterface.h \
885     $$PWD/../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.h \
886     $$PWD/platform/network/qt/QNetworkReplyHandler.h
887
888     SOURCES += \
889     page/qt/DragControllerQt.cpp \
890     page/qt/EventHandlerQt.cpp \
891     page/qt/FrameQt.cpp \
892     platform/graphics/qt/AffineTransformQt.cpp \
893     platform/graphics/qt/ColorQt.cpp \
894     platform/graphics/qt/FloatPointQt.cpp \
895     platform/graphics/qt/FloatRectQt.cpp \
896     platform/graphics/qt/GraphicsContextQt.cpp \
897     platform/graphics/qt/IconQt.cpp \
898     platform/graphics/qt/ImageBufferQt.cpp \
899     platform/graphics/qt/ImageDecoderQt.cpp \
900     platform/graphics/qt/ImageQt.cpp \
901     platform/graphics/qt/ImageSourceQt.cpp \
902     platform/graphics/qt/IntPointQt.cpp \
903     platform/graphics/qt/IntRectQt.cpp \
904     platform/graphics/qt/IntSizeQt.cpp \
905     platform/graphics/qt/PathQt.cpp \
906     platform/network/qt/ResourceHandleQt.cpp \
907     platform/network/qt/ResourceRequestQt.cpp \
908     platform/network/qt/QNetworkReplyHandler.cpp \
909     editing/qt/EditorQt.cpp \
910     platform/qt/ClipboardQt.cpp \
911     platform/qt/ContextMenuItemQt.cpp \
912     platform/qt/ContextMenuQt.cpp \
913     platform/qt/CookieJarQt.cpp \
914     platform/qt/CursorQt.cpp \
915     platform/qt/DragDataQt.cpp \
916     platform/qt/DragImageQt.cpp \
917     platform/qt/FileChooserQt.cpp \
918     platform/qt/FileSystemQt.cpp \
919     platform/graphics/qt/FontCacheQt.cpp \
920     platform/graphics/qt/FontCustomPlatformData.cpp \
921     platform/graphics/qt/FontQt.cpp \
922     platform/graphics/qt/GlyphPageTreeNodeQt.cpp \
923     platform/graphics/qt/SimpleFontDataQt.cpp \
924     platform/qt/KURLQt.cpp \
925     platform/qt/Localizations.cpp \
926     platform/qt/MIMETypeRegistryQt.cpp \
927     platform/qt/PasteboardQt.cpp \
928     platform/qt/PlatformKeyboardEventQt.cpp \
929     platform/qt/PlatformMouseEventQt.cpp \
930     platform/qt/PlatformScreenQt.cpp \
931     platform/qt/PlatformScrollBarQt.cpp \
932     platform/qt/PlugInInfoStoreQt.cpp \
933     platform/qt/PopupMenuQt.cpp \
934     platform/qt/QWebPopup.cpp \
935     platform/qt/RenderThemeQt.cpp \
936     platform/qt/ScrollViewQt.cpp \
937     platform/qt/SearchPopupMenuQt.cpp \
938     platform/qt/SharedTimerQt.cpp \
939     platform/qt/SoundQt.cpp \
940     platform/text/qt/StringQt.cpp \
941     platform/qt/TemporaryLinkStubs.cpp \
942     platform/text/qt/TextBoundaries.cpp \
943     platform/text/qt/TextBreakIteratorQt.cpp \
944     platform/text/qt/TextCodecQt.cpp \
945     platform/qt/ThreadingQt.cpp \
946     platform/qt/WheelEventQt.cpp \
947     platform/qt/WidgetQt.cpp \
948     ../WebKit/qt/WebCoreSupport/ChromeClientQt.cpp \
949     ../WebKit/qt/WebCoreSupport/ContextMenuClientQt.cpp \
950     ../WebKit/qt/WebCoreSupport/DragClientQt.cpp \
951     ../WebKit/qt/WebCoreSupport/EditorClientQt.cpp \
952     ../WebKit/qt/WebCoreSupport/EditCommandQt.cpp \
953     ../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp \
954     ../WebKit/qt/WebCoreSupport/InspectorClientQt.cpp \
955     ../WebKit/qt/Api/qwebframe.cpp \
956     ../WebKit/qt/Api/qwebpage.cpp \
957     ../WebKit/qt/Api/qwebview.cpp \
958     ../WebKit/qt/Api/qwebhistory.cpp \
959     ../WebKit/qt/Api/qwebsettings.cpp \
960     ../WebKit/qt/Api/qwebhistoryinterface.cpp \
961     platform/ThreadingNone.cpp
962
963     unix: SOURCES += platform/qt/SystemTimeQt.cpp
964     else: SOURCES += platform/win/SystemTimeWin.cpp
965
966     # Files belonging to the Qt 4.3 build
967     lessThan(QT_MINOR_VERSION, 4) {
968         HEADERS += \
969             $$PWD/../WebKit/qt/Api/qwebnetworkinterface.h \
970             $$PWD/../WebKit/qt/Api/qwebnetworkinterface_p.h \
971             $$PWD/../WebKit/qt/Api/qwebobjectplugin.h \
972             $$PWD/../WebKit/qt/Api/qwebobjectplugin_p.h \
973             $$PWD/../WebKit/qt/Api/qwebobjectpluginconnector.h \
974             $$PWD/../WebKit/qt/Api/qcookiejar.h
975
976         SOURCES += \
977             ../WebKit/qt/Api/qwebnetworkinterface.cpp \
978             ../WebKit/qt/Api/qwebobjectplugin.cpp \
979             ../WebKit/qt/Api/qwebobjectpluginconnector.cpp \
980             ../WebKit/qt/Api/qcookiejar.cpp
981
982      }
983 }
984
985 gtk-port {
986     HEADERS += \
987         ../WebCore/platform/gtk/ClipboardGtk.h \
988         ../WebCore/platform/gtk/PasteboardHelper.h \
989         ../WebKit/gtk/WebView/webkit.h \
990         ../WebKit/gtk/WebView/webkitdefines.h \
991         ../WebKit/gtk/WebView/webkitnetworkrequest.h \
992         ../WebKit/gtk/WebView/webkitprivate.h \
993         ../WebKit/gtk/WebView/webkitwebbackforwardlist.h \
994         ../WebKit/gtk/WebView/webkitwebframe.h \
995         ../WebKit/gtk/WebView/webkitwebhistoryitem.h \
996         ../WebKit/gtk/WebView/webkitwebsettings.h \
997         ../WebKit/gtk/WebView/webkitwebview.h \
998         ../WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \
999         ../WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \
1000         ../WebKit/gtk/WebCoreSupport/DragClientGtk.h \
1001         ../WebKit/gtk/WebCoreSupport/EditorClientGtk.h \
1002         ../WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \
1003         ../WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \
1004         ../WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h
1005     SOURCES += \
1006         platform/graphics/StringTruncator.cpp \
1007         platform/text/TextCodecICU.cpp \
1008         platform/text/TextBoundariesICU.cpp \
1009         platform/text/TextBreakIteratorICU.cpp \
1010         page/gtk/EventHandlerGtk.cpp \
1011         page/gtk/FrameGtk.cpp \
1012         page/gtk/DragControllerGtk.cpp \
1013         platform/gtk/ClipboardGtk.cpp \
1014         platform/gtk/CookieJarGtk.cpp \
1015         platform/gtk/CursorGtk.cpp \
1016         platform/gtk/ContextMenuGtk.cpp \
1017         platform/gtk/ContextMenuItemGtk.cpp \
1018         platform/gtk/DragDataGtk.cpp \
1019         platform/gtk/DragImageGtk.cpp \
1020         platform/gtk/FileChooserGtk.cpp \
1021         platform/gtk/FileSystemGtk.cpp \
1022         platform/graphics/gtk/FontCacheGtk.cpp \
1023         platform/graphics/gtk/FontCustomPlatformData.cpp \
1024         platform/graphics/gtk/FontGtk.cpp \
1025         platform/graphics/gtk/FontPlatformDataGtk.cpp \
1026         platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp \
1027         platform/graphics/gtk/SimpleFontDataGtk.cpp \
1028         platform/gtk/KeyEventGtk.cpp \
1029         platform/gtk/Language.cpp \
1030         platform/gtk/LocalizedStringsGtk.cpp \
1031         platform/gtk/LoggingGtk.cpp \
1032         platform/gtk/MIMETypeRegistryGtk.cpp \
1033         platform/gtk/MouseEventGtk.cpp \
1034         platform/gtk/PasteboardGtk.cpp \
1035         platform/gtk/PlatformScreenGtk.cpp \
1036         platform/gtk/PlatformScrollBarGtk.cpp \
1037         platform/gtk/PopupMenuGtk.cpp \
1038         platform/gtk/RenderThemeGtk.cpp \
1039         platform/gtk/SearchPopupMenuGtk.cpp \
1040         platform/gtk/ScrollViewGtk.cpp \
1041         platform/gtk/SharedTimerGtk.cpp \
1042         platform/gtk/SoundGtk.cpp \
1043         platform/gtk/SystemTimeGtk.cpp \
1044         platform/gtk/TemporaryLinkStubs.cpp \
1045         platform/text/gtk/TextBreakIteratorInternalICUGtk.cpp \
1046         platform/gtk/ThreadingGtk.cpp \
1047         platform/gtk/WheelEventGtk.cpp \
1048         platform/gtk/WidgetGtk.cpp \
1049         platform/gtk/gtk2drawing.c \
1050         platform/graphics/gtk/ColorGtk.cpp \
1051         platform/graphics/gtk/IconGtk.cpp \
1052         platform/graphics/gtk/ImageGtk.cpp \
1053         platform/graphics/gtk/IntPointGtk.cpp \
1054         platform/graphics/gtk/IntRectGtk.cpp \
1055         platform/network/curl/ResourceHandleCurl.cpp \
1056         platform/network/curl/ResourceHandleManager.cpp \
1057         platform/graphics/cairo/AffineTransformCairo.cpp \
1058         platform/graphics/cairo/GraphicsContextCairo.cpp \
1059         platform/graphics/cairo/ImageBufferCairo.cpp \
1060         platform/graphics/cairo/ImageCairo.cpp \
1061         platform/graphics/cairo/ImageSourceCairo.cpp \
1062         platform/graphics/cairo/PathCairo.cpp \
1063         platform/image-decoders/gif/GIFImageDecoder.cpp \
1064         platform/image-decoders/gif/GIFImageReader.cpp  \
1065         platform/image-decoders/png/PNGImageDecoder.cpp \
1066         platform/image-decoders/jpeg/JPEGImageDecoder.cpp \
1067         platform/image-decoders/bmp/BMPImageDecoder.cpp \
1068         platform/image-decoders/ico/ICOImageDecoder.cpp \
1069         platform/image-decoders/xbm/XBMImageDecoder.cpp \
1070         ../WebKit/gtk/WebView/webkitnetworkrequest.cpp \
1071         ../WebKit/gtk/WebView/webkitprivate.cpp \
1072         ../WebKit/gtk/WebView/webkitwebbackforwardlist.cpp \
1073         ../WebKit/gtk/WebView/webkitwebframe.cpp \
1074         ../WebKit/gtk/WebView/webkitwebhistoryitem.cpp \
1075         ../WebKit/gtk/WebView/webkitwebsettings.cpp \
1076         ../WebKit/gtk/WebView/webkitwebview.cpp \
1077         ../WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \
1078         ../WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \
1079         ../WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \
1080         ../WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \
1081         ../WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \
1082         ../WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \
1083         ../WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp
1084 }
1085
1086 contains(DEFINES, ENABLE_DATABASE=1) {
1087     FEATURE_DEFINES_JAVASCRIPT += ENABLE_DATABASE=1
1088
1089     CONFIG(QTDIR_build) {
1090         # some what copied from src/plugins/sqldrivers/sqlite/sqlite.pro
1091         system-sqlite {
1092             LIBS *= $$QT_LFLAGS_SQLITE
1093             QMAKE_CXXFLAGS *= $$QT_CFLAGS_SQLITE
1094         } else {
1095             CONFIG(release, debug|release):DEFINES *= NDEBUG
1096             INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/sqlite/
1097             SOURCES += $$QT_SOURCE_TREE/src/3rdparty/sqlite/sqlite3.c
1098         }
1099     } else {
1100         qt-port: INCLUDEPATH += $$[QT_INSTALL_PREFIX]/src/3rdparty/sqlite/
1101         LIBS += -lsqlite3
1102     }
1103
1104     SOURCES += \
1105         platform/sql/SQLiteAuthorizer.cpp \
1106         platform/sql/SQLiteDatabase.cpp \
1107         platform/sql/SQLiteStatement.cpp \
1108         platform/sql/SQLiteTransaction.cpp \
1109         platform/sql/SQLValue.cpp \
1110         storage/ChangeVersionWrapper.cpp \
1111         storage/DatabaseAuthorizer.cpp \
1112         storage/Database.cpp \
1113         storage/DatabaseTask.cpp \
1114         storage/DatabaseThread.cpp \
1115         storage/DatabaseTracker.cpp \
1116         storage/SQLResultSet.cpp \
1117         storage/SQLResultSetRowList.cpp \
1118         storage/SQLStatement.cpp \
1119         storage/SQLTransaction.cpp \
1120         bindings/js/JSCustomSQLStatementCallback.cpp \
1121         bindings/js/JSCustomSQLStatementErrorCallback.cpp \
1122         bindings/js/JSCustomSQLTransactionCallback.cpp \
1123         bindings/js/JSCustomSQLTransactionErrorCallback.cpp \
1124         bindings/js/JSDatabaseCustom.cpp \
1125         bindings/js/JSSQLResultSetRowListCustom.cpp \
1126         bindings/js/JSSQLTransactionCustom.cpp
1127
1128     IDL_BINDINGS += \
1129         storage/Database.idl \
1130         storage/SQLError.idl \
1131         storage/SQLResultSet.idl \
1132         storage/SQLResultSetRowList.idl \
1133         storage/SQLTransaction.idl
1134 }
1135
1136 contains(DEFINES, ENABLE_ICONDATABASE=1) {
1137     SOURCES += \
1138         loader/icon/IconDatabase.cpp \
1139         loader/icon/IconRecord.cpp \
1140         loader/icon/PageURLRecord.cpp
1141 } else {
1142     SOURCES += \
1143         loader/icon/IconDatabaseNone.cpp
1144 }
1145
1146 contains(DEFINES, ENABLE_VIDEO=1) {
1147     FEATURE_DEFINES_JAVASCRIPT += ENABLE_VIDEO=1
1148
1149     IDL_BINDINGS += \
1150         html/HTMLAudioElement.idl \
1151         html/HTMLMediaElement.idl \
1152         html/HTMLSourceElement.idl \
1153         html/HTMLVideoElement.idl \
1154         html/MediaError.idl \
1155         html/TimeRanges.idl \
1156         html/VoidCallback.idl 
1157
1158     SOURCES += \
1159         html/HTMLAudioElement.cpp \
1160         html/HTMLMediaElement.cpp \
1161         html/HTMLSourceElement.cpp \
1162         html/HTMLVideoElement.cpp \
1163         html/TimeRanges.cpp \
1164         platform/graphics/MediaPlayer.cpp \
1165         rendering/MediaControlElements.cpp \
1166         rendering/RenderVideo.cpp \
1167         rendering/RenderMedia.cpp \
1168         bindings/js/JSAudioConstructor.cpp
1169
1170     gtk-port {
1171         SOURCES += \
1172             platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp \
1173             platform/graphics/gtk/VideoSinkGStreamer.cpp
1174
1175         CONFIG(debug):DEFINES += GST_DISABLE_DEPRECATED
1176
1177         PKGCONFIG += gstreamer-0.10 gstreamer-plugins-base-0.10 gnome-vfs-2.0
1178         LIBS += -lgstinterfaces-0.10 -lgstbase-0.10 -lgstvideo-0.10
1179     }
1180 }
1181
1182 contains(DEFINES, ENABLE_XPATH=1) {
1183     FEATURE_DEFINES_JAVASCRIPT += ENABLE_XPATH=1
1184
1185     XPATHBISON = $$PWD/xml/XPathGrammar.y
1186
1187     IDL_BINDINGS += \
1188         xml/XPathNSResolver.idl \
1189         xml/XPathException.idl \
1190         xml/XPathExpression.idl \
1191         xml/XPathResult.idl \
1192         xml/XPathEvaluator.idl
1193 }
1194
1195 unix:!mac:CONFIG += link_pkgconfig
1196
1197 contains(DEFINES, ENABLE_XSLT=1) {
1198     FEATURE_DEFINES_JAVASCRIPT += ENABLE_XSLT=1
1199     PKGCONFIG += libxml-2.0 libxslt
1200
1201     macx {
1202         INCLUDEPATH += /usr/include/libxml2
1203         LIBS += -lxml2 -lxslt
1204     }
1205
1206     win32-msvc* {
1207         LIBS += -llibxml2 -llibxslt
1208     }
1209 }
1210
1211 contains(DEFINES, ENABLE_XBL=1) {
1212     FEATURE_DEFINES_JAVASCRIPT += ENABLE_XBL=1
1213 }
1214
1215 contains(DEFINES, ENABLE_SVG=1) {
1216     FEATURE_DEFINES_JAVASCRIPT += ENABLE_SVG=1
1217
1218     DEPENDPATH += svg svg/graphics
1219     qt-port {
1220     DEPENDPATH += svg/graphics/qt
1221     }
1222
1223     gtk-port {
1224     DEPENDPATH += svg/graphics/cairo
1225     }
1226
1227     SVG_NAMES = $$PWD/svg/svgtags.in
1228
1229     XLINK_NAMES = $$PWD/svg/xlinkattrs.in
1230
1231     IDL_BINDINGS += svg/SVGZoomEvent.idl \
1232         svg/SVGAElement.idl \
1233         svg/SVGAngle.idl \
1234         svg/SVGAnimateColorElement.idl \
1235         svg/SVGAnimatedAngle.idl \
1236         svg/SVGAnimatedBoolean.idl \
1237         svg/SVGAnimatedEnumeration.idl \
1238         svg/SVGAnimatedInteger.idl \
1239         svg/SVGAnimatedLength.idl \
1240         svg/SVGAnimatedLengthList.idl \
1241         svg/SVGAnimatedNumber.idl \
1242         svg/SVGAnimatedNumberList.idl \
1243         svg/SVGAnimatedPreserveAspectRatio.idl \
1244         svg/SVGAnimatedRect.idl \
1245         svg/SVGAnimatedString.idl \
1246         svg/SVGAnimatedTransformList.idl \
1247         svg/SVGAnimateElement.idl \
1248         svg/SVGAnimateTransformElement.idl \
1249         svg/SVGAnimationElement.idl \
1250         svg/SVGCircleElement.idl \
1251         svg/SVGClipPathElement.idl \
1252         svg/SVGColor.idl \
1253         svg/SVGComponentTransferFunctionElement.idl \
1254         svg/SVGCursorElement.idl \
1255         svg/SVGDefinitionSrcElement.idl \
1256         svg/SVGDefsElement.idl \
1257         svg/SVGDescElement.idl \
1258         svg/SVGDocument.idl \
1259         svg/SVGElement.idl \
1260         svg/SVGElementInstance.idl \
1261         svg/SVGElementInstanceList.idl \
1262         svg/SVGEllipseElement.idl \
1263         svg/SVGException.idl \
1264         svg/SVGFEBlendElement.idl \
1265         svg/SVGFEColorMatrixElement.idl \
1266         svg/SVGFEComponentTransferElement.idl \
1267         svg/SVGFECompositeElement.idl \
1268         svg/SVGFEDiffuseLightingElement.idl \
1269         svg/SVGFEDisplacementMapElement.idl \
1270         svg/SVGFEDistantLightElement.idl \
1271         svg/SVGFEFloodElement.idl \
1272         svg/SVGFEFuncAElement.idl \
1273         svg/SVGFEFuncBElement.idl \
1274         svg/SVGFEFuncGElement.idl \
1275         svg/SVGFEFuncRElement.idl \
1276         svg/SVGFEGaussianBlurElement.idl \
1277         svg/SVGFEImageElement.idl \
1278         svg/SVGFEMergeElement.idl \
1279         svg/SVGFEMergeNodeElement.idl \
1280         svg/SVGFEOffsetElement.idl \
1281         svg/SVGFEPointLightElement.idl \
1282         svg/SVGFESpecularLightingElement.idl \
1283         svg/SVGFESpotLightElement.idl \
1284         svg/SVGFETileElement.idl \
1285         svg/SVGFETurbulenceElement.idl \
1286         svg/SVGFilterElement.idl \
1287         svg/SVGFontElement.idl \
1288         svg/SVGFontFaceElement.idl \
1289         svg/SVGFontFaceFormatElement.idl \
1290         svg/SVGFontFaceNameElement.idl \
1291         svg/SVGFontFaceSrcElement.idl \
1292         svg/SVGFontFaceUriElement.idl \
1293         svg/SVGForeignObjectElement.idl \
1294         svg/SVGGElement.idl \
1295         svg/SVGGlyphElement.idl \
1296         svg/SVGGradientElement.idl \
1297         svg/SVGImageElement.idl \
1298         svg/SVGLength.idl \
1299         svg/SVGLengthList.idl \
1300         svg/SVGLinearGradientElement.idl \
1301         svg/SVGLineElement.idl \
1302         svg/SVGMarkerElement.idl \
1303         svg/SVGMaskElement.idl \
1304         svg/SVGMatrix.idl \
1305         svg/SVGMetadataElement.idl \
1306         svg/SVGMissingGlyphElement.idl \
1307         svg/SVGNumber.idl \
1308         svg/SVGNumberList.idl \
1309         svg/SVGPaint.idl \
1310         svg/SVGPathElement.idl \
1311         svg/SVGPathSegArcAbs.idl \
1312         svg/SVGPathSegArcRel.idl \
1313         svg/SVGPathSegClosePath.idl \
1314         svg/SVGPathSegCurvetoCubicAbs.idl \
1315         svg/SVGPathSegCurvetoCubicRel.idl \
1316         svg/SVGPathSegCurvetoCubicSmoothAbs.idl \
1317         svg/SVGPathSegCurvetoCubicSmoothRel.idl \
1318         svg/SVGPathSegCurvetoQuadraticAbs.idl \
1319         svg/SVGPathSegCurvetoQuadraticRel.idl \
1320         svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl \
1321         svg/SVGPathSegCurvetoQuadraticSmoothRel.idl \
1322         svg/SVGPathSeg.idl \
1323         svg/SVGPathSegLinetoAbs.idl \
1324         svg/SVGPathSegLinetoHorizontalAbs.idl \
1325         svg/SVGPathSegLinetoHorizontalRel.idl \
1326         svg/SVGPathSegLinetoRel.idl \
1327         svg/SVGPathSegLinetoVerticalAbs.idl \
1328         svg/SVGPathSegLinetoVerticalRel.idl \
1329         svg/SVGPathSegList.idl \
1330         svg/SVGPathSegMovetoAbs.idl \
1331         svg/SVGPathSegMovetoRel.idl \
1332         svg/SVGPatternElement.idl \
1333         svg/SVGPoint.idl \
1334         svg/SVGPointList.idl \
1335         svg/SVGPolygonElement.idl \
1336         svg/SVGPolylineElement.idl \
1337         svg/SVGPreserveAspectRatio.idl \
1338         svg/SVGRadialGradientElement.idl \
1339         svg/SVGRectElement.idl \
1340         svg/SVGRect.idl \
1341         svg/SVGRenderingIntent.idl \
1342         svg/SVGScriptElement.idl \
1343         svg/SVGSetElement.idl \
1344         svg/SVGStopElement.idl \
1345         svg/SVGStringList.idl \
1346         svg/SVGStyleElement.idl \
1347         svg/SVGSVGElement.idl \
1348         svg/SVGSwitchElement.idl \
1349         svg/SVGSymbolElement.idl \
1350         svg/SVGTextContentElement.idl \
1351         svg/SVGTextElement.idl \
1352         svg/SVGTextPathElement.idl \
1353         svg/SVGTextPositioningElement.idl \
1354         svg/SVGTitleElement.idl \
1355         svg/SVGTransform.idl \
1356         svg/SVGTransformList.idl \
1357         svg/SVGTRefElement.idl \
1358         svg/SVGTSpanElement.idl \
1359         svg/SVGUnitTypes.idl \
1360         svg/SVGUseElement.idl \
1361         svg/SVGViewElement.idl 
1362
1363     SOURCES += \
1364 # TODO: this-one-is-not-auto-added! FIXME! tmp/SVGElementFactory.cpp \
1365         bindings/js/JSSVGElementWrapperFactory.cpp \
1366         bindings/js/JSSVGMatrixCustom.cpp \
1367         bindings/js/JSSVGPathSegCustom.cpp \
1368         bindings/js/JSSVGPathSegListCustom.cpp \
1369         bindings/js/JSSVGPointListCustom.cpp \
1370         bindings/js/JSSVGTransformListCustom.cpp \
1371         css/SVGCSSComputedStyleDeclaration.cpp \
1372         css/SVGCSSParser.cpp \
1373         css/SVGCSSStyleSelector.cpp \
1374         rendering/SVGRenderStyle.cpp \
1375         rendering/SVGRenderStyleDefs.cpp \
1376         bindings/js/JSSVGLazyEventListener.cpp \
1377         svg/SVGZoomEvent.cpp \
1378         rendering/PointerEventsHitRules.cpp \
1379         svg/SVGDocumentExtensions.cpp \
1380         svg/SVGImageLoader.cpp \
1381         svg/SVGTimer.cpp \
1382         svg/TimeScheduler.cpp \
1383         svg/ColorDistance.cpp \
1384         svg/SVGAElement.cpp \
1385         svg/SVGAngle.cpp \
1386         svg/SVGAnimateColorElement.cpp \
1387         svg/SVGAnimatedPathData.cpp \
1388         svg/SVGAnimatedPoints.cpp \
1389         svg/SVGAnimateElement.cpp \
1390         svg/SVGAnimateMotionElement.cpp \
1391         svg/SVGAnimateTransformElement.cpp \
1392         svg/SVGAnimationElement.cpp \
1393         svg/SVGCircleElement.cpp \
1394         svg/SVGClipPathElement.cpp \
1395         svg/SVGColor.cpp \
1396         svg/SVGComponentTransferFunctionElement.cpp \
1397         svg/SVGCursorElement.cpp \
1398         svg/SVGDefinitionSrcElement.cpp \
1399         svg/SVGDefsElement.cpp \
1400         svg/SVGDescElement.cpp \
1401         svg/SVGDocument.cpp \
1402         svg/SVGElement.cpp \
1403         svg/SVGElementInstance.cpp \
1404         svg/SVGElementInstanceList.cpp \
1405         svg/SVGEllipseElement.cpp \
1406         svg/SVGExternalResourcesRequired.cpp \
1407         svg/SVGFEBlendElement.cpp \
1408         svg/SVGFEColorMatrixElement.cpp \
1409         svg/SVGFEComponentTransferElement.cpp \
1410         svg/SVGFECompositeElement.cpp \
1411         svg/SVGFEDiffuseLightingElement.cpp \
1412         svg/SVGFEDisplacementMapElement.cpp \
1413         svg/SVGFEDistantLightElement.cpp \
1414         svg/SVGFEFloodElement.cpp \
1415         svg/SVGFEFuncAElement.cpp \
1416         svg/SVGFEFuncBElement.cpp \
1417         svg/SVGFEFuncGElement.cpp \
1418         svg/SVGFEFuncRElement.cpp \
1419         svg/SVGFEGaussianBlurElement.cpp \
1420         svg/SVGFEImageElement.cpp \
1421         svg/SVGFELightElement.cpp \
1422         svg/SVGFEMergeElement.cpp \
1423         svg/SVGFEMergeNodeElement.cpp \
1424         svg/SVGFEOffsetElement.cpp \
1425         svg/SVGFEPointLightElement.cpp \
1426         svg/SVGFESpecularLightingElement.cpp \
1427         svg/SVGFESpotLightElement.cpp \
1428         svg/SVGFETileElement.cpp \
1429         svg/SVGFETurbulenceElement.cpp \
1430         svg/SVGFilterElement.cpp \
1431         svg/SVGFilterPrimitiveStandardAttributes.cpp \
1432         svg/SVGFitToViewBox.cpp \
1433         svg/SVGFont.cpp \
1434         svg/SVGFontData.cpp \
1435         svg/SVGFontElement.cpp \
1436         svg/SVGFontFaceElement.cpp \
1437         svg/SVGFontFaceFormatElement.cpp \
1438         svg/SVGFontFaceNameElement.cpp \
1439         svg/SVGFontFaceSrcElement.cpp \
1440         svg/SVGFontFaceUriElement.cpp \
1441         svg/SVGForeignObjectElement.cpp \
1442         svg/SVGGElement.cpp \
1443         svg/SVGGlyphElement.cpp \
1444         svg/SVGGradientElement.cpp \
1445         svg/SVGImageElement.cpp \
1446         svg/SVGLangSpace.cpp \
1447         svg/SVGLength.cpp \
1448         svg/SVGLengthList.cpp \
1449         svg/SVGLinearGradientElement.cpp \
1450         svg/SVGLineElement.cpp \
1451         svg/SVGLocatable.cpp \
1452         svg/SVGMarkerElement.cpp \
1453         svg/SVGMaskElement.cpp \
1454         svg/SVGMetadataElement.cpp \
1455         svg/SVGMissingGlyphElement.cpp \
1456         svg/SVGMPathElement.cpp \
1457         svg/SVGNumberList.cpp \
1458         svg/SVGPaint.cpp \
1459         svg/SVGParserUtilities.cpp \
1460         svg/SVGPathElement.cpp \
1461         svg/SVGPathSegArc.cpp \
1462         svg/SVGPathSegClosePath.cpp \
1463         svg/SVGPathSegCurvetoCubic.cpp \
1464         svg/SVGPathSegCurvetoCubicSmooth.cpp \
1465         svg/SVGPathSegCurvetoQuadratic.cpp \
1466         svg/SVGPathSegCurvetoQuadraticSmooth.cpp \
1467         svg/SVGPathSegLineto.cpp \
1468         svg/SVGPathSegLinetoHorizontal.cpp \
1469         svg/SVGPathSegLinetoVertical.cpp \
1470         svg/SVGPathSegList.cpp \
1471         svg/SVGPathSegMoveto.cpp \
1472         svg/SVGPatternElement.cpp \
1473         svg/SVGPointList.cpp \
1474         svg/SVGPolyElement.cpp \
1475         svg/SVGPolygonElement.cpp \
1476         svg/SVGPolylineElement.cpp \
1477         svg/SVGPreserveAspectRatio.cpp \
1478         svg/SVGRadialGradientElement.cpp \
1479         svg/SVGRectElement.cpp \
1480         svg/SVGScriptElement.cpp \
1481         svg/SVGSetElement.cpp \
1482         svg/SVGStopElement.cpp \
1483         svg/SVGStringList.cpp \
1484         svg/SVGStylable.cpp \
1485         svg/SVGStyledElement.cpp \
1486         svg/SVGStyledLocatableElement.cpp \
1487         svg/SVGStyledTransformableElement.cpp \
1488         svg/SVGStyleElement.cpp \
1489         svg/SVGSVGElement.cpp \
1490         svg/SVGSwitchElement.cpp \
1491         svg/SVGSymbolElement.cpp \
1492         svg/SVGTests.cpp \
1493         svg/SVGTextContentElement.cpp \
1494         svg/SVGTextElement.cpp \
1495         svg/SVGTextPathElement.cpp \
1496         svg/SVGTextPositioningElement.cpp \
1497         svg/SVGTitleElement.cpp \
1498         svg/SVGTransformable.cpp \
1499         svg/SVGTransform.cpp \
1500         svg/SVGTransformDistance.cpp \
1501         svg/SVGTransformList.cpp \
1502         svg/SVGTRefElement.cpp \
1503         svg/SVGTSpanElement.cpp \
1504         svg/SVGURIReference.cpp \
1505         svg/SVGUseElement.cpp \
1506         svg/SVGViewElement.cpp \
1507         svg/SVGViewSpec.cpp \
1508         svg/SVGZoomAndPan.cpp \
1509         svg/graphics/filters/SVGFEBlend.cpp \
1510         svg/graphics/filters/SVGFEColorMatrix.cpp \
1511         svg/graphics/filters/SVGFEComponentTransfer.cpp \
1512         svg/graphics/filters/SVGFEComposite.cpp \
1513         svg/graphics/filters/SVGFEConvolveMatrix.cpp \
1514         svg/graphics/filters/SVGFEDiffuseLighting.cpp \
1515         svg/graphics/filters/SVGFEDisplacementMap.cpp \
1516         svg/graphics/filters/SVGFEFlood.cpp \
1517         svg/graphics/filters/SVGFEGaussianBlur.cpp \
1518         svg/graphics/filters/SVGFEImage.cpp \
1519         svg/graphics/filters/SVGFEMerge.cpp \
1520         svg/graphics/filters/SVGFEMorphology.cpp \
1521         svg/graphics/filters/SVGFEOffset.cpp \
1522         svg/graphics/filters/SVGFESpecularLighting.cpp \
1523         svg/graphics/filters/SVGFETurbulence.cpp \
1524         svg/graphics/filters/SVGFilterEffect.cpp \
1525         svg/graphics/filters/SVGLightSource.cpp \
1526         svg/graphics/SVGImage.cpp \
1527         svg/graphics/SVGPaintServer.cpp \
1528         svg/graphics/SVGPaintServerGradient.cpp \
1529         svg/graphics/SVGPaintServerLinearGradient.cpp \
1530         svg/graphics/SVGPaintServerPattern.cpp \
1531         svg/graphics/SVGPaintServerRadialGradient.cpp \
1532         svg/graphics/SVGPaintServerSolid.cpp \
1533         svg/graphics/SVGResourceClipper.cpp \
1534         svg/graphics/SVGResource.cpp \
1535         svg/graphics/SVGResourceFilter.cpp \
1536         svg/graphics/SVGResourceMarker.cpp \
1537         svg/graphics/SVGResourceMasker.cpp \
1538         rendering/RenderForeignObject.cpp \
1539         rendering/RenderPath.cpp \
1540         rendering/RenderSVGBlock.cpp \
1541         rendering/RenderSVGContainer.cpp \
1542         rendering/RenderSVGGradientStop.cpp \
1543         rendering/RenderSVGHiddenContainer.cpp \
1544         rendering/RenderSVGImage.cpp \
1545         rendering/RenderSVGInline.cpp \
1546         rendering/RenderSVGInlineText.cpp \
1547         rendering/RenderSVGRoot.cpp \
1548         rendering/RenderSVGText.cpp \
1549         rendering/RenderSVGTextPath.cpp \
1550         rendering/RenderSVGTransformableContainer.cpp \
1551         rendering/RenderSVGTSpan.cpp \
1552         rendering/RenderSVGViewportContainer.cpp \
1553         rendering/SVGCharacterLayoutInfo.cpp \
1554         rendering/SVGInlineFlowBox.cpp \
1555         rendering/SVGInlineTextBox.cpp \
1556         rendering/SVGRenderSupport.cpp \
1557         rendering/SVGRootInlineBox.cpp
1558
1559 qt-port:SOURCES += \
1560         svg/graphics/qt/RenderPathQt.cpp \
1561         svg/graphics/qt/SVGPaintServerGradientQt.cpp \
1562         svg/graphics/qt/SVGPaintServerLinearGradientQt.cpp \
1563         svg/graphics/qt/SVGPaintServerPatternQt.cpp \
1564         svg/graphics/qt/SVGPaintServerQt.cpp \
1565         svg/graphics/qt/SVGPaintServerRadialGradientQt.cpp \
1566         svg/graphics/qt/SVGPaintServerSolidQt.cpp \
1567         svg/graphics/qt/SVGResourceClipperQt.cpp \
1568         svg/graphics/qt/SVGResourceFilterQt.cpp \
1569         svg/graphics/qt/SVGResourceMaskerQt.cpp
1570
1571 gtk-port:SOURCES += \
1572         svg/graphics/cairo/RenderPathCairo.cpp \
1573         svg/graphics/cairo/SVGPaintServerCairo.cpp \
1574         svg/graphics/cairo/SVGPaintServerGradientCairo.cpp \
1575         svg/graphics/cairo/SVGPaintServerPatternCairo.cpp \
1576         svg/graphics/cairo/SVGPaintServerSolidCairo.cpp \
1577         svg/graphics/cairo/SVGResourceClipperCairo.cpp \
1578         svg/graphics/cairo/SVGResourceMaskerCairo.cpp
1579
1580         # GENERATOR 5-C:
1581         svgnames_a.output = $$GENERATED_SOURCES_DIR/SVGNames.cpp
1582         svgnames_a.commands = perl $$PWD/dom/make_names.pl --tags $$PWD/svg/svgtags.in --attrs $$PWD/svg/svgattrs.in --namespace SVG --cppNamespace WebCore --namespaceURI 'http://www.w3.org/2000/svg' --factory --attrsNullNamespace --preprocessor \"$${QMAKE_MOC} -E\" --output $$GENERATED_SOURCES_DIR
1583         svgnames_a.input = SVG_NAMES
1584         svgnames_a.dependency_type = TYPE_C
1585         svgnames_a.CONFIG = target_predeps
1586         svgnames_a.variable_out = GENERATED_SOURCES
1587         svgnames_a.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}SVGNames.h
1588         addExtraCompiler(svgnames_a)
1589         svgnames_b.output = $$GENERATED_SOURCES_DIR/SVGElementFactory.cpp
1590         svgnames_b.commands = @echo -n ''
1591         svgnames_b.input = SVG_NAMES
1592         svgnames_b.depends = $$GENERATED_SOURCES_DIR/SVGNames.cpp
1593         svgnames_b.CONFIG = target_predeps
1594         svgnames_b.variable_out = GENERATED_SOURCES
1595         svgnames_b.clean += ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}SVGElementFactory.h ${QMAKE_FILE_OUT}
1596         addExtraCompiler(svgnames_b)
1597
1598         # GENERATOR 5-D:
1599         xlinknames.output = $$GENERATED_SOURCES_DIR/XLinkNames.cpp
1600         xlinknames.commands = perl $$PWD/dom/make_names.pl --attrs $$PWD/svg/xlinkattrs.in --namespace XLink --cppNamespace WebCore --namespaceURI 'http://www.w3.org/1999/xlink' --preprocessor \"$${QMAKE_MOC} -E\" --output $$GENERATED_SOURCES_DIR
1601         xlinknames.input = XLINK_NAMES
1602         xlinknames.dependency_type = TYPE_C
1603         xlinknames.CONFIG = target_predeps
1604         xlinknames.variable_out = GENERATED_SOURCES
1605         xlinknames.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}XLinkNames.h
1606         addExtraCompiler(xlinknames)
1607
1608     # GENERATOR 6-A:
1609     cssprops.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.c
1610     cssprops.input = WALDOCSSPROPS
1611     cssprops.commands = perl -ne \"print lc\" ${QMAKE_FILE_NAME} $$SVGCSSPROPERTIES > $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.in && cd $$GENERATED_SOURCES_DIR && perl $$PWD/css/makeprop.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.strip ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
1612     cssprops.CONFIG = target_predeps no_link
1613     cssprops.depend = ${QMAKE_FILE_NAME} SVGCSSPROPERTIES
1614     cssprops.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1615     addExtraCompiler(cssprops)
1616
1617     # GENERATOR 6-B:
1618     cssvalues.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.c
1619     cssvalues.input = WALDOCSSVALUES
1620     cssvalues.commands = perl -ne \"print lc\" ${QMAKE_FILE_NAME} $$SVGCSSVALUES > $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.in && cd $$GENERATED_SOURCES_DIR && perl $$PWD/css/makevalues.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.strip ${QMAKE_FILE_BASE}.gperf
1621     cssvalues.CONFIG = target_predeps no_link
1622     cssvalues.depend = ${QMAKE_FILE_NAME} SVGCSSVALUES
1623     cssvalues.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1624     addExtraCompiler(cssvalues)
1625 } else {
1626     # GENERATOR 6-A:
1627     cssprops.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.c
1628     cssprops.input = WALDOCSSPROPS
1629     cssprops.commands = $(COPY_FILE) ${QMAKE_FILE_NAME} $$GENERATED_SOURCES_DIR && cd $$GENERATED_SOURCES_DIR && perl $$PWD/css/makeprop.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.strip ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
1630     cssprops.CONFIG = target_predeps no_link
1631     cssprops.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1632     addExtraCompiler(cssprops)
1633
1634     # GENERATOR 6-B:
1635     cssvalues.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.c
1636     cssvalues.input = WALDOCSSVALUES
1637     cssvalues.commands = $(COPY_FILE) ${QMAKE_FILE_NAME} $$GENERATED_SOURCES_DIR && cd $$GENERATED_SOURCES_DIR && perl $$PWD/css/makevalues.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.strip ${QMAKE_FILE_BASE}.gperf
1638     cssvalues.CONFIG = target_predeps no_link
1639     cssvalues.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1640     addExtraCompiler(cssvalues)
1641 }
1642
1643
1644 # GENERATOR 1: IDL compiler
1645 idl.output = $$GENERATED_SOURCES_DIR/JS${QMAKE_FILE_BASE}.cpp
1646 idl.variable_out = GENERATED_SOURCES
1647 idl.input = IDL_BINDINGS
1648 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/svg --outputdir $$GENERATED_SOURCES_DIR --preprocessor \"$${QMAKE_MOC} -E\" ${QMAKE_FILE_NAME}
1649 idl.CONFIG += target_predeps
1650 idl.clean = ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}JS${QMAKE_FILE_BASE}.h ${QMAKE_FILE_OUT}
1651 addExtraCompiler(idl)
1652
1653 # GENERATOR 2-A: LUT creator
1654 #lut.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.lut.h
1655 #lut.commands = perl $$PWD/../JavaScriptCore/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
1656 #lut.depend = ${QMAKE_FILE_NAME}
1657 #lut.input = LUT_FILES
1658 #lut.CONFIG += no_link
1659 #QMAKE_EXTRA_COMPILERS += lut
1660
1661 # GENERATOR 2-B: like JavaScriptCore/LUT Generator, but rename output
1662 luttable.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}Table.cpp
1663 luttable.commands = perl $$PWD/../JavaScriptCore/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
1664 luttable.depend = ${QMAKE_FILE_NAME}
1665 luttable.input = LUT_TABLE_FILES
1666 luttable.CONFIG += no_link
1667 luttable.dependency_type = TYPE_C
1668 addExtraCompiler(luttable)
1669
1670 # GENERATOR 3: tokenizer (flex)
1671 tokenizer.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
1672 tokenizer.commands = flex -t < ${QMAKE_FILE_NAME} | perl $$PWD/css/maketokenizer > ${QMAKE_FILE_OUT}
1673 tokenizer.dependency_type = TYPE_C
1674 tokenizer.input = TOKENIZER
1675 tokenizer.CONFIG += target_predeps no_link
1676 addExtraCompiler(tokenizer)
1677
1678 # GENERATOR 4: CSS grammar
1679 cssbison.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
1680 cssbison.commands = perl $$PWD/css/makegrammar.pl ${QMAKE_FILE_NAME} $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}
1681 cssbison.depend = ${QMAKE_FILE_NAME}
1682 cssbison.input = CSSBISON
1683 cssbison.CONFIG = target_predeps
1684 cssbison.dependency_type = TYPE_C
1685 cssbison.variable_out = GENERATED_SOURCES
1686 cssbison.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1687 addExtraCompiler(cssbison)
1688 #PRE_TARGETDEPS += $$GENERATED_SOURCES_DIR/CSSGrammar.cpp
1689 grammar_h_dep.target = tmp/CSSParser.o
1690 grammar_h_dep.depends = $$GENERATED_SOURCES_DIR/CSSGrammar.cpp $$GENERATED_SOURCES_DIR/HTMLNames.cpp
1691 QMAKE_EXTRA_TARGETS += grammar_h_dep
1692
1693 # GENERATOR 5-A:
1694 htmlnames.output = $$GENERATED_SOURCES_DIR/HTMLNames.cpp
1695 htmlnames.commands = perl $$PWD/dom/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 --preprocessor \"$${QMAKE_MOC} -E\" --output $$GENERATED_SOURCES_DIR
1696 htmlnames.input = HTML_NAMES
1697 htmlnames.dependency_type = TYPE_C
1698 htmlnames.CONFIG = target_predeps
1699 htmlnames.variable_out = GENERATED_SOURCES
1700 htmlnames.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}HTMLNames.h
1701 addExtraCompiler(htmlnames)
1702
1703 # GENERATOR 5-B:
1704 xmlnames.output = $$GENERATED_SOURCES_DIR/XMLNames.cpp
1705 xmlnames.commands = perl $$PWD/dom/make_names.pl --attrs $$PWD/xml/xmlattrs.in --namespace XML --cppNamespace WebCore --namespaceURI 'http://www.w3.org/XML/1998/namespace' --preprocessor \"$${QMAKE_MOC} -E\" --output $$GENERATED_SOURCES_DIR
1706 xmlnames.input = XML_NAMES
1707 xmlnames.dependency_type = TYPE_C
1708 xmlnames.CONFIG = target_predeps
1709 xmlnames.variable_out = GENERATED_SOURCES
1710 xmlnames.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}XMLNames.h
1711 addExtraCompiler(xmlnames)
1712
1713 # GENERATOR 8-A:
1714 entities.output = $$GENERATED_SOURCES_DIR/HTMLEntityNames.c
1715 entities.commands = gperf -a -L ANSI-C -C -G -c -o -t --key-positions="*" -N findEntity -D -s 2 < $$PWD/html/HTMLEntityNames.gperf > $$GENERATED_SOURCES_DIR/HTMLEntityNames.c
1716 entities.input = ENTITIES_GPERF
1717 entities.dependency_type = TYPE_C
1718 entities.CONFIG = target_predeps no_link
1719 entities.clean = ${QMAKE_FILE_OUT}
1720 addExtraCompiler(entities)
1721
1722 # GENERATOR 8-B:
1723 doctypestrings.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
1724 doctypestrings.input = DOCTYPESTRINGS
1725 doctypestrings.commands = perl -e \"print \'$${LITERAL_HASH}include <string.h>\';\" > ${QMAKE_FILE_OUT} && echo // bogus >> ${QMAKE_FILE_OUT} && gperf -CEot -L ANSI-C --key-positions="*" -N findDoctypeEntry -F ,PubIDInfo::eAlmostStandards,PubIDInfo::eAlmostStandards < ${QMAKE_FILE_NAME} >> ${QMAKE_FILE_OUT}
1726 doctypestrings.dependency_type = TYPE_C
1727 doctypestrings.CONFIG += target_predeps no_link
1728 doctypestrings.clean = ${QMAKE_FILE_OUT}
1729 addExtraCompiler(doctypestrings)
1730
1731 # GENERATOR 8-C:
1732 colordata.output = $$GENERATED_SOURCES_DIR/ColorData.c
1733 colordata.commands = perl -e \"print \'$${LITERAL_HASH}include <string.h>\';\" > ${QMAKE_FILE_OUT} && echo // bogus >> ${QMAKE_FILE_OUT} && gperf -CDEot -L ANSI-C --key-positions="*" -N findColor -D -s 2 < ${QMAKE_FILE_NAME} >> ${QMAKE_FILE_OUT}
1734 colordata.input = COLORDAT_GPERF
1735 colordata.CONFIG = target_predeps no_link
1736 addExtraCompiler(colordata)
1737
1738 # GENERATOR 9:
1739 stylesheets.output = $$GENERATED_SOURCES_DIR/UserAgentStyleSheetsData.cpp
1740 stylesheets.commands = perl $$PWD/css/make-css-file-arrays.pl --preprocessor \"$${QMAKE_MOC} -E\" $$GENERATED_SOURCES_DIR/UserAgentStyleSheets.h $$GENERATED_SOURCES_DIR/UserAgentStyleSheetsData.cpp $$PWD/css/html4.css $$PWD/css/quirks.css $$PWD/css/svg.css $$PWD/css/view-source.css
1741 stylesheets.input = STYLESHEETS_EMBED
1742 stylesheets.CONFIG = target_predeps
1743 stylesheets.variable_out = GENERATED_SOURCES
1744 stylesheets.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}UserAgentStyleSheets.h
1745 addExtraCompiler(stylesheets)
1746
1747 # GENERATOR 10: XPATH grammar
1748 xpathbison.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
1749 xpathbison.commands = bison -d -p xpathyy ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_BASE}.tab.c && $(MOVE) ${QMAKE_FILE_BASE}.tab.c $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp && $(MOVE) ${QMAKE_FILE_BASE}.tab.h $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.h
1750 xpathbison.depend = ${QMAKE_FILE_NAME}
1751 xpathbison.input = XPATHBISON
1752 xpathbison.CONFIG = target_predeps
1753 xpathbison.dependency_type = TYPE_C
1754 xpathbison.variable_out = GENERATED_SOURCES
1755 xpathbison.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR_SLASH}${QMAKE_FILE_BASE}.h
1756 addExtraCompiler(xpathbison)
1757
1758 qt-port:!CONFIG(QTDIR_build) {
1759     target.path = $$[QT_INSTALL_LIBS]
1760     include($$PWD/../WebKit/qt/Api/headers.pri)
1761     headers.files = $$WEBKIT_API_HEADERS
1762     headers.path = $$[QT_INSTALL_HEADERS]/QtWebKit
1763     prf.files = $$PWD/../WebKit/qt/Api/qtwebkit.prf
1764     prf.path = $$[QT_INSTALL_PREFIX]/mkspecs/features
1765
1766     VERSION=$${QT_MAJOR_VERSION}.$${QT_MINOR_VERSION}.$${QT_PATCH_VERSION}
1767
1768     win32-* {
1769         DLLDESTDIR = $$OUTPUT_DIR/bin
1770
1771         dlltarget.commands = $(COPY_FILE) $(DESTDIR)$(TARGET) $$[QT_INSTALL_BINS]
1772         dlltarget.CONFIG = no_path
1773         INSTALLS += dlltarget
1774     }
1775
1776
1777     INSTALLS += target headers prf
1778
1779     unix {
1780         CONFIG += create_pc create_prl
1781         QMAKE_PKGCONFIG_LIBDIR = $$target.path
1782         QMAKE_PKGCONFIG_INCDIR = $$headers.path
1783         QMAKE_PKGCONFIG_DESTDIR = pkgconfig
1784         lib_replace.match = $$DESTDIR
1785         lib_replace.replace = $$[QT_INSTALL_LIBS]
1786         QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
1787     }
1788 }
1789
1790 gtk-port {
1791     isEmpty(WEBKIT_LIB_DIR):WEBKIT_LIB_DIR=/usr/local/lib
1792     isEmpty(WEBKIT_INC_DIR):WEBKIT_INC_DIR=/usr/local/include/WebKitGtk
1793
1794     target.path = $$WEBKIT_LIB_DIR
1795     INSTALLS += target
1796
1797     include($$PWD/../WebKit/gtk/WebView/headers.pri)
1798     headers.files = $$WEBKIT_API_HEADERS
1799     headers.path = $$WEBKIT_INC_DIR
1800     INSTALLS += headers
1801
1802     include($$PWD/../JavaScriptCore/headers.pri)
1803     jsheaders.files = $$JS_API_HEADERS
1804     jsheaders.path = $$WEBKIT_INC_DIR/JavaScriptCore
1805     INSTALLS += jsheaders
1806
1807     unix {
1808         CONFIG += create_pc create_prl
1809         QMAKE_PKGCONFIG_LIBDIR = $$target.path
1810         QMAKE_PKGCONFIG_INCDIR = $$headers.path
1811         QMAKE_PKGCONFIG_DESTDIR = pkgconfig
1812         lib_replace.match = $$DESTDIR
1813         lib_replace.replace = $$[QT_INSTALL_LIBS]
1814         QMAKE_PKGCONFIG_INSTALL_REPLACE += lib_replace
1815     }
1816
1817     GENMARSHALS = ../WebKit/gtk/WebView/webkit-marshal.list
1818     GENMARSHALS_PREFIX = webkit_marshal
1819
1820     #
1821     # integrate glib-genmarshal as additional compiler
1822     #
1823     QMAKE_GENMARSHAL_CC = glib-genmarshal
1824     glib-genmarshal.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
1825     glib-genmarshal.commands = echo 'extern \\"C\\" {' > ${QMAKE_FILE_OUT} && $${QMAKE_GENMARSHAL_CC} --prefix=$${GENMARSHALS_PREFIX} ${QMAKE_FILE_IN} --body >> ${QMAKE_FILE_OUT} && echo '}' >> ${QMAKE_FILE_OUT}
1826     glib-genmarshal.input = GENMARSHALS
1827     glib-genmarshal.variable_out = GENERATED_SOURCES
1828     glib-genmarshal.name = GENMARSHALS
1829     QMAKE_EXTRA_UNIX_COMPILERS += glib-genmarshal
1830
1831     glib-genmarshalh.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.h
1832     glib-genmarshalh.commands = $${QMAKE_GENMARSHAL_CC} --prefix=$${GENMARSHALS_PREFIX} ${QMAKE_FILE_IN} --header > $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.h
1833     glib-genmarshalh.input = GENMARSHALS
1834     glib-genmarshalh.variable_out = GENERATED_SOURCES
1835     glib-genmarshalh.name = GENMARSHALS
1836     QMAKE_EXTRA_UNIX_COMPILERS += glib-genmarshalh
1837 }