1# -------------------------------------------------------------------
2# Derived sources for WebCore
3#
4# See 'Tools/qmake/README' for an overview of the build system
5# -------------------------------------------------------------------
6
7# This file is both a top level target, and included from Target.pri,
8# so that the resulting generated sources can be added to SOURCES.
9# We only set the template if we're a top level target, so that we
10# don't override what Target.pri has already set.
11sanitizedFile = $$toSanitizedPath($$_FILE_)
12equals(sanitizedFile, $$toSanitizedPath($$_PRO_FILE_)):TEMPLATE = derived
13
14mac {
15    # FIXME: This runs the perl script every time. Is there a way we can run it only when deps change?
16    fwheader_generator.commands = perl $${ROOT_WEBKIT_DIR}/Source/WebKit2/Scripts/generate-forwarding-headers.pl $${ROOT_WEBKIT_DIR}/Source/WebCore $${ROOT_BUILD_DIR}/Source/include mac
17    fwheader_generator.depends = $${ROOT_WEBKIT_DIR}/Source/WebKit2/Scripts/generate-forwarding-headers.pl
18    GENERATORS += fwheader_generator
19}
20
21MATHML_NAMES = $$PWD/mathml/mathtags.in
22
23SVG_NAMES = $$PWD/svg/svgtags.in
24
25XLINK_NAMES = $$PWD/svg/xlinkattrs.in
26
27CSSBISON = $$PWD/css/CSSGrammar.y.in
28
29enable?(XSLT) {
30    XMLVIEWER_CSS = $$PWD/xml/XMLViewer.css
31    XMLVIEWER_JS = $$PWD/xml/XMLViewer.js
32}
33
34FONT_NAMES = $$PWD/css/WebKitFontFamilyNames.in
35
36HTML_NAMES = $$PWD/html/HTMLTagNames.in
37
38XML_NAMES = $$PWD/xml/xmlattrs.in
39
40XMLNS_NAMES = $$PWD/xml/xmlnsattrs.in
41
42HTML_ENTITIES = $$PWD/html/parser/HTMLEntityNames.in
43
44EVENTS_NAMES = $$PWD/dom/EventNames.in
45
46EVENT_TARGET_FACTORY = $$PWD/dom/EventTargetFactory.in
47
48DOM_EXCEPTIONS = $$PWD/dom/DOMExceptions.in
49
50SETTINGS_MACROS = $$PWD/page/Settings.in
51
52COLORDATA_GPERF = $$PWD/platform/ColorData.gperf
53
54WALDOCSSPROPS = $$PWD/css/CSSPropertyNames.in
55
56WALDOCSSVALUES = $$PWD/css/CSSValueKeywords.in
57
58INSPECTOR_JSON = $$PWD/inspector/Inspector.json
59
60INSPECTOR_BACKEND_COMMANDS_QRC = $$PWD/inspector/front-end/InspectorBackendCommands.qrc
61
62INSPECTOR_OVERLAY_PAGE = $$PWD/inspector/InspectorOverlayPage.html
63
64INJECTED_SCRIPT_SOURCE = $$PWD/inspector/InjectedScriptSource.js
65
66INJECTED_SCRIPT_CANVAS_MODULE_SOURCE = $$PWD/inspector/InjectedScriptCanvasModuleSource.js
67
68XPATHBISON = $$PWD/xml/XPathGrammar.y
69
70enable?(SVG) {
71    EXTRACSSPROPERTIES += $$PWD/css/SVGCSSPropertyNames.in
72    EXTRACSSVALUES += $$PWD/css/SVGCSSValueKeywords.in
73}
74
75STYLESHEETS_EMBED = \
76    $$PWD/css/html.css \
77    $$PWD/css/quirks.css \
78    $$PWD/css/mathml.css \
79    $$PWD/css/svg.css \
80    $$PWD/css/view-source.css \
81    $$PWD/css/fullscreen.css \
82    $$PWD/css/mediaControls.css \
83    $$PWD/css/mediaControlsQt.css \
84    $$PWD/css/mediaControlsQtFullscreen.css \
85    $$PWD/css/plugIns.css \
86    $$PWD/css/themeQtNoListboxes.css \
87    $$PWD/css/mobileThemeQt.css
88
89PLUGINS_EMBED = \
90    $$PWD/Resources/plugIns.js
91
92IDL_BINDINGS += \
93    $$PWD/Modules/filesystem/DOMFileSystem.idl \
94    $$PWD/Modules/filesystem/DOMFileSystemSync.idl \
95    $$PWD/Modules/filesystem/DOMWindowFileSystem.idl \
96    $$PWD/Modules/filesystem/DirectoryEntry.idl \
97    $$PWD/Modules/filesystem/DirectoryEntrySync.idl \
98    $$PWD/Modules/filesystem/DirectoryReader.idl \
99    $$PWD/Modules/filesystem/DirectoryReaderSync.idl \
100    $$PWD/Modules/filesystem/EntriesCallback.idl \
101    $$PWD/Modules/filesystem/Entry.idl \
102    $$PWD/Modules/filesystem/EntryArray.idl \
103    $$PWD/Modules/filesystem/EntryArraySync.idl \
104    $$PWD/Modules/filesystem/EntryCallback.idl \
105    $$PWD/Modules/filesystem/EntrySync.idl \
106    $$PWD/Modules/filesystem/ErrorCallback.idl \
107    $$PWD/Modules/filesystem/FileCallback.idl \
108    $$PWD/Modules/filesystem/FileEntry.idl \
109    $$PWD/Modules/filesystem/FileEntrySync.idl \
110    $$PWD/Modules/filesystem/FileSystemCallback.idl \
111    $$PWD/Modules/filesystem/FileWriter.idl \
112    $$PWD/Modules/filesystem/FileWriterCallback.idl \
113    $$PWD/Modules/filesystem/Metadata.idl \
114    $$PWD/Modules/filesystem/MetadataCallback.idl \
115    $$PWD/Modules/filesystem/WorkerContextFileSystem.idl \
116    $$PWD/Modules/geolocation/Coordinates.idl \
117    $$PWD/Modules/geolocation/Geolocation.idl \
118    $$PWD/Modules/geolocation/Geoposition.idl \
119    $$PWD/Modules/geolocation/NavigatorGeolocation.idl \
120    $$PWD/Modules/geolocation/PositionCallback.idl \
121    $$PWD/Modules/geolocation/PositionError.idl \
122    $$PWD/Modules/geolocation/PositionErrorCallback.idl \
123    $$PWD/Modules/indexeddb/DOMWindowIndexedDatabase.idl \
124    $$PWD/Modules/indexeddb/IDBAny.idl \
125    $$PWD/Modules/indexeddb/IDBCursor.idl \
126    $$PWD/Modules/indexeddb/IDBDatabase.idl \
127    $$PWD/Modules/indexeddb/IDBFactory.idl \
128    $$PWD/Modules/indexeddb/IDBIndex.idl \
129    $$PWD/Modules/indexeddb/IDBKeyRange.idl \
130    $$PWD/Modules/indexeddb/IDBObjectStore.idl \
131    $$PWD/Modules/indexeddb/IDBRequest.idl \
132    $$PWD/Modules/indexeddb/IDBTransaction.idl \
133    $$PWD/Modules/indexeddb/WorkerContextIndexedDatabase.idl \
134    $$PWD/Modules/notifications/DOMWindowNotifications.idl \
135    $$PWD/Modules/notifications/Notification.idl \
136    $$PWD/Modules/notifications/NotificationCenter.idl \
137    $$PWD/Modules/notifications/NotificationPermissionCallback.idl \
138    $$PWD/Modules/notifications/WorkerContextNotifications.idl \
139    $$PWD/Modules/quota/DOMWindowQuota.idl \
140    $$PWD/Modules/quota/NavigatorStorageQuota.idl \
141    $$PWD/Modules/quota/StorageInfo.idl \
142    $$PWD/Modules/quota/StorageErrorCallback.idl \
143    $$PWD/Modules/quota/StorageQuota.idl \
144    $$PWD/Modules/quota/StorageQuotaCallback.idl \
145    $$PWD/Modules/quota/StorageUsageCallback.idl \
146    $$PWD/Modules/quota/WorkerNavigatorStorageQuota.idl \
147    $$PWD/Modules/webaudio/AudioBuffer.idl \
148    $$PWD/Modules/webaudio/AudioBufferCallback.idl \
149    $$PWD/Modules/webaudio/AudioBufferSourceNode.idl \
150    $$PWD/Modules/webaudio/ChannelMergerNode.idl \
151    $$PWD/Modules/webaudio/ChannelSplitterNode.idl \
152    $$PWD/Modules/webaudio/AudioContext.idl \
153    $$PWD/Modules/webaudio/AudioDestinationNode.idl \
154    $$PWD/Modules/webaudio/GainNode.idl \
155    $$PWD/Modules/webaudio/AudioListener.idl \
156    $$PWD/Modules/webaudio/AudioNode.idl \
157    $$PWD/Modules/webaudio/PannerNode.idl \
158    $$PWD/Modules/webaudio/AudioParam.idl \
159    $$PWD/Modules/webaudio/AudioProcessingEvent.idl \
160    $$PWD/Modules/webaudio/BiquadFilterNode.idl \
161    $$PWD/Modules/webaudio/ConvolverNode.idl \
162    $$PWD/Modules/webaudio/DelayNode.idl \
163    $$PWD/Modules/webaudio/DynamicsCompressorNode.idl \
164    $$PWD/Modules/webaudio/ScriptProcessorNode.idl \
165    $$PWD/Modules/webaudio/MediaElementAudioSourceNode.idl \
166    $$PWD/Modules/webaudio/MediaStreamAudioSourceNode.idl \
167    $$PWD/Modules/webaudio/OfflineAudioContext.idl \
168    $$PWD/Modules/webaudio/OfflineAudioCompletionEvent.idl \
169    $$PWD/Modules/webaudio/OscillatorNode.idl \
170    $$PWD/Modules/webaudio/AnalyserNode.idl \
171    $$PWD/Modules/webaudio/WaveShaperNode.idl \
172    $$PWD/Modules/webaudio/WaveTable.idl \
173    $$PWD/Modules/webdatabase/DOMWindowWebDatabase.idl \
174    $$PWD/Modules/webdatabase/Database.idl \
175    $$PWD/Modules/webdatabase/DatabaseCallback.idl \
176    $$PWD/Modules/webdatabase/DatabaseSync.idl \
177    $$PWD/Modules/webdatabase/SQLError.idl \
178    $$PWD/Modules/webdatabase/SQLException.idl \
179    $$PWD/Modules/webdatabase/SQLResultSet.idl \
180    $$PWD/Modules/webdatabase/SQLResultSetRowList.idl \
181    $$PWD/Modules/webdatabase/SQLStatementCallback.idl \
182    $$PWD/Modules/webdatabase/SQLStatementErrorCallback.idl \
183    $$PWD/Modules/webdatabase/SQLTransaction.idl \
184    $$PWD/Modules/webdatabase/SQLTransactionCallback.idl \
185    $$PWD/Modules/webdatabase/SQLTransactionErrorCallback.idl \
186    $$PWD/Modules/webdatabase/SQLTransactionSync.idl \
187    $$PWD/Modules/webdatabase/SQLTransactionSyncCallback.idl \
188    $$PWD/Modules/webdatabase/WorkerContextWebDatabase.idl \
189    $$PWD/Modules/websockets/CloseEvent.idl \
190    $$PWD/Modules/websockets/WebSocket.idl \
191    $$PWD/css/Counter.idl \
192    $$PWD/css/CSSCharsetRule.idl \
193    $$PWD/css/CSSFontFaceLoadEvent.idl \
194    $$PWD/css/CSSFontFaceRule.idl \
195    $$PWD/css/CSSHostRule.idl \
196    $$PWD/css/CSSImportRule.idl \
197    $$PWD/css/CSSMediaRule.idl \
198    $$PWD/css/CSSPageRule.idl \
199    $$PWD/css/CSSPrimitiveValue.idl \
200    $$PWD/css/CSSRule.idl \
201    $$PWD/css/CSSRuleList.idl \
202    $$PWD/css/CSSStyleDeclaration.idl \
203    $$PWD/css/CSSStyleRule.idl \
204    $$PWD/css/CSSStyleSheet.idl \
205    $$PWD/css/CSSSupportsRule.idl \
206    $$PWD/css/CSSValue.idl \
207    $$PWD/css/CSSValueList.idl \
208    $$PWD/css/DOMWindowCSS.idl \
209    $$PWD/css/FontLoader.idl \
210    $$PWD/css/MediaList.idl \
211    $$PWD/css/MediaQueryList.idl \
212    $$PWD/css/Rect.idl \
213    $$PWD/css/RGBColor.idl \
214    $$PWD/css/StyleMedia.idl \
215    $$PWD/css/StyleSheet.idl \
216    $$PWD/css/StyleSheetList.idl \
217    $$PWD/css/WebKitCSSFilterRule.idl \
218    $$PWD/css/WebKitCSSFilterValue.idl \
219    $$PWD/css/WebKitCSSKeyframeRule.idl \
220    $$PWD/css/WebKitCSSKeyframesRule.idl \
221    $$PWD/css/WebKitCSSMatrix.idl \
222    $$PWD/css/WebKitCSSMixFunctionValue.idl \
223    $$PWD/css/WebKitCSSRegionRule.idl \
224    $$PWD/css/WebKitCSSTransformValue.idl \
225    $$PWD/css/WebKitCSSViewportRule.idl \
226    $$PWD/dom/Attr.idl \
227    $$PWD/dom/BeforeLoadEvent.idl \
228    $$PWD/dom/CharacterData.idl \
229    $$PWD/dom/ClientRect.idl \
230    $$PWD/dom/ClientRectList.idl \
231    $$PWD/dom/Clipboard.idl \
232    $$PWD/dom/CDATASection.idl \
233    $$PWD/dom/Comment.idl \
234    $$PWD/dom/CompositionEvent.idl \
235    $$PWD/dom/CustomEvent.idl \
236    $$PWD/dom/DataTransferItem.idl \
237    $$PWD/dom/DataTransferItemList.idl \
238    $$PWD/dom/DeviceMotionEvent.idl \
239    $$PWD/dom/DeviceOrientationEvent.idl \
240    $$PWD/dom/DocumentFragment.idl \
241    $$PWD/dom/Document.idl \
242    $$PWD/dom/DocumentType.idl \
243    $$PWD/dom/DOMCoreException.idl \
244    $$PWD/dom/DOMError.idl \
245    $$PWD/dom/DOMImplementation.idl \
246    $$PWD/dom/DOMStringList.idl \
247    $$PWD/dom/DOMStringMap.idl \
248    $$PWD/dom/Element.idl \
249    $$PWD/dom/Entity.idl \
250    $$PWD/dom/EntityReference.idl \
251    $$PWD/dom/ErrorEvent.idl \
252    $$PWD/dom/Event.idl \
253    $$PWD/dom/EventException.idl \
254#    $$PWD/dom/EventListener.idl \
255    $$PWD/dom/EventTarget.idl \
256    $$PWD/dom/FocusEvent.idl \
257    $$PWD/dom/HashChangeEvent.idl \
258    $$PWD/dom/KeyboardEvent.idl \
259    $$PWD/dom/MouseEvent.idl \
260    $$PWD/dom/MessageChannel.idl \
261    $$PWD/dom/MessageEvent.idl \
262    $$PWD/dom/MessagePort.idl \
263    $$PWD/dom/MutationEvent.idl \
264    $$PWD/dom/MutationObserver.idl \
265    $$PWD/dom/MutationRecord.idl \
266    $$PWD/dom/NamedNodeMap.idl \
267    $$PWD/dom/Node.idl \
268    $$PWD/dom/NodeFilter.idl \
269    $$PWD/dom/NodeIterator.idl \
270    $$PWD/dom/NodeList.idl \
271    $$PWD/dom/Notation.idl \
272    $$PWD/dom/OverflowEvent.idl \
273    $$PWD/dom/PageTransitionEvent.idl \
274    $$PWD/dom/PopStateEvent.idl \
275    $$PWD/dom/ProcessingInstruction.idl \
276    $$PWD/dom/ProgressEvent.idl \
277    $$PWD/dom/PropertyNodeList.idl \
278    $$PWD/dom/RangeException.idl \
279    $$PWD/dom/Range.idl \
280    $$PWD/dom/RequestAnimationFrameCallback.idl \
281    $$PWD/dom/ShadowRoot.idl \
282    $$PWD/dom/StringCallback.idl \
283    $$PWD/dom/Text.idl \
284    $$PWD/dom/TextEvent.idl \
285    $$PWD/dom/Touch.idl \
286    $$PWD/dom/TouchEvent.idl \
287    $$PWD/dom/TouchList.idl \
288    $$PWD/dom/TransitionEvent.idl \
289    $$PWD/dom/TreeWalker.idl \
290    $$PWD/dom/UIEvent.idl \
291    $$PWD/dom/WebKitAnimationEvent.idl \
292    $$PWD/dom/WebKitNamedFlow.idl \
293    $$PWD/dom/DOMNamedFlowCollection.idl \
294    $$PWD/dom/WebKitTransitionEvent.idl \
295    $$PWD/dom/WheelEvent.idl \
296    $$PWD/fileapi/Blob.idl \
297    $$PWD/fileapi/File.idl \
298    $$PWD/fileapi/FileError.idl \
299    $$PWD/fileapi/FileException.idl \
300    $$PWD/fileapi/FileList.idl \
301    $$PWD/fileapi/FileReader.idl \
302    $$PWD/fileapi/FileReaderSync.idl \
303    $$PWD/html/canvas/ArrayBufferView.idl \
304    $$PWD/html/canvas/ArrayBuffer.idl \
305    $$PWD/html/canvas/DataView.idl \
306    $$PWD/html/canvas/Int8Array.idl \
307    $$PWD/html/canvas/Float32Array.idl \
308    $$PWD/html/canvas/Float64Array.idl \
309    $$PWD/html/canvas/CanvasGradient.idl \
310    $$PWD/html/canvas/Int32Array.idl \
311    $$PWD/html/canvas/CanvasPattern.idl \
312    $$PWD/html/canvas/CanvasProxy.idl \
313    $$PWD/html/canvas/CanvasRenderingContext.idl \
314    $$PWD/html/canvas/CanvasRenderingContext2D.idl \
315    $$PWD/html/canvas/DOMPath.idl \
316    $$PWD/html/canvas/EXTDrawBuffers.idl \
317    $$PWD/html/canvas/EXTTextureFilterAnisotropic.idl \
318    $$PWD/html/canvas/OESStandardDerivatives.idl \
319    $$PWD/html/canvas/OESTextureFloat.idl \
320    $$PWD/html/canvas/OESTextureHalfFloat.idl \
321    $$PWD/html/canvas/OESVertexArrayObject.idl \
322    $$PWD/html/canvas/OESElementIndexUint.idl \
323    $$PWD/html/canvas/WebGLActiveInfo.idl \
324    $$PWD/html/canvas/WebGLBuffer.idl \
325    $$PWD/html/canvas/WebGLCompressedTextureATC.idl \
326    $$PWD/html/canvas/WebGLCompressedTexturePVRTC.idl \
327    $$PWD/html/canvas/WebGLCompressedTextureS3TC.idl \
328    $$PWD/html/canvas/WebGLContextAttributes.idl \
329    $$PWD/html/canvas/WebGLContextEvent.idl \
330    $$PWD/html/canvas/WebGLDebugRendererInfo.idl \
331    $$PWD/html/canvas/WebGLDebugShaders.idl \
332    $$PWD/html/canvas/WebGLDepthTexture.idl \
333    $$PWD/html/canvas/WebGLFramebuffer.idl \
334    $$PWD/html/canvas/WebGLLoseContext.idl \
335    $$PWD/html/canvas/WebGLProgram.idl \
336    $$PWD/html/canvas/WebGLRenderbuffer.idl \
337    $$PWD/html/canvas/WebGLRenderingContext.idl \
338    $$PWD/html/canvas/WebGLShader.idl \
339    $$PWD/html/canvas/WebGLShaderPrecisionFormat.idl \
340    $$PWD/html/canvas/Int16Array.idl \
341    $$PWD/html/canvas/WebGLTexture.idl \
342    $$PWD/html/canvas/WebGLUniformLocation.idl \
343    $$PWD/html/canvas/WebGLVertexArrayObjectOES.idl \
344    $$PWD/html/canvas/Uint8Array.idl \
345    $$PWD/html/canvas/Uint8ClampedArray.idl \
346    $$PWD/html/canvas/Uint32Array.idl \
347    $$PWD/html/canvas/Uint16Array.idl \
348    $$PWD/html/DOMFormData.idl \
349    $$PWD/html/DOMSettableTokenList.idl \
350    $$PWD/html/DOMTokenList.idl \
351    $$PWD/html/DOMURL.idl \
352    $$PWD/html/HTMLAllCollection.idl \
353    $$PWD/html/HTMLAudioElement.idl \
354    $$PWD/html/HTMLAnchorElement.idl \
355    $$PWD/html/HTMLAppletElement.idl \
356    $$PWD/html/HTMLAreaElement.idl \
357    $$PWD/html/HTMLBaseElement.idl \
358    $$PWD/html/HTMLBaseFontElement.idl \
359    $$PWD/html/HTMLBodyElement.idl \
360    $$PWD/html/HTMLBRElement.idl \
361    $$PWD/html/HTMLButtonElement.idl \
362    $$PWD/html/HTMLCanvasElement.idl \
363    $$PWD/html/HTMLCollection.idl \
364    $$PWD/html/HTMLDataListElement.idl \
365    $$PWD/html/HTMLDetailsElement.idl \
366    $$PWD/html/HTMLDialogElement.idl \
367    $$PWD/html/HTMLDirectoryElement.idl \
368    $$PWD/html/HTMLDivElement.idl \
369    $$PWD/html/HTMLDListElement.idl \
370    $$PWD/html/HTMLDocument.idl \
371    $$PWD/html/HTMLElement.idl \
372    $$PWD/html/HTMLEmbedElement.idl \
373    $$PWD/html/HTMLFieldSetElement.idl \
374    $$PWD/html/HTMLFontElement.idl \
375    $$PWD/html/HTMLFormControlsCollection.idl \
376    $$PWD/html/HTMLFormElement.idl \
377    $$PWD/html/HTMLFrameElement.idl \
378    $$PWD/html/HTMLFrameSetElement.idl \
379    $$PWD/html/HTMLHeadElement.idl \
380    $$PWD/html/HTMLHeadingElement.idl \
381    $$PWD/html/HTMLHRElement.idl \
382    $$PWD/html/HTMLHtmlElement.idl \
383    $$PWD/html/HTMLIFrameElement.idl \
384    $$PWD/html/HTMLImageElement.idl \
385    $$PWD/html/HTMLInputElement.idl \
386    $$PWD/html/HTMLKeygenElement.idl \
387    $$PWD/html/HTMLLabelElement.idl \
388    $$PWD/html/HTMLLegendElement.idl \
389    $$PWD/html/HTMLLIElement.idl \
390    $$PWD/html/HTMLLinkElement.idl \
391    $$PWD/html/HTMLMapElement.idl \
392    $$PWD/html/HTMLMarqueeElement.idl \
393    $$PWD/html/HTMLMediaElement.idl \
394    $$PWD/html/HTMLMenuElement.idl \
395    $$PWD/html/HTMLMetaElement.idl \
396    $$PWD/html/HTMLMeterElement.idl \
397    $$PWD/html/HTMLModElement.idl \
398    $$PWD/html/HTMLObjectElement.idl \
399    $$PWD/html/HTMLOListElement.idl \
400    $$PWD/html/HTMLOptGroupElement.idl \
401    $$PWD/html/HTMLOptionElement.idl \
402    $$PWD/html/HTMLOptionsCollection.idl \
403    $$PWD/html/HTMLOutputElement.idl \
404    $$PWD/html/HTMLParagraphElement.idl \
405    $$PWD/html/HTMLParamElement.idl \
406    $$PWD/html/HTMLPreElement.idl \
407    $$PWD/html/HTMLProgressElement.idl \
408    $$PWD/html/HTMLPropertiesCollection.idl \
409    $$PWD/html/HTMLQuoteElement.idl \
410    $$PWD/html/HTMLScriptElement.idl \
411    $$PWD/html/HTMLSelectElement.idl \
412    $$PWD/html/HTMLSourceElement.idl \
413    $$PWD/html/HTMLSpanElement.idl \
414    $$PWD/html/HTMLStyleElement.idl \
415    $$PWD/html/HTMLTableCaptionElement.idl \
416    $$PWD/html/HTMLTableCellElement.idl \
417    $$PWD/html/HTMLTableColElement.idl \
418    $$PWD/html/HTMLTableElement.idl \
419    $$PWD/html/HTMLTableRowElement.idl \
420    $$PWD/html/HTMLTableSectionElement.idl \
421    $$PWD/html/HTMLTextAreaElement.idl \
422    $$PWD/html/HTMLTitleElement.idl \
423    $$PWD/html/HTMLTrackElement.idl \
424    $$PWD/html/HTMLUListElement.idl \
425    $$PWD/html/HTMLUnknownElement.idl \
426    $$PWD/html/HTMLVideoElement.idl \
427    $$PWD/html/ImageData.idl \
428    $$PWD/html/MediaController.idl \
429    $$PWD/html/MediaError.idl \
430    $$PWD/html/MicroDataItemValue.idl \
431    $$PWD/html/RadioNodeList.idl \
432    $$PWD/html/TextMetrics.idl \
433    $$PWD/html/TimeRanges.idl \
434    $$PWD/html/ValidityState.idl \
435    $$PWD/html/VoidCallback.idl \
436    $$PWD/html/shadow/HTMLContentElement.idl \
437    $$PWD/inspector/InjectedScriptHost.idl \
438    $$PWD/inspector/InspectorFrontendHost.idl \
439    $$PWD/inspector/JavaScriptCallFrame.idl \
440    $$PWD/inspector/ScriptProfile.idl \
441    $$PWD/inspector/ScriptProfileNode.idl \
442    $$PWD/loader/appcache/DOMApplicationCache.idl \
443    $$PWD/page/BarProp.idl \
444    $$PWD/page/Console.idl \
445    $$PWD/page/Crypto.idl \
446    $$PWD/page/DOMSecurityPolicy.idl \
447    $$PWD/page/DOMSelection.idl \
448    $$PWD/page/DOMWindow.idl \
449    $$PWD/page/EventSource.idl \
450    $$PWD/page/History.idl \
451    $$PWD/page/Location.idl \
452    $$PWD/page/Navigator.idl \
453    $$PWD/page/Performance.idl \
454    $$PWD/page/PerformanceEntry.idl \
455    $$PWD/page/PerformanceEntryList.idl \
456    $$PWD/page/PerformanceNavigation.idl \
457    $$PWD/page/PerformanceResourceTiming.idl \
458    $$PWD/page/PerformanceTiming.idl \
459    $$PWD/page/Screen.idl \
460    $$PWD/page/SpeechInputEvent.idl \
461    $$PWD/page/SpeechInputResult.idl \
462    $$PWD/page/SpeechInputResultList.idl \
463    $$PWD/page/WebKitPoint.idl \
464    $$PWD/page/WorkerNavigator.idl \
465    $$PWD/plugins/DOMPlugin.idl \
466    $$PWD/plugins/DOMMimeType.idl \
467    $$PWD/plugins/DOMPluginArray.idl \
468    $$PWD/plugins/DOMMimeTypeArray.idl \
469    $$PWD/storage/Storage.idl \
470    $$PWD/storage/StorageEvent.idl \
471    $$PWD/testing/Internals.idl \
472    $$PWD/testing/InternalSettings.idl \
473    $$PWD/testing/MallocStatistics.idl \
474    $$PWD/testing/MemoryInfo.idl \
475    $$PWD/testing/TypeConversions.idl \
476    $$PWD/workers/AbstractWorker.idl \
477    $$PWD/workers/DedicatedWorkerContext.idl \
478    $$PWD/workers/SharedWorker.idl \
479    $$PWD/workers/SharedWorkerContext.idl \
480    $$PWD/workers/Worker.idl \
481    $$PWD/workers/WorkerContext.idl \
482    $$PWD/workers/WorkerLocation.idl \
483    $$PWD/xml/DOMParser.idl \
484    $$PWD/xml/XMLHttpRequest.idl \
485    $$PWD/xml/XMLHttpRequestException.idl \
486    $$PWD/xml/XMLHttpRequestProgressEvent.idl \
487    $$PWD/xml/XMLHttpRequestUpload.idl \
488    $$PWD/xml/XMLSerializer.idl \
489    $$PWD/xml/XPathNSResolver.idl \
490    $$PWD/xml/XPathException.idl \
491    $$PWD/xml/XPathExpression.idl \
492    $$PWD/xml/XPathResult.idl \
493    $$PWD/xml/XPathEvaluator.idl \
494    $$PWD/xml/XSLTProcessor.idl
495
496enable?(SVG) {
497  IDL_BINDINGS += \
498    $$PWD/svg/SVGAElement.idl \
499    $$PWD/svg/SVGAltGlyphDefElement.idl \
500    $$PWD/svg/SVGAltGlyphElement.idl \
501    $$PWD/svg/SVGAltGlyphItemElement.idl \
502    $$PWD/svg/SVGAngle.idl \
503    $$PWD/svg/SVGAnimateColorElement.idl \
504    $$PWD/svg/SVGAnimateMotionElement.idl \
505    $$PWD/svg/SVGAnimatedAngle.idl \
506    $$PWD/svg/SVGAnimatedBoolean.idl \
507    $$PWD/svg/SVGAnimatedEnumeration.idl \
508    $$PWD/svg/SVGAnimatedInteger.idl \
509    $$PWD/svg/SVGAnimatedLength.idl \
510    $$PWD/svg/SVGAnimatedLengthList.idl \
511    $$PWD/svg/SVGAnimatedNumber.idl \
512    $$PWD/svg/SVGAnimatedNumberList.idl \
513    $$PWD/svg/SVGAnimatedPreserveAspectRatio.idl \
514    $$PWD/svg/SVGAnimatedRect.idl \
515    $$PWD/svg/SVGAnimatedString.idl \
516    $$PWD/svg/SVGAnimatedTransformList.idl \
517    $$PWD/svg/SVGAnimateElement.idl \
518    $$PWD/svg/SVGAnimateTransformElement.idl \
519    $$PWD/svg/SVGAnimationElement.idl \
520    $$PWD/svg/SVGCircleElement.idl \
521    $$PWD/svg/SVGClipPathElement.idl \
522    $$PWD/svg/SVGColor.idl \
523    $$PWD/svg/SVGComponentTransferFunctionElement.idl \
524    $$PWD/svg/SVGCursorElement.idl \
525    $$PWD/svg/SVGDefsElement.idl \
526    $$PWD/svg/SVGDescElement.idl \
527    $$PWD/svg/SVGDocument.idl \
528    $$PWD/svg/SVGElement.idl \
529    $$PWD/svg/SVGElementInstance.idl \
530    $$PWD/svg/SVGElementInstanceList.idl \
531    $$PWD/svg/SVGEllipseElement.idl \
532    $$PWD/svg/SVGException.idl \
533    $$PWD/svg/SVGFEBlendElement.idl \
534    $$PWD/svg/SVGFEColorMatrixElement.idl \
535    $$PWD/svg/SVGFEComponentTransferElement.idl \
536    $$PWD/svg/SVGFECompositeElement.idl \
537    $$PWD/svg/SVGFEConvolveMatrixElement.idl \
538    $$PWD/svg/SVGFEDiffuseLightingElement.idl \
539    $$PWD/svg/SVGFEDisplacementMapElement.idl \
540    $$PWD/svg/SVGFEDistantLightElement.idl \
541    $$PWD/svg/SVGFEDropShadowElement.idl \
542    $$PWD/svg/SVGFEFloodElement.idl \
543    $$PWD/svg/SVGFEFuncAElement.idl \
544    $$PWD/svg/SVGFEFuncBElement.idl \
545    $$PWD/svg/SVGFEFuncGElement.idl \
546    $$PWD/svg/SVGFEFuncRElement.idl \
547    $$PWD/svg/SVGFEGaussianBlurElement.idl \
548    $$PWD/svg/SVGFEImageElement.idl \
549    $$PWD/svg/SVGFEMergeElement.idl \
550    $$PWD/svg/SVGFEMergeNodeElement.idl \
551    $$PWD/svg/SVGFEMorphologyElement.idl \
552    $$PWD/svg/SVGFEOffsetElement.idl \
553    $$PWD/svg/SVGFEPointLightElement.idl \
554    $$PWD/svg/SVGFESpecularLightingElement.idl \
555    $$PWD/svg/SVGFESpotLightElement.idl \
556    $$PWD/svg/SVGFETileElement.idl \
557    $$PWD/svg/SVGFETurbulenceElement.idl \
558    $$PWD/svg/SVGFilterElement.idl \
559    $$PWD/svg/SVGFontElement.idl \
560    $$PWD/svg/SVGFontFaceElement.idl \
561    $$PWD/svg/SVGFontFaceFormatElement.idl \
562    $$PWD/svg/SVGFontFaceNameElement.idl \
563    $$PWD/svg/SVGFontFaceSrcElement.idl \
564    $$PWD/svg/SVGFontFaceUriElement.idl \
565    $$PWD/svg/SVGForeignObjectElement.idl \
566    $$PWD/svg/SVGGElement.idl \
567    $$PWD/svg/SVGGlyphElement.idl \
568    $$PWD/svg/SVGGlyphRefElement.idl \
569    $$PWD/svg/SVGGradientElement.idl \
570    $$PWD/svg/SVGHKernElement.idl \
571    $$PWD/svg/SVGImageElement.idl \
572    $$PWD/svg/SVGLength.idl \
573    $$PWD/svg/SVGLengthList.idl \
574    $$PWD/svg/SVGLinearGradientElement.idl \
575    $$PWD/svg/SVGLineElement.idl \
576    $$PWD/svg/SVGMarkerElement.idl \
577    $$PWD/svg/SVGMaskElement.idl \
578    $$PWD/svg/SVGMatrix.idl \
579    $$PWD/svg/SVGMetadataElement.idl \
580    $$PWD/svg/SVGMissingGlyphElement.idl \
581    $$PWD/svg/SVGMPathElement.idl \
582    $$PWD/svg/SVGNumber.idl \
583    $$PWD/svg/SVGNumberList.idl \
584    $$PWD/svg/SVGPaint.idl \
585    $$PWD/svg/SVGPathElement.idl \
586    $$PWD/svg/SVGPathSegArcAbs.idl \
587    $$PWD/svg/SVGPathSegArcRel.idl \
588    $$PWD/svg/SVGPathSegClosePath.idl \
589    $$PWD/svg/SVGPathSegCurvetoCubicAbs.idl \
590    $$PWD/svg/SVGPathSegCurvetoCubicRel.idl \
591    $$PWD/svg/SVGPathSegCurvetoCubicSmoothAbs.idl \
592    $$PWD/svg/SVGPathSegCurvetoCubicSmoothRel.idl \
593    $$PWD/svg/SVGPathSegCurvetoQuadraticAbs.idl \
594    $$PWD/svg/SVGPathSegCurvetoQuadraticRel.idl \
595    $$PWD/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl \
596    $$PWD/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl \
597    $$PWD/svg/SVGPathSeg.idl \
598    $$PWD/svg/SVGPathSegLinetoAbs.idl \
599    $$PWD/svg/SVGPathSegLinetoHorizontalAbs.idl \
600    $$PWD/svg/SVGPathSegLinetoHorizontalRel.idl \
601    $$PWD/svg/SVGPathSegLinetoRel.idl \
602    $$PWD/svg/SVGPathSegLinetoVerticalAbs.idl \
603    $$PWD/svg/SVGPathSegLinetoVerticalRel.idl \
604    $$PWD/svg/SVGPathSegList.idl \
605    $$PWD/svg/SVGPathSegMovetoAbs.idl \
606    $$PWD/svg/SVGPathSegMovetoRel.idl \
607    $$PWD/svg/SVGPatternElement.idl \
608    $$PWD/svg/SVGPoint.idl \
609    $$PWD/svg/SVGPointList.idl \
610    $$PWD/svg/SVGPolygonElement.idl \
611    $$PWD/svg/SVGPolylineElement.idl \
612    $$PWD/svg/SVGPreserveAspectRatio.idl \
613    $$PWD/svg/SVGRadialGradientElement.idl \
614    $$PWD/svg/SVGRectElement.idl \
615    $$PWD/svg/SVGRect.idl \
616    $$PWD/svg/SVGRenderingIntent.idl \
617    $$PWD/svg/SVGScriptElement.idl \
618    $$PWD/svg/SVGSetElement.idl \
619    $$PWD/svg/SVGStopElement.idl \
620    $$PWD/svg/SVGStringList.idl \
621    $$PWD/svg/SVGStyleElement.idl \
622    $$PWD/svg/SVGStyledElement.idl \
623    $$PWD/svg/SVGSVGElement.idl \
624    $$PWD/svg/SVGSwitchElement.idl \
625    $$PWD/svg/SVGSymbolElement.idl \
626    $$PWD/svg/SVGTextContentElement.idl \
627    $$PWD/svg/SVGTextElement.idl \
628    $$PWD/svg/SVGTextPathElement.idl \
629    $$PWD/svg/SVGTextPositioningElement.idl \
630    $$PWD/svg/SVGTitleElement.idl \
631    $$PWD/svg/SVGTransform.idl \
632    $$PWD/svg/SVGTransformList.idl \
633    $$PWD/svg/SVGTRefElement.idl \
634    $$PWD/svg/SVGTSpanElement.idl \
635    $$PWD/svg/SVGUnitTypes.idl \
636    $$PWD/svg/SVGUseElement.idl \
637    $$PWD/svg/SVGViewElement.idl \
638    $$PWD/svg/SVGVKernElement.idl \
639    $$PWD/svg/SVGViewSpec.idl \
640    $$PWD/svg/SVGZoomAndPan.idl \
641    $$PWD/svg/SVGZoomEvent.idl
642}
643
644enable?(GAMEPAD) {
645  IDL_BINDINGS += \
646    $$PWD/Modules/gamepad/Gamepad.idl \
647    $$PWD/Modules/gamepad/GamepadList.idl \
648    $$PWD/Modules/gamepad/NavigatorGamepad.idl
649}
650
651enable?(VIDEO_TRACK) {
652  IDL_BINDINGS += \
653    $$PWD/html/track/AudioTrack.idl \
654    $$PWD/html/track/AudioTrackList.idl \
655    $$PWD/html/track/TextTrack.idl \
656    $$PWD/html/track/TextTrackCue.idl \
657    $$PWD/html/track/TextTrackCueList.idl \
658    $$PWD/html/track/TextTrackList.idl \
659    $$PWD/html/track/TrackEvent.idl \
660    $$PWD/html/track/VideoTrack.idl \
661    $$PWD/html/track/VideoTrackList.idl
662}
663
664enable?(MEDIA_SOURCE) {
665  IDL_BINDINGS += \
666    $$PWD/Modules/mediasource/MediaSource.idl \
667    $$PWD/Modules/mediasource/SourceBuffer.idl \
668    $$PWD/Modules/mediasource/SourceBufferList.idl
669}
670
671qtPrepareTool(QMAKE_MOC, moc)
672
673mathmlnames.output = MathMLNames.cpp
674mathmlnames.input = MATHML_NAMES
675mathmlnames.depends = $$PWD/mathml/mathattrs.in
676mathmlnames.script = $$PWD/dom/make_names.pl
677mathmlnames.commands = perl -I$$PWD/bindings/scripts $$mathmlnames.script --tags $$PWD/mathml/mathtags.in --attrs $$PWD/mathml/mathattrs.in --extraDefines \"$${DEFINES} $$configDefines()\" --preprocessor \"$${QMAKE_MOC} -E\" --factory --wrapperFactory --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
678mathmlnames.extra_sources = MathMLElementFactory.cpp
679GENERATORS += mathmlnames
680
681# GENERATOR 5-C:
682svgnames.output = SVGNames.cpp
683svgnames.input = SVG_NAMES
684svgnames.depends = $$PWD/svg/svgattrs.in
685svgnames.script = $$PWD/dom/make_names.pl
686svgnames.commands = perl -I$$PWD/bindings/scripts $$svgnames.script --tags $$PWD/svg/svgtags.in --attrs $$PWD/svg/svgattrs.in --extraDefines \"$${DEFINES} $$configDefines()\" --preprocessor \"$${QMAKE_MOC} -E\" --factory --wrapperFactory --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
687svgnames.extra_sources = SVGElementFactory.cpp
688    svgnames.extra_sources += JSSVGElementWrapperFactory.cpp
689GENERATORS += svgnames
690
691# GENERATOR 5-D:
692xlinknames.output = XLinkNames.cpp
693xlinknames.script = $$PWD/dom/make_names.pl
694xlinknames.commands = perl -I$$PWD/bindings/scripts $$xlinknames.script --attrs $$PWD/svg/xlinkattrs.in --preprocessor \"$${QMAKE_MOC} -E\" --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
695xlinknames.input = XLINK_NAMES
696GENERATORS += xlinknames
697
698# GENERATOR 6-A:
699cssprops.script = $$PWD/css/makeprop.pl
700cssprops.output = CSSPropertyNames.cpp
701cssprops.input = WALDOCSSPROPS
702cssprops.commands = perl -ne \"print $1\" ${QMAKE_FILE_NAME} $${EXTRACSSPROPERTIES} > ${QMAKE_FUNC_FILE_OUT_PATH}/${QMAKE_FILE_BASE}.in && cd ${QMAKE_FUNC_FILE_OUT_PATH} && perl -I$$PWD/bindings/scripts $$cssprops.script --defines \"$$javascriptFeatureDefines()\" --preprocessor \"$${QMAKE_MOC} -E\" ${QMAKE_FILE_NAME} && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
703cssprops.depends = ${QMAKE_FILE_NAME} $${EXTRACSSPROPERTIES} $$cssprops.script
704GENERATORS += cssprops
705
706# GENERATOR 6-B:
707cssvalues.script = $$PWD/css/makevalues.pl
708cssvalues.output = CSSValueKeywords.cpp
709cssvalues.input = WALDOCSSVALUES
710cssvalues.commands = perl -ne \"print $1\" ${QMAKE_FILE_NAME} $$EXTRACSSVALUES > ${QMAKE_FUNC_FILE_OUT_PATH}/${QMAKE_FILE_BASE}.in && cd ${QMAKE_FUNC_FILE_OUT_PATH} && perl -I$$PWD/bindings/scripts $$cssvalues.script --defines \"$$javascriptFeatureDefines()\" --preprocessor \"$${QMAKE_MOC} -E\" ${QMAKE_FILE_NAME} && $(DEL_FILE) ${QMAKE_FILE_BASE}.in ${QMAKE_FILE_BASE}.gperf
711cssvalues.depends = ${QMAKE_FILE_NAME} $${EXTRACSSVALUES} $$cssvalues.script
712cssvalues.clean = ${QMAKE_FILE_OUT} ${QMAKE_FUNC_FILE_OUT_PATH}/${QMAKE_FILE_BASE}.h
713GENERATORS += cssvalues
714
715INTERNAL_SETTINGS_GENERATED_IDL = InternalSettingsGenerated.idl
716# GENERATOR 6-C:
717settingsmacros.output = $$INTERNAL_SETTINGS_GENERATED_IDL InternalSettingsGenerated.cpp
718settingsmacros.input = SETTINGS_MACROS
719settingsmacros.script = $$PWD/page/make_settings.pl
720settingsmacros.commands = perl -I$$PWD/bindings/scripts $$settingsmacros.script --input $$SETTINGS_MACROS --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
721settingsmacros.depends = $$PWD/page/make_settings.pl $$SETTINGS_MACROS
722settingsmacros.add_output_to_sources = false
723settingsmacros.extra_sources = InternalSettingsGenerated.cpp
724GENERATORS += settingsmacros
725
726# make_settings.pl generates this file. We can't use ${QMAKE_FUNC_FILE_OUT_PATH} here since generateBindings.input
727# doesn't know how to resolve ${QMAKE_FUNC_FILE_OUT_PATH}.
728IDL_BINDINGS += generated/$$INTERNAL_SETTINGS_GENERATED_IDL
729
730# GENERATOR 0: Resolve [Supplemental] dependency in IDLs
731SUPPLEMENTAL_DEPENDENCY_FILE = supplemental_dependency.tmp
732WINDOW_CONSTRUCTORS_FILE = DOMWindowConstructors.idl
733WORKERCONTEXT_CONSTRUCTORS_FILE = WorkerContextConstructors.idl
734IDL_FILES_TMP = ${QMAKE_FUNC_FILE_OUT_PATH}/idl_files.tmp
735PREPROCESS_IDLS_SCRIPT = $$PWD/bindings/scripts/preprocess-idls.pl
736IDL_ATTRIBUTES_FILE = $$PWD/bindings/scripts/IDLAttributes.txt
737
738preprocessIdls.input = IDL_ATTRIBUTES_FILE
739preprocessIdls.script = $$PREPROCESS_IDLS_SCRIPT
740# FIXME : We need to use only perl at some point.
741win_cmd_shell: preprocessIdls.commands = type nul > $$IDL_FILES_TMP $$EOC
742else: preprocessIdls.commands = cat /dev/null > $$IDL_FILES_TMP $$EOC
743for(binding, IDL_BINDINGS) {
744    # We need "$$binding" instead of "$$binding ", because Windows' echo writes trailing whitespaces. (http://wkb.ug/88304)
745    # A space is omitted between "$$IDL_FILES_TMP" and "$$EOC" to also avoid writing trailing whitespace. (http://wkb.ug/95730)
746    preprocessIdls.commands += echo $$binding>> $$IDL_FILES_TMP$$EOC
747}
748preprocessIdls.commands += perl -I$$PWD/bindings/scripts $$preprocessIdls.script \
749                               --defines \"$$javascriptFeatureDefines()\" \
750                               --idlFilesList $$IDL_FILES_TMP \
751                               --supplementalDependencyFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE \
752                               --windowConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WINDOW_CONSTRUCTORS_FILE \
753                               --workerContextConstructorsFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$WORKERCONTEXT_CONSTRUCTORS_FILE
754preprocessIdls.output = $$SUPPLEMENTAL_DEPENDENCY_FILE $$WINDOW_CONSTRUCTORS_FILE $$WORKERCONTEXT_CONSTRUCTORS_FILE
755preprocessIdls.add_output_to_sources = false
756preprocessIdls.depends = $$IDL_BINDINGS
757GENERATORS += preprocessIdls
758
759# GENERATOR 1: Generate .h and .cpp from IDLs
760generateBindings.input = IDL_BINDINGS
761generateBindings.script = $$PWD/bindings/scripts/generate-bindings.pl
762generateBindings.commands = $$setEnvironmentVariable(SOURCE_ROOT, $$toSystemPath($$PWD)) && perl -I$$PWD/bindings/scripts $$generateBindings.script \
763                            --defines \"$$javascriptFeatureDefines()\" \
764                            --generator JS \
765                            --include Modules/filesystem \
766                            --include Modules/geolocation \
767                            --include Modules/indexeddb \
768                            --include Modules/mediasource \
769                            --include Modules/notifications \
770                            --include Modules/quota \
771                            --include Modules/webaudio \
772                            --include Modules/webdatabase \
773                            --include Modules/websockets \
774                            --include css \
775                            --include dom \
776                            --include editing \
777                            --include fileapi \
778                            --include html \
779                            --include html/canvas \
780                            --include html/shadow \
781                            --include html/track \
782                            --include inspector \
783                            --include loader/appcache \
784                            --include page \
785                            --include plugins \
786                            --include storage \
787                            --include svg \
788                            --include testing \
789                            --include workers \
790                            --include xml \
791                            --outputDir ${QMAKE_FUNC_FILE_OUT_PATH} \
792                            --supplementalDependencyFile ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE \
793                            --idlAttributesFile $${IDL_ATTRIBUTES_FILE} \
794                            --preprocessor \"$${QMAKE_MOC} -E\" ${QMAKE_FILE_NAME}
795generateBindings.output = JS${QMAKE_FILE_BASE}.cpp
796generateBindings.depends = ${QMAKE_FUNC_FILE_OUT_PATH}/$$SUPPLEMENTAL_DEPENDENCY_FILE \
797                           $$PWD/bindings/scripts/CodeGenerator.pm \
798                           $$PWD/bindings/scripts/CodeGeneratorJS.pm \
799                           $$PWD/bindings/scripts/IDLParser.pm \
800                           $$PWD/bindings/scripts/InFilesParser.pm \
801                           $$PWD/bindings/scripts/preprocessor.pm \
802                           $$IDL_ATTRIBUTES_FILE
803GENERATORS += generateBindings
804
805# GENERATOR 2: inspector idl compiler
806inspectorValidate.output = InspectorProtocolVersion.h
807inspectorValidate.input = INSPECTOR_JSON
808inspectorValidate.script = $$PWD/inspector/generate-inspector-protocol-version
809inspectorValidate.commands = python $$inspectorValidate.script -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN}
810inspectorValidate.depends = $$PWD/inspector/generate-inspector-protocol-version
811inspectorValidate.add_output_to_sources = false
812GENERATORS += inspectorValidate
813
814inspectorJSON.output = InspectorFrontend.cpp InspectorBackendDispatcher.cpp InspectorTypeBuilder.cpp
815inspectorJSON.input = INSPECTOR_JSON
816inspectorJSON.script = $$PWD/inspector/CodeGeneratorInspector.py
817inspectorJSON.commands = python $$inspectorJSON.script $$PWD/inspector/Inspector.json --output_h_dir ${QMAKE_FUNC_FILE_OUT_PATH} --output_cpp_dir ${QMAKE_FUNC_FILE_OUT_PATH}
818inspectorJSON.depends = $$inspectorJSON.script
819GENERATORS += inspectorJSON
820
821inspectorBackendCommands.output = InspectorBackendCommands.qrc
822inspectorBackendCommands.input = INSPECTOR_BACKEND_COMMANDS_QRC
823inspectorBackendCommands.commands = $$QMAKE_COPY $$toSystemPath($$INSPECTOR_BACKEND_COMMANDS_QRC) ${QMAKE_FUNC_FILE_OUT_PATH}$${QMAKE_DIR_SEP}InspectorBackendCommands.qrc
824inspectorBackendCommands.add_output_to_sources = false
825GENERATORS += inspectorBackendCommands
826
827inspectorOverlayPage.output = InspectorOverlayPage.h
828inspectorOverlayPage.input = INSPECTOR_OVERLAY_PAGE
829inspectorOverlayPage.commands = perl $$PWD/inspector/xxd.pl InspectorOverlayPage_html ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
830inspectorOverlayPage.add_output_to_sources = false
831GENERATORS += inspectorOverlayPage
832
833# GENERATOR 2: inspector injected script source compiler
834injectedScriptSource.output = InjectedScriptSource.h
835injectedScriptSource.input = INJECTED_SCRIPT_SOURCE
836injectedScriptSource.commands = perl $$PWD/inspector/xxd.pl InjectedScriptSource_js ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
837injectedScriptSource.add_output_to_sources = false
838GENERATORS += injectedScriptSource
839
840# GENERATOR 3: inspector canvas injected script source compiler
841InjectedScriptCanvasModuleSource.output = InjectedScriptCanvasModuleSource.h
842InjectedScriptCanvasModuleSource.input = INJECTED_SCRIPT_CANVAS_MODULE_SOURCE
843InjectedScriptCanvasModuleSource.commands = perl $$PWD/inspector/xxd.pl InjectedScriptCanvasModuleSource_js ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
844InjectedScriptCanvasModuleSource.add_output_to_sources = false
845GENERATORS += InjectedScriptCanvasModuleSource
846
847# GENERATOR 4: CSS grammar
848cssbison.output = CSSGrammar.cpp
849cssbison.input = CSSBISON
850cssbison.script = $$PWD/css/makegrammar.pl
851cssbison.commands = perl -I $$PWD/bindings/scripts $$cssbison.script --outputDir ${QMAKE_FUNC_FILE_OUT_PATH} --extraDefines \"$${DEFINES} $$configDefines()\" --preprocessor \"$${QMAKE_MOC} -E\" --symbolsPrefix cssyy ${QMAKE_FILE_NAME}
852cssbison.depends = ${QMAKE_FILE_NAME}
853GENERATORS += cssbison
854
855# GENERATOR 5-A:
856htmlnames.output = HTMLNames.cpp
857htmlnames.input = HTML_NAMES
858htmlnames.script = $$PWD/dom/make_names.pl
859htmlnames.depends = $$PWD/html/HTMLAttributeNames.in
860htmlnames.commands = perl -I$$PWD/bindings/scripts $$htmlnames.script --tags $$PWD/html/HTMLTagNames.in --attrs $$PWD/html/HTMLAttributeNames.in --extraDefines \"$${DEFINES} $$configDefines()\" --preprocessor \"$${QMAKE_MOC} -E\"  --factory --wrapperFactory --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
861htmlnames.extra_sources = HTMLElementFactory.cpp
862htmlnames.extra_sources += JSHTMLElementWrapperFactory.cpp
863GENERATORS += htmlnames
864
865# GENERATOR 5-B:
866xmlnsnames.output = XMLNSNames.cpp
867xmlnsnames.input = XMLNS_NAMES
868xmlnsnames.script = $$PWD/dom/make_names.pl
869xmlnsnames.commands = perl -I$$PWD/bindings/scripts $$xmlnsnames.script --attrs $$PWD/xml/xmlnsattrs.in --preprocessor \"$${QMAKE_MOC} -E\" --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
870GENERATORS += xmlnsnames
871
872# GENERATOR 5-C:
873xmlnames.output = XMLNames.cpp
874xmlnames.input = XML_NAMES
875xmlnames.script = $$PWD/dom/make_names.pl
876xmlnames.commands = perl -I$$PWD/bindings/scripts $$xmlnames.script --attrs $$PWD/xml/xmlattrs.in --preprocessor \"$${QMAKE_MOC} -E\" --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
877GENERATORS += xmlnames
878
879# GENERATOR 5-D:
880fontnames.output = WebKitFontFamilyNames.cpp
881fontnames.input = FONT_NAMES
882fontnames.script = $$PWD/dom/make_names.pl
883fontnames.commands = perl -I$$PWD/bindings/scripts $$fontnames.script --fonts $$FONT_NAMES --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
884entities.depends = $$PWD/dom/make_names.pl $$FONT_NAMES
885GENERATORS += fontnames
886
887# GENERATOR 5-E:
888eventfactory.output = EventFactory.cpp
889eventfactory.input = EVENTS_NAMES
890eventfactory.script = $$PWD/dom/make_event_factory.pl
891eventfactory.commands = perl -I$$PWD/bindings/scripts $$eventfactory.script --input $$EVENTS_NAMES --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
892eventfactory.depends = $$PWD/dom/make_event_factory.pl $$EVENTS_NAMES
893GENERATORS += eventfactory
894
895# GENERATOR 5-F:
896eventtargetfactory.output = EventTargetInterfaces.h
897eventtargetfactory.add_output_to_sources = false
898eventtargetfactory.input = EVENT_TARGET_FACTORY
899eventtargetfactory.script = $$PWD/dom/make_event_factory.pl
900eventtargetfactory.commands = perl -I$$PWD/bindings/scripts $$eventfactory.script --input $$EVENT_TARGET_FACTORY --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
901eventtargetfactory.depends = $$PWD/dom/make_event_factory.pl $$EVENT_TARGET_FACTORY
902GENERATORS += eventtargetfactory
903
904# GENERATOR 5-G:
905exceptioncodedescription.output = ExceptionCodeDescription.cpp
906exceptioncodedescription.input = DOM_EXCEPTIONS
907exceptioncodedescription.script = $$PWD/dom/make_dom_exceptions.pl
908exceptioncodedescription.commands = perl -I$$PWD/bindings/scripts $$exceptioncodedescription.script --input $$DOM_EXCEPTIONS --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}
909exceptioncodedescription.depends = $$PWD/dom/make_dom_exceptions.pl $$DOM_EXCEPTIONS
910GENERATORS += exceptioncodedescription
911
912# GENERATOR 8-A:
913entities.output = HTMLEntityTable.cpp
914entities.input = HTML_ENTITIES
915entities.script = $$PWD/html/parser/create-html-entity-table
916entities.commands = python $$entities.script -o ${QMAKE_FILE_OUT} $$HTML_ENTITIES
917entities.clean = ${QMAKE_FILE_OUT}
918entities.depends = $$PWD/html/parser/create-html-entity-table
919GENERATORS += entities
920
921# GENERATOR 8-B:
922colordata.output = ColorData.cpp
923colordata.input = COLORDATA_GPERF
924colordata.script = $$PWD/make-hash-tools.pl
925colordata.commands = perl $$colordata.script ${QMAKE_FUNC_FILE_OUT_PATH} $$COLORDATA_GPERF
926colordata.clean = ${QMAKE_FILE_OUT}
927colordata.depends = $$PWD/make-hash-tools.pl
928GENERATORS += colordata
929
930enable?(XSLT) {
931    # GENERATOR 8-C:
932    xmlviewercss.output = XMLViewerCSS.h
933    xmlviewercss.input = XMLVIEWER_CSS
934    xmlviewercss.script = $$PWD/inspector/xxd.pl
935    xmlviewercss.commands = perl $$xmlviewercss.script XMLViewer_css $$XMLVIEWER_CSS ${QMAKE_FILE_OUT}
936    xmlviewercss.clean = ${QMAKE_FILE_OUT}
937    xmlviewercss.depends = $$PWD/inspector/xxd.pl
938    xmlviewercss.add_output_to_sources = false
939    GENERATORS += xmlviewercss
940
941    # GENERATOR 8-D:
942    xmlviewerjs.output = XMLViewerJS.h
943    xmlviewerjs.input = XMLVIEWER_JS
944    xmlviewerjs.script = $$PWD/inspector/xxd.pl
945    xmlviewerjs.commands = perl $$xmlviewerjs.script XMLViewer_js $$XMLVIEWER_JS ${QMAKE_FILE_OUT}
946    xmlviewerjs.clean = ${QMAKE_FILE_OUT}
947    xmlviewerjs.depends = $$PWD/inspector/xxd.pl
948    xmlviewerjs.add_output_to_sources = false
949    GENERATORS += xmlviewerjs
950}
951
952# GENERATOR 9:
953stylesheets.script = $$PWD/css/make-css-file-arrays.pl
954stylesheets.output = UserAgentStyleSheetsData.cpp
955stylesheets.input = stylesheets.script
956stylesheets.commands = perl $$stylesheets.script ${QMAKE_FUNC_FILE_OUT_PATH}/UserAgentStyleSheets.h ${QMAKE_FILE_OUT} $$STYLESHEETS_EMBED
957stylesheets.depends = $$STYLESHEETS_EMBED
958stylesheets.clean = ${QMAKE_FILE_OUT} ${QMAKE_FUNC_FILE_OUT_PATH}/UserAgentStyleSheets.h
959GENERATORS += stylesheets
960
961# GENERATOR 10:
962pluginsresources.script = $$PWD/css/make-css-file-arrays.pl
963pluginsresources.output = PlugInsResourcesData.cpp
964pluginsresources.input = pluginsresources.script
965pluginsresources.commands = perl $$pluginsresources.script ${QMAKE_FUNC_FILE_OUT_PATH}/PlugInsResources.h ${QMAKE_FILE_OUT} $$PLUGINS_EMBED
966pluginsresources.depends = $$PLUGINS_EMBED
967pluginsresources.clean = ${QMAKE_FILE_OUT} ${QMAKE_FUNC_FILE_OUT_PATH}/PlugInsResources.h
968GENERATORS += pluginsresources
969
970# GENERATOR 11: XPATH grammar
971xpathbison.output = ${QMAKE_FILE_BASE}.cpp
972xpathbison.input = XPATHBISON
973xpathbison.commands = bison -d -p xpathyy ${QMAKE_FILE_NAME} -o ${QMAKE_FUNC_FILE_OUT_PATH}/${QMAKE_FILE_BASE}.tab.c && $(MOVE) ${QMAKE_FUNC_FILE_OUT_PATH}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.c ${QMAKE_FUNC_FILE_OUT_PATH}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.cpp && $(MOVE) ${QMAKE_FUNC_FILE_OUT_PATH}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.h ${QMAKE_FUNC_FILE_OUT_PATH}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.h
974xpathbison.depends = ${QMAKE_FILE_NAME}
975GENERATORS += xpathbison
976
977# GENERATOR 12: WebKit Version
978# The appropriate Apple-maintained Version.xcconfig file for WebKit version information is in Source/WebKit/mac/Configurations/.
979webkitversion.script = $$PWD/../WebKit/scripts/generate-webkitversion.pl
980webkitversion.output = WebKitVersion.h
981webkitversion.input = webkitversion.script
982webkitversion.commands = perl $$webkitversion.script --config $$PWD/../WebKit/mac/Configurations/Version.xcconfig --outputDir ${QMAKE_FUNC_FILE_OUT_PATH}/
983webkitversion.clean = ${QMAKE_FUNC_FILE_OUT_PATH}/WebKitVersion.h
984webkitversion.add_output_to_sources = false
985GENERATORS += webkitversion
986