[Qt] Split the build process in two different .pro files.
[WebKit-https.git] / WebCore / WebCore.pri
1 CONFIG(standalone_package) {
2     isEmpty(WC_GENERATED_SOURCES_DIR):WC_GENERATED_SOURCES_DIR = $$PWD/generated
3 } else {
4     isEmpty(WC_GENERATED_SOURCES_DIR):WC_GENERATED_SOURCES_DIR = generated
5 }
6
7 ## Define default features macros for optional components
8 ## (look for defs in config.h and included files!)
9 # Try to locate sqlite3 source
10 CONFIG(QTDIR_build) {
11     SQLITE3SRCDIR = $$QT_SOURCE_TREE/src/3rdparty/sqlite/
12 } else {
13     SQLITE3SRCDIR = $$(SQLITE3SRCDIR)
14     isEmpty(SQLITE3SRCDIR) {
15         SQLITE3SRCDIR = $$[QT_INSTALL_PREFIX]/src/3rdparty/sqlite/
16     }
17 }
18
19 contains(DEFINES, ENABLE_SINGLE_THREADED=1) {
20     DEFINES+=ENABLE_DATABASE=0 ENABLE_DOM_STORAGE=0 ENABLE_ICONDATABASE=0 ENABLE_WORKERS=0 ENABLE_SHARED_WORKERS=0
21 }
22
23 # turn off SQLITE support if we do not have sqlite3 available
24 !CONFIG(QTDIR_build):win32-*:!exists( $${SQLITE3SRCDIR}/sqlite3.c ): DEFINES += ENABLE_SQLITE=0 ENABLE_DATABASE=0 ENABLE_ICONDATABASE=0 ENABLE_OFFLINE_WEB_APPLICATIONS=0 ENABLE_DOM_STORAGE=0
25
26 !contains(DEFINES, ENABLE_JAVASCRIPT_DEBUGGER=.): DEFINES += ENABLE_JAVASCRIPT_DEBUGGER=1
27 !contains(DEFINES, ENABLE_DATABASE=.): DEFINES += ENABLE_DATABASE=1
28 !contains(DEFINES, ENABLE_EVENTSOURCE=.): DEFINES += ENABLE_EVENTSOURCE=1
29 !contains(DEFINES, ENABLE_OFFLINE_WEB_APPLICATIONS=.): DEFINES += ENABLE_OFFLINE_WEB_APPLICATIONS=1
30 !contains(DEFINES, ENABLE_DOM_STORAGE=.): DEFINES += ENABLE_DOM_STORAGE=1
31 !contains(DEFINES, ENABLE_ICONDATABASE=.): DEFINES += ENABLE_ICONDATABASE=1
32 !contains(DEFINES, ENABLE_CHANNEL_MESSAGING=.): DEFINES += ENABLE_CHANNEL_MESSAGING=1
33 !contains(DEFINES, ENABLE_ORIENTATION_EVENTS=.): DEFINES += ENABLE_ORIENTATION_EVENTS=0
34
35 # turn on SQLITE support if any of the dependent features are turned on
36 !contains(DEFINES, ENABLE_SQLITE=.) {
37   contains(DEFINES, ENABLE_DATABASE=1)|contains(DEFINES, ENABLE_ICONDATABASE=1)|contains(DEFINES, ENABLE_DOM_STORAGE=1)|contains(DEFINES, ENABLE_OFFLINE_WEB_APPLICATIONS=1) {
38     DEFINES += ENABLE_SQLITE=1
39   } else {
40     DEFINES += ENABLE_SQLITE=0
41   }
42 }
43
44 !contains(DEFINES, ENABLE_DASHBOARD_SUPPORT=.): DEFINES += ENABLE_DASHBOARD_SUPPORT=0
45 !contains(DEFINES, ENABLE_FILTERS=.): DEFINES += ENABLE_FILTERS=1
46 !contains(DEFINES, ENABLE_XPATH=.): DEFINES += ENABLE_XPATH=1
47 #!contains(DEFINES, ENABLE_XBL=.): DEFINES += ENABLE_XBL=1
48 !contains(DEFINES, ENABLE_WCSS=.): DEFINES += ENABLE_WCSS=0
49 !contains(DEFINES, ENABLE_WML=.): DEFINES += ENABLE_WML=0
50 !contains(DEFINES, ENABLE_SHARED_WORKERS=.): DEFINES += ENABLE_SHARED_WORKERS=1
51 !contains(DEFINES, ENABLE_WORKERS=.): DEFINES += ENABLE_WORKERS=1
52 !contains(DEFINES, ENABLE_XHTMLMP=.): DEFINES += ENABLE_XHTMLMP=0
53 !contains(DEFINES, ENABLE_DATAGRID=.): DEFINES += ENABLE_DATAGRID=0
54 !contains(DEFINES, ENABLE_VIDEO=.): DEFINES += ENABLE_VIDEO=1
55
56 # SVG support
57 !contains(DEFINES, ENABLE_SVG=0) {
58     !contains(DEFINES, ENABLE_SVG=.): DEFINES += ENABLE_SVG=1
59     !contains(DEFINES, ENABLE_SVG_FONTS=.): DEFINES += ENABLE_SVG_FONTS=1
60     !contains(DEFINES, ENABLE_SVG_FOREIGN_OBJECT=.): DEFINES += ENABLE_SVG_FOREIGN_OBJECT=1
61     !contains(DEFINES, ENABLE_SVG_ANIMATION=.): DEFINES += ENABLE_SVG_ANIMATION=1
62     !contains(DEFINES, ENABLE_SVG_AS_IMAGE=.): DEFINES += ENABLE_SVG_AS_IMAGE=1
63     !contains(DEFINES, ENABLE_SVG_USE=.): DEFINES += ENABLE_SVG_USE=1
64 } else {
65     DEFINES += ENABLE_SVG_FONTS=0 ENABLE_SVG_FOREIGN_OBJECT=0 ENABLE_SVG_ANIMATION=0 ENABLE_SVG_AS_IMAGE=0 ENABLE_SVG_USE=0
66 }
67
68 # HTML5 media support
69 !contains(DEFINES, ENABLE_VIDEO=.): DEFINES += ENABLE_VIDEO=1
70
71 # HTML5 datalist support
72 !contains(DEFINES, ENABLE_DATALIST=.): DEFINES += ENABLE_DATALIST=1
73
74 # Nescape plugins support (NPAPI)
75 !contains(DEFINES, ENABLE_NETSCAPE_PLUGIN_API=.) {
76     unix|win32-*:!embedded:!wince*: {
77         DEFINES += ENABLE_NETSCAPE_PLUGIN_API=1
78     } else {
79         DEFINES += ENABLE_NETSCAPE_PLUGIN_API=0
80     }
81 }
82
83 # Web Socket support.
84 !contains(DEFINES, ENABLE_WEB_SOCKETS=.): DEFINES += ENABLE_WEB_SOCKETS=1
85
86 # XSLT support with QtXmlPatterns
87 !contains(DEFINES, ENABLE_XSLT=.) {
88     contains(QT_CONFIG, xmlpatterns):!lessThan(QT_MINOR_VERSION, 5):DEFINES += ENABLE_XSLT=1
89     else:DEFINES += ENABLE_XSLT=0
90 }
91
92 !CONFIG(QTDIR_build):!contains(DEFINES, ENABLE_QT_BEARER=.) {
93     symbian: {
94         exists($${EPOCROOT}epoc32/release/winscw/udeb/QtBearer.lib)| \
95         exists($${EPOCROOT}epoc32/release/armv5/lib/QtBearer.lib) {
96             DEFINES += ENABLE_QT_BEARER=1
97         }
98     }
99 }
100
101 DEFINES += WTF_CHANGES=1
102
103 # Enable touch event support with Qt 4.6
104 !lessThan(QT_MINOR_VERSION, 6): DEFINES += ENABLE_TOUCH_EVENTS=1
105
106 # Used to compute defaults for the build-webkit script
107 CONFIG(compute_defaults) {
108     message($$DEFINES)
109     error("Done computing defaults")
110 }
111
112 contains(DEFINES, ENABLE_WCSS=1) {
113     contains(DEFINES, ENABLE_XHTMLMP=0) {
114         DEFINES -= ENABLE_XHTMLMP=0
115         DEFINES += ENABLE_XHTMLMP=1
116     }
117 }
118
119 ## Forward enabled feature macros to JavaScript enabled features macros
120 FEATURE_DEFINES_JAVASCRIPT = LANGUAGE_JAVASCRIPT=1
121 contains(DEFINES, ENABLE_CHANNEL_MESSAGING=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_CHANNEL_MESSAGING=1
122 contains(DEFINES, ENABLE_ORIENTATION_EVENTS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_ORIENTATION_EVENTS=1
123 contains(DEFINES, ENABLE_DASHBOARD_SUPPORT=0): DASHBOARDSUPPORTCSSPROPERTIES -= $$PWD/css/DashboardSupportCSSPropertyNames.in
124 contains(DEFINES, ENABLE_DATAGRID=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_DATAGRID=1
125 contains(DEFINES, ENABLE_EVENTSOURCE=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_EVENTSOURCE=1
126 contains(DEFINES, ENABLE_DATABASE=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_DATABASE=1
127 contains(DEFINES, ENABLE_DOM_STORAGE=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_DOM_STORAGE=1
128 contains(DEFINES, ENABLE_SHARED_SCRIPT=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_SHARED_SCRIPT=1
129 contains(DEFINES, ENABLE_WORKERS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_WORKERS=1
130 contains(DEFINES, ENABLE_SHARED_WORKERS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_SHARED_WORKERS=1
131 contains(DEFINES, ENABLE_VIDEO=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_VIDEO=1
132 contains(DEFINES, ENABLE_XPATH=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_XPATH=1
133 contains(DEFINES, ENABLE_XSLT=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_XSLT=1
134 contains(DEFINES, ENABLE_XBL=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_XBL=1
135 contains(DEFINES, ENABLE_FILTERS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_FILTERS=1
136 contains(DEFINES, ENABLE_WCSS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_WCSS=1
137 contains(DEFINES, ENABLE_WML=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_WML=1
138 contains(DEFINES, ENABLE_XHTMLMP=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_XHTMLMP=1
139 contains(DEFINES, ENABLE_SVG=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_SVG=1
140 contains(DEFINES, ENABLE_JAVASCRIPT_DEBUGGER=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_JAVASCRIPT_DEBUGGER=1
141 contains(DEFINES, ENABLE_OFFLINE_WEB_APPLICATIONS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_OFFLINE_WEB_APPLICATIONS=1
142 contains(DEFINES, ENABLE_WEB_SOCKETS=1): FEATURE_DEFINES_JAVASCRIPT += ENABLE_WEB_SOCKETS=1
143
144
145 ## Derived source generators
146 WML_NAMES = $$PWD/wml/WMLTagNames.in
147
148 SVG_NAMES = $$PWD/svg/svgtags.in
149
150 XLINK_NAMES = $$PWD/svg/xlinkattrs.in
151
152 TOKENIZER = $$PWD/css/tokenizer.flex
153
154 DOCTYPESTRINGS = $$PWD/html/DocTypeStrings.gperf
155
156 CSSBISON = $$PWD/css/CSSGrammar.y
157
158 HTML_NAMES = $$PWD/html/HTMLTagNames.in
159
160 XML_NAMES = $$PWD/xml/xmlattrs.in
161
162 ENTITIES_GPERF = $$PWD/html/HTMLEntityNames.gperf
163
164 COLORDAT_GPERF = $$PWD/platform/ColorData.gperf
165
166 WALDOCSSPROPS = $$PWD/css/CSSPropertyNames.in
167
168 WALDOCSSVALUES = $$PWD/css/CSSValueKeywords.in
169
170 DASHBOARDSUPPORTCSSPROPERTIES = $$PWD/css/DashboardSupportCSSPropertyNames.in
171
172 XPATHBISON = $$PWD/xml/XPathGrammar.y
173
174 contains(DEFINES, ENABLE_SVG=1) {
175     EXTRACSSPROPERTIES += $$PWD/css/SVGCSSPropertyNames.in
176     EXTRACSSVALUES += $$PWD/css/SVGCSSValueKeywords.in
177 }
178
179 contains(DEFINES, ENABLE_WCSS=1) {
180     EXTRACSSPROPERTIES += $$PWD/css/WCSSPropertyNames.in
181     EXTRACSSVALUES += $$PWD/css/WCSSValueKeywords.in
182 }
183
184 STYLESHEETS_EMBED = \
185     $$PWD/css/html.css \
186     $$PWD/css/quirks.css \
187     $$PWD/css/svg.css \
188     $$PWD/css/view-source.css \
189     $$PWD/css/wml.css \
190     $$PWD/css/mediaControls.css \
191     $$PWD/css/mediaControlsQt.css
192
193 IDL_BINDINGS += \
194     css/Counter.idl \
195     css/CSSCharsetRule.idl \
196     css/CSSFontFaceRule.idl \
197     css/CSSImportRule.idl \
198     css/CSSMediaRule.idl \
199     css/CSSPageRule.idl \
200     css/CSSPrimitiveValue.idl \
201     css/CSSRule.idl \
202     css/CSSRuleList.idl \
203     css/CSSStyleDeclaration.idl \
204     css/CSSStyleRule.idl \
205     css/CSSStyleSheet.idl \
206     css/CSSValue.idl \
207     css/CSSValueList.idl \
208     css/CSSVariablesDeclaration.idl \
209     css/CSSVariablesRule.idl \
210     css/Media.idl \
211     css/MediaList.idl \
212     css/RGBColor.idl \
213     css/Rect.idl \
214     css/StyleSheet.idl \
215     css/StyleSheetList.idl \
216     css/WebKitCSSKeyframeRule.idl \
217     css/WebKitCSSKeyframesRule.idl \
218     css/WebKitCSSMatrix.idl \
219     css/WebKitCSSTransformValue.idl \
220     dom/Attr.idl \
221     dom/BeforeLoadEvent.idl \
222     dom/CharacterData.idl \
223     dom/ClientRect.idl \
224     dom/ClientRectList.idl \
225     dom/Clipboard.idl \
226     dom/CDATASection.idl \
227     dom/Comment.idl \
228     dom/CompositionEvent.idl \
229     dom/DocumentFragment.idl \
230     dom/Document.idl \
231     dom/DocumentType.idl \
232     dom/DOMCoreException.idl \
233     dom/DOMImplementation.idl \
234     dom/Element.idl \
235     dom/Entity.idl \
236     dom/EntityReference.idl \
237     dom/ErrorEvent.idl \
238     dom/Event.idl \
239     dom/EventException.idl \
240 #    dom/EventListener.idl \
241 #    dom/EventTarget.idl \
242     dom/KeyboardEvent.idl \
243     dom/MouseEvent.idl \
244     dom/MessageChannel.idl \
245     dom/MessageEvent.idl \
246     dom/MessagePort.idl \
247     dom/MutationEvent.idl \
248     dom/NamedNodeMap.idl \
249     dom/Node.idl \
250     dom/NodeFilter.idl \
251     dom/NodeIterator.idl \
252     dom/NodeList.idl \
253     dom/Notation.idl \
254     dom/OverflowEvent.idl \
255     dom/PageTransitionEvent.idl \
256     dom/PopStateEvent.idl \
257     dom/ProcessingInstruction.idl \
258     dom/ProgressEvent.idl \
259     dom/RangeException.idl \
260     dom/Range.idl \
261     dom/Text.idl \
262     dom/TextEvent.idl \
263     dom/Touch.idl \
264     dom/TouchEvent.idl \
265     dom/TouchList.idl \
266     dom/TreeWalker.idl \
267     dom/UIEvent.idl \
268     dom/WebKitAnimationEvent.idl \
269     dom/WebKitTransitionEvent.idl \
270     dom/WheelEvent.idl \
271     html/canvas/WebGLArray.idl \
272     html/canvas/WebGLArrayBuffer.idl \
273     html/canvas/WebGLByteArray.idl \
274     html/canvas/WebGLFloatArray.idl \
275     html/canvas/CanvasGradient.idl \
276     html/canvas/WebGLIntArray.idl \
277     html/canvas/CanvasPattern.idl \
278     html/canvas/CanvasRenderingContext.idl \
279     html/canvas/CanvasRenderingContext2D.idl \
280     html/canvas/WebGLRenderingContext.idl \
281     html/canvas/WebGLShortArray.idl \
282     html/canvas/WebGLUnsignedByteArray.idl \
283     html/canvas/WebGLUnsignedIntArray.idl \
284     html/canvas/WebGLUnsignedShortArray.idl \
285     html/DataGridColumn.idl \
286     html/DataGridColumnList.idl \
287     html/File.idl \
288     html/FileList.idl \
289     html/HTMLAllCollection.idl \
290     html/HTMLAudioElement.idl \
291     html/HTMLAnchorElement.idl \
292     html/HTMLAppletElement.idl \
293     html/HTMLAreaElement.idl \
294     html/HTMLBaseElement.idl \
295     html/HTMLBaseFontElement.idl \
296     html/HTMLBlockquoteElement.idl \
297     html/HTMLBodyElement.idl \
298     html/HTMLBRElement.idl \
299     html/HTMLButtonElement.idl \
300     html/HTMLCanvasElement.idl \
301     html/HTMLCollection.idl \
302     html/HTMLDataGridElement.idl \
303     html/HTMLDataGridCellElement.idl \
304     html/HTMLDataGridColElement.idl \
305     html/HTMLDataGridRowElement.idl \
306     html/HTMLDataListElement.idl \
307     html/HTMLDirectoryElement.idl \
308     html/HTMLDivElement.idl \
309     html/HTMLDListElement.idl \
310     html/HTMLDocument.idl \
311     html/HTMLElement.idl \
312     html/HTMLEmbedElement.idl \
313     html/HTMLFieldSetElement.idl \
314     html/HTMLFontElement.idl \
315     html/HTMLFormElement.idl \
316     html/HTMLFrameElement.idl \
317     html/HTMLFrameSetElement.idl \
318     html/HTMLHeadElement.idl \
319     html/HTMLHeadingElement.idl \
320     html/HTMLHRElement.idl \
321     html/HTMLHtmlElement.idl \
322     html/HTMLIFrameElement.idl \
323     html/HTMLImageElement.idl \
324     html/HTMLInputElement.idl \
325     html/HTMLIsIndexElement.idl \
326     html/HTMLLabelElement.idl \
327     html/HTMLLegendElement.idl \
328     html/HTMLLIElement.idl \
329     html/HTMLLinkElement.idl \
330     html/HTMLMapElement.idl \
331     html/HTMLMarqueeElement.idl \
332     html/HTMLMediaElement.idl \
333     html/HTMLMenuElement.idl \
334     html/HTMLMetaElement.idl \
335     html/HTMLModElement.idl \
336     html/HTMLObjectElement.idl \
337     html/HTMLOListElement.idl \
338     html/HTMLOptGroupElement.idl \
339     html/HTMLOptionElement.idl \
340     html/HTMLOptionsCollection.idl \
341     html/HTMLParagraphElement.idl \
342     html/HTMLParamElement.idl \
343     html/HTMLPreElement.idl \
344     html/HTMLQuoteElement.idl \
345     html/HTMLScriptElement.idl \
346     html/HTMLSelectElement.idl \
347     html/HTMLSourceElement.idl \
348     html/HTMLStyleElement.idl \
349     html/HTMLTableCaptionElement.idl \
350     html/HTMLTableCellElement.idl \
351     html/HTMLTableColElement.idl \
352     html/HTMLTableElement.idl \
353     html/HTMLTableRowElement.idl \
354     html/HTMLTableSectionElement.idl \
355     html/HTMLTextAreaElement.idl \
356     html/HTMLTitleElement.idl \
357     html/HTMLUListElement.idl \
358     html/HTMLVideoElement.idl \
359     html/ImageData.idl \
360     html/MediaError.idl \
361     html/TextMetrics.idl \
362     html/TimeRanges.idl \
363     html/ValidityState.idl \
364     html/VoidCallback.idl \
365     inspector/InjectedScriptHost.idl \
366     inspector/InspectorBackend.idl \
367     inspector/InspectorFrontendHost.idl \
368     inspector/JavaScriptCallFrame.idl \
369     loader/appcache/DOMApplicationCache.idl \
370     page/BarInfo.idl \
371     page/Console.idl \
372     page/Coordinates.idl \
373     page/DOMSelection.idl \
374     page/DOMWindow.idl \
375     page/EventSource.idl \
376     page/Geolocation.idl \
377     page/Geoposition.idl \
378     page/History.idl \
379     page/Location.idl \
380     page/Navigator.idl \
381     page/PositionError.idl \
382     page/Screen.idl \
383     page/WebKitPoint.idl \
384     page/WorkerNavigator.idl \
385     plugins/Plugin.idl \
386     plugins/MimeType.idl \
387     plugins/PluginArray.idl \
388     plugins/MimeTypeArray.idl \
389     storage/Database.idl \
390     storage/Storage.idl \
391     storage/StorageEvent.idl \
392     storage/SQLError.idl \
393     storage/SQLResultSet.idl \
394     storage/SQLResultSetRowList.idl \
395     storage/SQLTransaction.idl \
396     svg/SVGZoomEvent.idl \
397     svg/SVGAElement.idl \
398     svg/SVGAltGlyphElement.idl \
399     svg/SVGAngle.idl \
400     svg/SVGAnimateColorElement.idl \
401     svg/SVGAnimatedAngle.idl \
402     svg/SVGAnimatedBoolean.idl \
403     svg/SVGAnimatedEnumeration.idl \
404     svg/SVGAnimatedInteger.idl \
405     svg/SVGAnimatedLength.idl \
406     svg/SVGAnimatedLengthList.idl \
407     svg/SVGAnimatedNumber.idl \
408     svg/SVGAnimatedNumberList.idl \
409     svg/SVGAnimatedPreserveAspectRatio.idl \
410     svg/SVGAnimatedRect.idl \
411     svg/SVGAnimatedString.idl \
412     svg/SVGAnimatedTransformList.idl \
413     svg/SVGAnimateElement.idl \
414     svg/SVGAnimateTransformElement.idl \
415     svg/SVGAnimationElement.idl \
416     svg/SVGCircleElement.idl \
417     svg/SVGClipPathElement.idl \
418     svg/SVGColor.idl \
419     svg/SVGComponentTransferFunctionElement.idl \
420     svg/SVGCursorElement.idl \
421     svg/SVGDefsElement.idl \
422     svg/SVGDescElement.idl \
423     svg/SVGDocument.idl \
424     svg/SVGElement.idl \
425     svg/SVGElementInstance.idl \
426     svg/SVGElementInstanceList.idl \
427     svg/SVGEllipseElement.idl \
428     svg/SVGException.idl \
429     svg/SVGFEBlendElement.idl \
430     svg/SVGFEColorMatrixElement.idl \
431     svg/SVGFEComponentTransferElement.idl \
432     svg/SVGFECompositeElement.idl \
433     svg/SVGFEDiffuseLightingElement.idl \
434     svg/SVGFEDisplacementMapElement.idl \
435     svg/SVGFEDistantLightElement.idl \
436     svg/SVGFEFloodElement.idl \
437     svg/SVGFEFuncAElement.idl \
438     svg/SVGFEFuncBElement.idl \
439     svg/SVGFEFuncGElement.idl \
440     svg/SVGFEFuncRElement.idl \
441     svg/SVGFEGaussianBlurElement.idl \
442     svg/SVGFEImageElement.idl \
443     svg/SVGFEMergeElement.idl \
444     svg/SVGFEMergeNodeElement.idl \
445     svg/SVGFEMorphologyElement.idl \
446     svg/SVGFEOffsetElement.idl \
447     svg/SVGFEPointLightElement.idl \
448     svg/SVGFESpecularLightingElement.idl \
449     svg/SVGFESpotLightElement.idl \
450     svg/SVGFETileElement.idl \
451     svg/SVGFETurbulenceElement.idl \
452     svg/SVGFilterElement.idl \
453     svg/SVGFontElement.idl \
454     svg/SVGFontFaceElement.idl \
455     svg/SVGFontFaceFormatElement.idl \
456     svg/SVGFontFaceNameElement.idl \
457     svg/SVGFontFaceSrcElement.idl \
458     svg/SVGFontFaceUriElement.idl \
459     svg/SVGForeignObjectElement.idl \
460     svg/SVGGElement.idl \
461     svg/SVGGlyphElement.idl \
462     svg/SVGGradientElement.idl \
463     svg/SVGHKernElement.idl \
464     svg/SVGImageElement.idl \
465     svg/SVGLength.idl \
466     svg/SVGLengthList.idl \
467     svg/SVGLinearGradientElement.idl \
468     svg/SVGLineElement.idl \
469     svg/SVGMarkerElement.idl \
470     svg/SVGMaskElement.idl \
471     svg/SVGMatrix.idl \
472     svg/SVGMetadataElement.idl \
473     svg/SVGMissingGlyphElement.idl \
474     svg/SVGNumber.idl \
475     svg/SVGNumberList.idl \
476     svg/SVGPaint.idl \
477     svg/SVGPathElement.idl \
478     svg/SVGPathSegArcAbs.idl \
479     svg/SVGPathSegArcRel.idl \
480     svg/SVGPathSegClosePath.idl \
481     svg/SVGPathSegCurvetoCubicAbs.idl \
482     svg/SVGPathSegCurvetoCubicRel.idl \
483     svg/SVGPathSegCurvetoCubicSmoothAbs.idl \
484     svg/SVGPathSegCurvetoCubicSmoothRel.idl \
485     svg/SVGPathSegCurvetoQuadraticAbs.idl \
486     svg/SVGPathSegCurvetoQuadraticRel.idl \
487     svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl \
488     svg/SVGPathSegCurvetoQuadraticSmoothRel.idl \
489     svg/SVGPathSeg.idl \
490     svg/SVGPathSegLinetoAbs.idl \
491     svg/SVGPathSegLinetoHorizontalAbs.idl \
492     svg/SVGPathSegLinetoHorizontalRel.idl \
493     svg/SVGPathSegLinetoRel.idl \
494     svg/SVGPathSegLinetoVerticalAbs.idl \
495     svg/SVGPathSegLinetoVerticalRel.idl \
496     svg/SVGPathSegList.idl \
497     svg/SVGPathSegMovetoAbs.idl \
498     svg/SVGPathSegMovetoRel.idl \
499     svg/SVGPatternElement.idl \
500     svg/SVGPoint.idl \
501     svg/SVGPointList.idl \
502     svg/SVGPolygonElement.idl \
503     svg/SVGPolylineElement.idl \
504     svg/SVGPreserveAspectRatio.idl \
505     svg/SVGRadialGradientElement.idl \
506     svg/SVGRectElement.idl \
507     svg/SVGRect.idl \
508     svg/SVGRenderingIntent.idl \
509     svg/SVGScriptElement.idl \
510     svg/SVGSetElement.idl \
511     svg/SVGStopElement.idl \
512     svg/SVGStringList.idl \
513     svg/SVGStyleElement.idl \
514     svg/SVGSVGElement.idl \
515     svg/SVGSwitchElement.idl \
516     svg/SVGSymbolElement.idl \
517     svg/SVGTextContentElement.idl \
518     svg/SVGTextElement.idl \
519     svg/SVGTextPathElement.idl \
520     svg/SVGTextPositioningElement.idl \
521     svg/SVGTitleElement.idl \
522     svg/SVGTransform.idl \
523     svg/SVGTransformList.idl \
524     svg/SVGTRefElement.idl \
525     svg/SVGTSpanElement.idl \
526     svg/SVGUnitTypes.idl \
527     svg/SVGUseElement.idl \
528     svg/SVGViewElement.idl \
529     websockets/WebSocket.idl \
530     workers/AbstractWorker.idl \
531     workers/DedicatedWorkerContext.idl \
532     workers/SharedWorker.idl \
533     workers/SharedWorkerContext.idl \
534     workers/Worker.idl \
535     workers/WorkerContext.idl \
536     workers/WorkerLocation.idl \
537     xml/DOMParser.idl \
538     xml/XMLHttpRequest.idl \
539     xml/XMLHttpRequestException.idl \
540     xml/XMLHttpRequestProgressEvent.idl \
541     xml/XMLHttpRequestUpload.idl \
542     xml/XMLSerializer.idl \
543     xml/XPathNSResolver.idl \
544     xml/XPathException.idl \
545     xml/XPathExpression.idl \
546     xml/XPathResult.idl \
547     xml/XPathEvaluator.idl \
548     xml/XSLTProcessor.idl
549
550 contains(DEFINES, ENABLE_WML=1) {
551     wmlnames.output = $${WC_GENERATED_SOURCES_DIR}/WMLNames.cpp
552     wmlnames.input = WML_NAMES
553     wmlnames.commands = perl -I$$PWD/bindings/scripts $$PWD/dom/make_names.pl --tags $$PWD/wml/WMLTagNames.in --attrs $$PWD/wml/WMLAttributeNames.in --extraDefines \"$${DEFINES}\" --preprocessor \"$${QMAKE_MOC} -E\" --factory --wrapperFactory --outputDir $$WC_GENERATED_SOURCES_DIR
554     wmlnames.wkExtraSources = $${WC_GENERATED_SOURCES_DIR}/WMLElementFactory.cpp
555     addExtraCompiler(wmlnames)
556 }
557
558 # GENERATOR 5-C:
559 svgnames.output = $${WC_GENERATED_SOURCES_DIR}/SVGNames.cpp
560 svgnames.input = SVG_NAMES
561 svgnames.commands = perl -I$$PWD/bindings/scripts $$PWD/dom/make_names.pl --tags $$PWD/svg/svgtags.in --attrs $$PWD/svg/svgattrs.in --extraDefines \"$${DEFINES}\" --preprocessor \"$${QMAKE_MOC} -E\" --factory --wrapperFactory --outputDir $$WC_GENERATED_SOURCES_DIR
562 svgnames.wkExtraSources = $${WC_GENERATED_SOURCES_DIR}/SVGElementFactory.cpp $${WC_GENERATED_SOURCES_DIR}/JSSVGElementWrapperFactory.cpp
563 addExtraCompiler(svgnames)
564
565 # GENERATOR 5-D:
566 xlinknames.output = $${WC_GENERATED_SOURCES_DIR}/XLinkNames.cpp
567 xlinknames.commands = perl -I$$PWD/bindings/scripts $$PWD/dom/make_names.pl --attrs $$PWD/svg/xlinkattrs.in --preprocessor \"$${QMAKE_MOC} -E\" --outputDir $$WC_GENERATED_SOURCES_DIR
568 xlinknames.input = XLINK_NAMES
569 addExtraCompiler(xlinknames)
570
571 # GENERATOR 6-A:
572 cssprops.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.cpp
573 cssprops.input = WALDOCSSPROPS
574 cssprops.commands = perl -ne \"print lc\" ${QMAKE_FILE_NAME} $${DASHBOARDSUPPORTCSSPROPERTIES} $${EXTRACSSPROPERTIES} > $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.in && cd $$WC_GENERATED_SOURCES_DIR && perl $$PWD/css/makeprop.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
575 cssprops.depends = ${QMAKE_FILE_NAME} $${DASHBOARDSUPPORTCSSPROPERTIES} $${EXTRACSSPROPERTIES}
576 addExtraCompiler(cssprops)
577
578 # GENERATOR 6-B:
579 cssvalues.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.c
580 cssvalues.input = WALDOCSSVALUES
581 cssvalues.commands = perl -ne \"print lc\" ${QMAKE_FILE_NAME} $$EXTRACSSVALUES > $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.in && cd $$WC_GENERATED_SOURCES_DIR && perl $$PWD/css/makevalues.pl && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
582 cssvalues.depends = ${QMAKE_FILE_NAME} $${EXTRACSSVALUES}
583 cssvalues.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.h
584 addExtraCompiler(cssvalues)
585
586 # GENERATOR 1: IDL compiler
587 idl.output = $${WC_GENERATED_SOURCES_DIR}/JS${QMAKE_FILE_BASE}.cpp
588 idl.input = IDL_BINDINGS
589 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 $$WC_GENERATED_SOURCES_DIR --preprocessor \"$${QMAKE_MOC} -E\" ${QMAKE_FILE_NAME}
590 idl.depends = $$PWD/bindings/scripts/generate-bindings.pl \
591               $$PWD/bindings/scripts/CodeGenerator.pm \
592               $$PWD/bindings/scripts/CodeGeneratorJS.pm \
593               $$PWD/bindings/scripts/IDLParser.pm \
594               $$PWD/bindings/scripts/IDLStructure.pm \
595               $$PWD/bindings/scripts/InFilesParser.pm
596 addExtraCompiler(idl)
597
598 # GENERATOR 3: tokenizer (flex)
599 tokenizer.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.cpp
600 tokenizer.input = TOKENIZER
601 tokenizer.commands = flex -t < ${QMAKE_FILE_NAME} | perl $$PWD/css/maketokenizer > ${QMAKE_FILE_OUT}
602 addExtraCompiler(tokenizer)
603
604 # GENERATOR 4: CSS grammar
605 cssbison.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.cpp
606 cssbison.input = CSSBISON
607 cssbison.commands = perl $$PWD/css/makegrammar.pl ${QMAKE_FILE_NAME} $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}
608 cssbison.depends = ${QMAKE_FILE_NAME}
609 addExtraCompiler(cssbison)
610
611 # GENERATOR 5-A:
612 htmlnames.output = $${WC_GENERATED_SOURCES_DIR}/HTMLNames.cpp
613 htmlnames.input = HTML_NAMES
614 htmlnames.commands = perl -I$$PWD/bindings/scripts $$PWD/dom/make_names.pl --tags $$PWD/html/HTMLTagNames.in --attrs $$PWD/html/HTMLAttributeNames.in --extraDefines \"$${DEFINES}\" --preprocessor \"$${QMAKE_MOC} -E\"  --factory --wrapperFactory --outputDir $$WC_GENERATED_SOURCES_DIR
615 htmlnames.depends = $$PWD/html/HTMLAttributeNames.in
616 htmlnames.wkExtraSources = $${WC_GENERATED_SOURCES_DIR}/HTMLElementFactory.cpp $${WC_GENERATED_SOURCES_DIR}/JSHTMLElementWrapperFactory.cpp
617 addExtraCompiler(htmlnames)
618
619 # GENERATOR 5-B:
620 xmlnames.output = $${WC_GENERATED_SOURCES_DIR}/XMLNames.cpp
621 xmlnames.input = XML_NAMES
622 xmlnames.commands = perl -I$$PWD/bindings/scripts $$PWD/dom/make_names.pl --attrs $$PWD/xml/xmlattrs.in --preprocessor \"$${QMAKE_MOC} -E\" --outputDir $$WC_GENERATED_SOURCES_DIR
623 addExtraCompiler(xmlnames)
624
625 # GENERATOR 8-A:
626 entities.output = $${WC_GENERATED_SOURCES_DIR}/HTMLEntityNames.c
627 entities.input = ENTITIES_GPERF
628 entities.commands = gperf -a -L ANSI-C -C -G -c -o -t --includes --key-positions="*" -N findEntity -D -s 2 < $$PWD/html/HTMLEntityNames.gperf > $${WC_GENERATED_SOURCES_DIR}/HTMLEntityNames.c
629 entities.clean = ${QMAKE_FILE_OUT}
630 addExtraCompiler(entities)
631
632 # GENERATOR 8-B:
633 doctypestrings.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.cpp
634 doctypestrings.input = DOCTYPESTRINGS
635 doctypestrings.commands = gperf -CEot -L ANSI-C --includes --key-positions="*" -N findDoctypeEntry -F ,PubIDInfo::eAlmostStandards,PubIDInfo::eAlmostStandards < ${QMAKE_FILE_NAME} >> ${QMAKE_FILE_OUT}
636 doctypestrings.clean = ${QMAKE_FILE_OUT}
637 addExtraCompiler(doctypestrings)
638
639 # GENERATOR 8-C:
640 colordata.output = $${WC_GENERATED_SOURCES_DIR}/ColorData.c
641 colordata.input = COLORDAT_GPERF
642 colordata.commands = gperf -CDEot -L ANSI-C --includes --key-positions="*" -N findColor -D -s 2 < ${QMAKE_FILE_NAME} >> ${QMAKE_FILE_OUT}
643 addExtraCompiler(colordata)
644
645 # GENERATOR 9:
646 STYLESHEETS_EMBED_GENERATOR_SCRIPT = $$PWD/css/make-css-file-arrays.pl
647 stylesheets.output = $${WC_GENERATED_SOURCES_DIR}/UserAgentStyleSheetsData.cpp
648 stylesheets.input = STYLESHEETS_EMBED_GENERATOR_SCRIPT
649 stylesheets.commands = perl $$PWD/css/make-css-file-arrays.pl --preprocessor \"$${QMAKE_MOC} -E\" $${WC_GENERATED_SOURCES_DIR}/UserAgentStyleSheets.h ${QMAKE_FILE_OUT} $$STYLESHEETS_EMBED
650 stylesheets.depends = $$STYLESHEETS_EMBED
651 stylesheets.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_WC_GENERATED_SOURCES_DIR}/UserAgentStyleSheets.h
652 addExtraCompiler(stylesheets, $${WC_GENERATED_SOURCES_DIR}/UserAgentStyleSheets.h)
653
654 # GENERATOR 10: XPATH grammar
655 xpathbison.output = $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.cpp
656 xpathbison.input = XPATHBISON
657 xpathbison.commands = bison -d -p xpathyy ${QMAKE_FILE_NAME} -o $${WC_GENERATED_SOURCES_DIR}/${QMAKE_FILE_BASE}.tab.c && $(MOVE) $${WC_GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.c $${WC_GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.cpp && $(MOVE) $${WC_GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.h $${WC_GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.h
658 xpathbison.depends = ${QMAKE_FILE_NAME}
659 addExtraCompiler(xpathbison)
660
661 # GENERATOR 11: WebKit Version
662 # The appropriate Apple-maintained Version.xcconfig file for WebKit version information is in WebKit/mac/Configurations/.
663 WEBKITVERSION_SCRIPT = $$PWD/../WebKit/scripts/generate-webkitversion.pl
664 webkitversion.output = $${WC_GENERATED_SOURCES_DIR}/WebKitVersion.h
665 webkitversion.input = WEBKITVERSION_SCRIPT
666 webkitversion.commands = perl $$PWD/../WebKit/scripts/generate-webkitversion.pl --config $$PWD/../WebKit/mac/Configurations/Version.xcconfig --outputDir $${WC_GENERATED_SOURCES_DIR}/
667 webkitversion.depends = $$PWD/../WebKit/scripts/generate-webkitversion.pl
668 webkitversion.clean = ${QMAKE_VAR_WC_GENERATED_SOURCES_DIR}/WebKitVersion.h
669 webkitversion.wkAddOutputToSources = false
670 addExtraCompiler(webkitversion)
671