Enable ENCRYPTED_MEDIA support on Mac.
[WebKit-https.git] / Source / WebCore / DerivedSources.make
1 # Copyright (C) 2006, 2007, 2008, 2012 Apple Inc. All rights reserved.
2 # Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
3 # Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au>
4 #
5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions
7 # are met:
8 #
9 # 1.  Redistributions of source code must retain the above copyright
10 #     notice, this list of conditions and the following disclaimer.
11 # 2.  Redistributions in binary form must reproduce the above copyright
12 #     notice, this list of conditions and the following disclaimer in the
13 #     documentation and/or other materials provided with the distribution.
14 # 3.  Neither the name of Apple Computer, Inc. ("Apple") nor the names of
15 #     its contributors may be used to endorse or promote products derived
16 #     from this software without specific prior written permission.
17 #
18 # THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 # EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 # DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29 VPATH = \
30     $(WebCore) \
31     $(WebCore)/Modules/filesystem \
32     $(WebCore)/Modules/geolocation \
33     $(WebCore)/Modules/indexeddb \
34     $(WebCore)/Modules/mediasource \
35     $(WebCore)/Modules/notifications \
36     $(WebCore)/Modules/quota \
37     $(WebCore)/Modules/webaudio \
38     $(WebCore)/Modules/webdatabase \
39     $(WebCore)/Modules/websockets \
40     $(WebCore)/bindings/generic \
41     $(WebCore)/bindings/js \
42     $(WebCore)/bindings/objc \
43     $(WebCore)/css \
44     $(WebCore)/dom \
45     $(WebCore)/editing \
46     $(WebCore)/fileapi \
47     $(WebCore)/html \
48     $(WebCore)/html/canvas \
49     $(WebCore)/html/shadow \
50     $(WebCore)/html/track \
51     $(WebCore)/inspector \
52     $(WebCore)/loader/appcache \
53     $(WebCore)/page \
54     $(WebCore)/plugins \
55     $(WebCore)/storage \
56     $(WebCore)/xml \
57     $(WebCore)/workers \
58     $(WebCore)/svg \
59     $(WebCore)/testing \
60     $(WebCore)/websockets \
61 #
62
63 BINDING_IDLS = \
64     $(WebCore)/Modules/filesystem/DOMFileSystem.idl \
65     $(WebCore)/Modules/filesystem/DOMFileSystemSync.idl \
66     $(WebCore)/Modules/filesystem/DOMWindowFileSystem.idl \
67     $(WebCore)/Modules/filesystem/DirectoryEntry.idl \
68     $(WebCore)/Modules/filesystem/DirectoryEntrySync.idl \
69     $(WebCore)/Modules/filesystem/DirectoryReader.idl \
70     $(WebCore)/Modules/filesystem/DirectoryReaderSync.idl \
71     $(WebCore)/Modules/filesystem/EntriesCallback.idl \
72     $(WebCore)/Modules/filesystem/Entry.idl \
73     $(WebCore)/Modules/filesystem/EntryArray.idl \
74     $(WebCore)/Modules/filesystem/EntryArraySync.idl \
75     $(WebCore)/Modules/filesystem/EntryCallback.idl \
76     $(WebCore)/Modules/filesystem/EntrySync.idl \
77     $(WebCore)/Modules/filesystem/ErrorCallback.idl \
78     $(WebCore)/Modules/filesystem/FileCallback.idl \
79     $(WebCore)/Modules/filesystem/FileEntry.idl \
80     $(WebCore)/Modules/filesystem/FileEntrySync.idl \
81     $(WebCore)/Modules/filesystem/FileSystemCallback.idl \
82     $(WebCore)/Modules/filesystem/FileWriter.idl \
83     $(WebCore)/Modules/filesystem/FileWriterCallback.idl \
84     $(WebCore)/Modules/filesystem/FileWriterSync.idl \
85     $(WebCore)/Modules/filesystem/Metadata.idl \
86     $(WebCore)/Modules/filesystem/MetadataCallback.idl \
87     $(WebCore)/Modules/filesystem/WorkerContextFileSystem.idl \
88     $(WebCore)/Modules/geolocation/Geolocation.idl \
89     $(WebCore)/Modules/geolocation/Geoposition.idl \
90     $(WebCore)/Modules/geolocation/NavigatorGeolocation.idl \
91     $(WebCore)/Modules/geolocation/PositionCallback.idl \
92     $(WebCore)/Modules/geolocation/PositionError.idl \
93     $(WebCore)/Modules/geolocation/PositionErrorCallback.idl \
94     $(WebCore)/Modules/indexeddb/DOMWindowIndexedDatabase.idl \
95     $(WebCore)/Modules/indexeddb/IDBAny.idl \
96     $(WebCore)/Modules/indexeddb/IDBCursor.idl \
97     $(WebCore)/Modules/indexeddb/IDBDatabase.idl \
98     $(WebCore)/Modules/indexeddb/IDBDatabaseException.idl \
99     $(WebCore)/Modules/indexeddb/IDBFactory.idl \
100     $(WebCore)/Modules/indexeddb/IDBIndex.idl \
101     $(WebCore)/Modules/indexeddb/IDBKey.idl \
102     $(WebCore)/Modules/indexeddb/IDBKeyRange.idl \
103     $(WebCore)/Modules/indexeddb/IDBObjectStore.idl \
104     $(WebCore)/Modules/indexeddb/IDBRequest.idl \
105     $(WebCore)/Modules/indexeddb/IDBTransaction.idl \
106     $(WebCore)/Modules/indexeddb/IDBVersionChangeEvent.idl \
107     $(WebCore)/Modules/indexeddb/IDBVersionChangeRequest.idl \
108     $(WebCore)/Modules/indexeddb/WorkerContextIndexedDatabase.idl \
109     $(WebCore)/Modules/mediasource/MediaSource.idl \
110     $(WebCore)/Modules/mediasource/SourceBuffer.idl \
111     $(WebCore)/Modules/mediasource/SourceBufferList.idl \
112     $(WebCore)/Modules/notifications/DOMWindowNotifications.idl \
113     $(WebCore)/Modules/notifications/Notification.idl \
114     $(WebCore)/Modules/notifications/NotificationCenter.idl \
115     $(WebCore)/Modules/notifications/NotificationPermissionCallback.idl \
116     $(WebCore)/Modules/notifications/WorkerContextNotifications.idl \
117     $(WebCore)/Modules/quota/DOMWindowQuota.idl \
118     $(WebCore)/Modules/quota/StorageInfo.idl \
119     $(WebCore)/Modules/quota/StorageInfoErrorCallback.idl \
120     $(WebCore)/Modules/quota/StorageInfoQuotaCallback.idl \
121     $(WebCore)/Modules/quota/StorageInfoUsageCallback.idl \
122     $(WebCore)/Modules/webaudio/AudioBuffer.idl \
123     $(WebCore)/Modules/webaudio/AudioBufferCallback.idl \
124     $(WebCore)/Modules/webaudio/AudioBufferSourceNode.idl \
125     $(WebCore)/Modules/webaudio/AudioChannelMerger.idl \
126     $(WebCore)/Modules/webaudio/AudioChannelSplitter.idl \
127     $(WebCore)/Modules/webaudio/AudioContext.idl \
128     $(WebCore)/Modules/webaudio/AudioDestinationNode.idl \
129     $(WebCore)/Modules/webaudio/AudioGain.idl \
130     $(WebCore)/Modules/webaudio/AudioGainNode.idl \
131     $(WebCore)/Modules/webaudio/AudioListener.idl \
132     $(WebCore)/Modules/webaudio/AudioNode.idl \
133     $(WebCore)/Modules/webaudio/AudioPannerNode.idl \
134     $(WebCore)/Modules/webaudio/AudioParam.idl \
135     $(WebCore)/Modules/webaudio/AudioProcessingEvent.idl \
136     $(WebCore)/Modules/webaudio/AudioSourceNode.idl \
137     $(WebCore)/Modules/webaudio/BiquadFilterNode.idl \
138     $(WebCore)/Modules/webaudio/ConvolverNode.idl \
139     $(WebCore)/Modules/webaudio/DOMWindowWebAudio.idl \
140     $(WebCore)/Modules/webaudio/DelayNode.idl \
141     $(WebCore)/Modules/webaudio/DynamicsCompressorNode.idl \
142     $(WebCore)/Modules/webaudio/JavaScriptAudioNode.idl \
143     $(WebCore)/Modules/webaudio/MediaElementAudioSourceNode.idl \
144     $(WebCore)/Modules/webaudio/MediaStreamAudioSourceNode.idl \
145     $(WebCore)/Modules/webaudio/Oscillator.idl \
146     $(WebCore)/Modules/webaudio/OfflineAudioCompletionEvent.idl \
147     $(WebCore)/Modules/webaudio/RealtimeAnalyserNode.idl \
148     $(WebCore)/Modules/webaudio/WaveShaperNode.idl \
149     $(WebCore)/Modules/webaudio/WaveTable.idl \
150     $(WebCore)/Modules/webdatabase/DOMWindowWebDatabase.idl \
151     $(WebCore)/Modules/webdatabase/Database.idl \
152     $(WebCore)/Modules/webdatabase/DatabaseCallback.idl \
153     $(WebCore)/Modules/webdatabase/DatabaseSync.idl \
154     $(WebCore)/Modules/webdatabase/SQLError.idl \
155     $(WebCore)/Modules/webdatabase/SQLException.idl \
156     $(WebCore)/Modules/webdatabase/SQLResultSet.idl \
157     $(WebCore)/Modules/webdatabase/SQLResultSetRowList.idl \
158     $(WebCore)/Modules/webdatabase/SQLStatementCallback.idl \
159     $(WebCore)/Modules/webdatabase/SQLStatementErrorCallback.idl \
160     $(WebCore)/Modules/webdatabase/SQLTransaction.idl \
161     $(WebCore)/Modules/webdatabase/SQLTransactionCallback.idl \
162     $(WebCore)/Modules/webdatabase/SQLTransactionErrorCallback.idl \
163     $(WebCore)/Modules/webdatabase/SQLTransactionSync.idl \
164     $(WebCore)/Modules/webdatabase/SQLTransactionSyncCallback.idl \
165     $(WebCore)/Modules/webdatabase/WorkerContextWebDatabase.idl \
166     $(WebCore)/Modules/websockets/CloseEvent.idl \
167     $(WebCore)/Modules/websockets/DOMWindowWebSocket.idl \
168     $(WebCore)/Modules/websockets/WebSocket.idl \
169     $(WebCore)/Modules/websockets/WorkerContextWebSocket.idl \
170     $(WebCore)/css/CSSCharsetRule.idl \
171     $(WebCore)/css/CSSFontFaceRule.idl \
172     $(WebCore)/css/CSSImportRule.idl \
173     $(WebCore)/css/CSSMediaRule.idl \
174     $(WebCore)/css/CSSPageRule.idl \
175     $(WebCore)/css/CSSPrimitiveValue.idl \
176     $(WebCore)/css/CSSRule.idl \
177     $(WebCore)/css/CSSRuleList.idl \
178     $(WebCore)/css/CSSStyleDeclaration.idl \
179     $(WebCore)/css/CSSStyleRule.idl \
180     $(WebCore)/css/CSSStyleSheet.idl \
181     $(WebCore)/css/CSSUnknownRule.idl \
182     $(WebCore)/css/CSSValue.idl \
183     $(WebCore)/css/CSSValueList.idl \
184     $(WebCore)/css/Counter.idl \
185     $(WebCore)/css/MediaList.idl \
186     $(WebCore)/css/MediaQueryList.idl \
187     $(WebCore)/css/MediaQueryListListener.idl \
188     $(WebCore)/css/RGBColor.idl \
189     $(WebCore)/css/Rect.idl \
190     $(WebCore)/css/StyleMedia.idl \
191     $(WebCore)/css/StyleSheet.idl \
192     $(WebCore)/css/StyleSheetList.idl \
193     $(WebCore)/css/WebKitCSSFilterValue.idl \
194     $(WebCore)/css/WebKitCSSKeyframeRule.idl \
195     $(WebCore)/css/WebKitCSSKeyframesRule.idl \
196     $(WebCore)/css/WebKitCSSMatrix.idl \
197     $(WebCore)/css/WebKitCSSRegionRule.idl \
198     $(WebCore)/css/WebKitCSSTransformValue.idl \
199     $(WebCore)/dom/Attr.idl \
200     $(WebCore)/dom/BeforeLoadEvent.idl \
201     $(WebCore)/dom/CDATASection.idl \
202     $(WebCore)/dom/CharacterData.idl \
203     $(WebCore)/dom/ClientRect.idl \
204     $(WebCore)/dom/ClientRectList.idl \
205     $(WebCore)/dom/Clipboard.idl \
206     $(WebCore)/dom/Comment.idl \
207     $(WebCore)/dom/CompositionEvent.idl \
208     $(WebCore)/dom/CustomEvent.idl \
209     $(WebCore)/dom/DOMCoreException.idl \
210     $(WebCore)/dom/DOMError.idl \
211     $(WebCore)/dom/DOMImplementation.idl \
212     $(WebCore)/dom/DOMStringList.idl \
213     $(WebCore)/dom/DOMStringMap.idl \
214     $(WebCore)/dom/DataTransferItem.idl \
215     $(WebCore)/dom/DataTransferItemList.idl \
216     $(WebCore)/dom/DeviceMotionEvent.idl \
217     $(WebCore)/dom/DeviceOrientationEvent.idl \
218     $(WebCore)/dom/Document.idl \
219     $(WebCore)/dom/DocumentFragment.idl \
220     $(WebCore)/dom/DocumentType.idl \
221     $(WebCore)/dom/Element.idl \
222     $(WebCore)/dom/Entity.idl \
223     $(WebCore)/dom/EntityReference.idl \
224     $(WebCore)/dom/ErrorEvent.idl \
225     $(WebCore)/dom/Event.idl \
226     $(WebCore)/dom/EventException.idl \
227     $(WebCore)/dom/EventListener.idl \
228     $(WebCore)/dom/EventTarget.idl \
229     $(WebCore)/dom/HashChangeEvent.idl \
230     $(WebCore)/dom/KeyboardEvent.idl \
231     $(WebCore)/dom/MessageChannel.idl \
232     $(WebCore)/dom/MessageEvent.idl \
233     $(WebCore)/dom/MessagePort.idl \
234     $(WebCore)/dom/MouseEvent.idl \
235     $(WebCore)/dom/MutationCallback.idl \
236     $(WebCore)/dom/MutationEvent.idl \
237     $(WebCore)/dom/MutationObserver.idl \
238     $(WebCore)/dom/MutationRecord.idl \
239     $(WebCore)/dom/DOMNamedFlowCollection.idl \
240     $(WebCore)/dom/NamedNodeMap.idl \
241     $(WebCore)/dom/Node.idl \
242     $(WebCore)/dom/NodeFilter.idl \
243     $(WebCore)/dom/NodeIterator.idl \
244     $(WebCore)/dom/NodeList.idl \
245     $(WebCore)/dom/Notation.idl \
246     $(WebCore)/dom/OverflowEvent.idl \
247     $(WebCore)/dom/PageTransitionEvent.idl \
248     $(WebCore)/dom/PopStateEvent.idl \
249     $(WebCore)/dom/ProcessingInstruction.idl \
250     $(WebCore)/dom/ProgressEvent.idl \
251     $(WebCore)/dom/ProgressEvent.idl \
252     $(WebCore)/dom/PropertyNodeList.idl \
253     $(WebCore)/dom/Range.idl \
254     $(WebCore)/dom/RangeException.idl \
255     $(WebCore)/dom/RequestAnimationFrameCallback.idl \
256     $(WebCore)/dom/ShadowRoot.idl \
257     $(WebCore)/dom/StringCallback.idl \
258     $(WebCore)/dom/Text.idl \
259     $(WebCore)/dom/TextEvent.idl \
260     $(WebCore)/dom/Touch.idl \
261     $(WebCore)/dom/TouchEvent.idl \
262     $(WebCore)/dom/TouchList.idl \
263     $(WebCore)/dom/TreeWalker.idl \
264     $(WebCore)/dom/UIEvent.idl \
265     $(WebCore)/dom/WebKitAnimationEvent.idl \
266     $(WebCore)/dom/WebKitNamedFlow.idl \
267     $(WebCore)/dom/WebKitTransitionEvent.idl \
268     $(WebCore)/dom/WheelEvent.idl \
269     $(WebCore)/editing/DOMTransaction.idl \
270     $(WebCore)/editing/UndoManager.idl \
271     $(WebCore)/fileapi/Blob.idl \
272     $(WebCore)/fileapi/File.idl \
273     $(WebCore)/fileapi/FileError.idl \
274     $(WebCore)/fileapi/FileException.idl \
275     $(WebCore)/fileapi/FileList.idl \
276     $(WebCore)/fileapi/FileReader.idl \
277     $(WebCore)/fileapi/FileReaderSync.idl \
278     $(WebCore)/html/DOMFormData.idl \
279     $(WebCore)/html/DOMSettableTokenList.idl \
280     $(WebCore)/html/DOMTokenList.idl \
281     $(WebCore)/html/DOMURL.idl \
282     $(WebCore)/html/HTMLAllCollection.idl \
283     $(WebCore)/html/HTMLAnchorElement.idl \
284     $(WebCore)/html/HTMLAppletElement.idl \
285     $(WebCore)/html/HTMLAreaElement.idl \
286     $(WebCore)/html/HTMLAudioElement.idl \
287     $(WebCore)/html/HTMLBRElement.idl \
288     $(WebCore)/html/HTMLBaseElement.idl \
289     $(WebCore)/html/HTMLBaseFontElement.idl \
290     $(WebCore)/html/HTMLBodyElement.idl \
291     $(WebCore)/html/HTMLButtonElement.idl \
292     $(WebCore)/html/HTMLCanvasElement.idl \
293     $(WebCore)/html/HTMLCollection.idl \
294     $(WebCore)/html/HTMLDListElement.idl \
295     $(WebCore)/html/HTMLDataListElement.idl \
296     $(WebCore)/html/HTMLDetailsElement.idl \
297     $(WebCore)/html/HTMLDialogElement.idl \
298     $(WebCore)/html/HTMLDirectoryElement.idl \
299     $(WebCore)/html/HTMLDivElement.idl \
300     $(WebCore)/html/HTMLDocument.idl \
301     $(WebCore)/html/HTMLElement.idl \
302     $(WebCore)/html/HTMLEmbedElement.idl \
303     $(WebCore)/html/HTMLFieldSetElement.idl \
304     $(WebCore)/html/HTMLFontElement.idl \
305     $(WebCore)/html/HTMLFormElement.idl \
306     $(WebCore)/html/HTMLFrameElement.idl \
307     $(WebCore)/html/HTMLFrameSetElement.idl \
308     $(WebCore)/html/HTMLHRElement.idl \
309     $(WebCore)/html/HTMLHeadElement.idl \
310     $(WebCore)/html/HTMLHeadingElement.idl \
311     $(WebCore)/html/HTMLHtmlElement.idl \
312     $(WebCore)/html/HTMLIFrameElement.idl \
313     $(WebCore)/html/HTMLImageElement.idl \
314     $(WebCore)/html/HTMLInputElement.idl \
315     $(WebCore)/html/HTMLKeygenElement.idl \
316     $(WebCore)/html/HTMLLIElement.idl \
317     $(WebCore)/html/HTMLLabelElement.idl \
318     $(WebCore)/html/HTMLLegendElement.idl \
319     $(WebCore)/html/HTMLLinkElement.idl \
320     $(WebCore)/html/HTMLMapElement.idl \
321     $(WebCore)/html/HTMLMarqueeElement.idl \
322     $(WebCore)/html/HTMLMediaElement.idl \
323     $(WebCore)/html/HTMLMenuElement.idl \
324     $(WebCore)/html/HTMLMetaElement.idl \
325     $(WebCore)/html/HTMLMeterElement.idl \
326     $(WebCore)/html/HTMLModElement.idl \
327     $(WebCore)/html/HTMLOListElement.idl \
328     $(WebCore)/html/HTMLObjectElement.idl \
329     $(WebCore)/html/HTMLOptGroupElement.idl \
330     $(WebCore)/html/HTMLOptionElement.idl \
331     $(WebCore)/html/HTMLOptionsCollection.idl \
332     $(WebCore)/html/HTMLOutputElement.idl \
333     $(WebCore)/html/HTMLParagraphElement.idl \
334     $(WebCore)/html/HTMLParamElement.idl \
335     $(WebCore)/html/HTMLPreElement.idl \
336     $(WebCore)/html/HTMLProgressElement.idl \
337     $(WebCore)/html/HTMLPropertiesCollection.idl \
338     $(WebCore)/html/HTMLQuoteElement.idl \
339     $(WebCore)/html/HTMLScriptElement.idl \
340     $(WebCore)/html/HTMLSelectElement.idl \
341     $(WebCore)/html/HTMLSourceElement.idl \
342     $(WebCore)/html/HTMLSpanElement.idl \
343     $(WebCore)/html/HTMLStyleElement.idl \
344     $(WebCore)/html/HTMLTableCaptionElement.idl \
345     $(WebCore)/html/HTMLTableCellElement.idl \
346     $(WebCore)/html/HTMLTableColElement.idl \
347     $(WebCore)/html/HTMLTableElement.idl \
348     $(WebCore)/html/HTMLTableRowElement.idl \
349     $(WebCore)/html/HTMLTableSectionElement.idl \
350     $(WebCore)/html/HTMLTextAreaElement.idl \
351     $(WebCore)/html/HTMLTitleElement.idl \
352     $(WebCore)/html/HTMLTrackElement.idl \
353     $(WebCore)/html/HTMLUListElement.idl \
354     $(WebCore)/html/HTMLUnknownElement.idl \
355     $(WebCore)/html/HTMLVideoElement.idl \
356     $(WebCore)/html/ImageData.idl \
357     $(WebCore)/html/MediaController.idl \
358     $(WebCore)/html/MediaError.idl \
359         $(WebCore)/html/MediaKeyError.idl \
360         $(WebCore)/html/MediaKeyEvent.idl \
361     $(WebCore)/html/MicroDataItemValue.idl \
362     $(WebCore)/html/RadioNodeList.idl \
363     $(WebCore)/html/TextMetrics.idl \
364     $(WebCore)/html/TimeRanges.idl \
365     $(WebCore)/html/ValidityState.idl \
366     $(WebCore)/html/VoidCallback.idl \
367     $(WebCore)/html/canvas/ArrayBuffer.idl \
368     $(WebCore)/html/canvas/ArrayBufferView.idl \
369     $(WebCore)/html/canvas/CanvasGradient.idl \
370     $(WebCore)/html/canvas/CanvasPattern.idl \
371     $(WebCore)/html/canvas/CanvasRenderingContext.idl \
372     $(WebCore)/html/canvas/CanvasRenderingContext2D.idl \
373     $(WebCore)/html/canvas/DataView.idl \
374     $(WebCore)/html/canvas/EXTTextureFilterAnisotropic.idl \
375     $(WebCore)/html/canvas/Float32Array.idl \
376     $(WebCore)/html/canvas/Float64Array.idl \
377     $(WebCore)/html/canvas/Int16Array.idl \
378     $(WebCore)/html/canvas/Int32Array.idl \
379     $(WebCore)/html/canvas/Int8Array.idl \
380     $(WebCore)/html/canvas/OESStandardDerivatives.idl \
381     $(WebCore)/html/canvas/OESTextureFloat.idl \
382     $(WebCore)/html/canvas/OESVertexArrayObject.idl \
383     $(WebCore)/html/canvas/Uint16Array.idl \
384     $(WebCore)/html/canvas/Uint32Array.idl \
385     $(WebCore)/html/canvas/Uint8Array.idl \
386     $(WebCore)/html/canvas/Uint8ClampedArray.idl \
387     $(WebCore)/html/canvas/WebGLActiveInfo.idl \
388     $(WebCore)/html/canvas/WebGLBuffer.idl \
389     $(WebCore)/html/canvas/WebGLCompressedTextureS3TC.idl \
390     $(WebCore)/html/canvas/WebGLContextAttributes.idl \
391     $(WebCore)/html/canvas/WebGLContextEvent.idl \
392     $(WebCore)/html/canvas/WebGLDepthTexture.idl \
393     $(WebCore)/html/canvas/WebGLFramebuffer.idl \
394     $(WebCore)/html/canvas/WebGLLoseContext.idl \
395     $(WebCore)/html/canvas/WebGLProgram.idl \
396     $(WebCore)/html/canvas/WebGLRenderbuffer.idl \
397     $(WebCore)/html/canvas/WebGLRenderingContext.idl \
398     $(WebCore)/html/canvas/WebGLShader.idl \
399     $(WebCore)/html/canvas/WebGLShaderPrecisionFormat.idl \
400     $(WebCore)/html/canvas/WebGLTexture.idl \
401     $(WebCore)/html/canvas/WebGLUniformLocation.idl \
402     $(WebCore)/html/canvas/WebGLVertexArrayObjectOES.idl \
403     $(WebCore)/html/shadow/HTMLContentElement.idl \
404     $(WebCore)/html/shadow/HTMLShadowElement.idl \
405     $(WebCore)/html/track/TextTrack.idl \
406     $(WebCore)/html/track/TextTrackCue.idl \
407     $(WebCore)/html/track/TextTrackCueList.idl \
408     $(WebCore)/html/track/TextTrackList.idl \
409     $(WebCore)/html/track/TrackEvent.idl \
410     $(WebCore)/inspector/InjectedScriptHost.idl \
411     $(WebCore)/inspector/InspectorFrontendHost.idl \
412     $(WebCore)/inspector/ScriptProfile.idl \
413     $(WebCore)/inspector/ScriptProfileNode.idl \
414     $(WebCore)/loader/appcache/DOMApplicationCache.idl \
415     $(WebCore)/page/AbstractView.idl \
416     $(WebCore)/page/BarInfo.idl \
417     $(WebCore)/page/Console.idl \
418     $(WebCore)/page/Coordinates.idl \
419     $(WebCore)/page/Crypto.idl \
420     $(WebCore)/page/DOMSecurityPolicy.idl \
421     $(WebCore)/page/DOMSelection.idl \
422     $(WebCore)/page/DOMWindow.idl \
423     $(WebCore)/page/EventSource.idl \
424     $(WebCore)/page/History.idl \
425     $(WebCore)/page/Location.idl \
426     $(WebCore)/page/MemoryInfo.idl \
427     $(WebCore)/page/Navigator.idl \
428     $(WebCore)/page/Performance.idl \
429     $(WebCore)/page/PerformanceNavigation.idl \
430     $(WebCore)/page/PerformanceTiming.idl \
431     $(WebCore)/page/Screen.idl \
432     $(WebCore)/page/SpeechInputEvent.idl \
433     $(WebCore)/page/SpeechInputResult.idl \
434     $(WebCore)/page/SpeechInputResultList.idl \
435     $(WebCore)/page/WebKitAnimation.idl \
436     $(WebCore)/page/WebKitAnimationList.idl \
437     $(WebCore)/page/WebKitPoint.idl \
438     $(WebCore)/page/WorkerNavigator.idl \
439     $(WebCore)/plugins/DOMMimeType.idl \
440     $(WebCore)/plugins/DOMMimeTypeArray.idl \
441     $(WebCore)/plugins/DOMPlugin.idl \
442     $(WebCore)/plugins/DOMPluginArray.idl \
443     $(WebCore)/storage/Storage.idl \
444     $(WebCore)/storage/StorageEvent.idl \
445     $(WebCore)/svg/ElementTimeControl.idl \
446     $(WebCore)/svg/SVGAElement.idl \
447     $(WebCore)/svg/SVGAltGlyphDefElement.idl \
448     $(WebCore)/svg/SVGAltGlyphElement.idl \
449     $(WebCore)/svg/SVGAltGlyphItemElement.idl \
450     $(WebCore)/svg/SVGAngle.idl \
451     $(WebCore)/svg/SVGAnimateColorElement.idl \
452     $(WebCore)/svg/SVGAnimateElement.idl \
453     $(WebCore)/svg/SVGAnimateMotionElement.idl \
454     $(WebCore)/svg/SVGAnimateTransformElement.idl \
455     $(WebCore)/svg/SVGAnimatedAngle.idl \
456     $(WebCore)/svg/SVGAnimatedBoolean.idl \
457     $(WebCore)/svg/SVGAnimatedEnumeration.idl \
458     $(WebCore)/svg/SVGAnimatedInteger.idl \
459     $(WebCore)/svg/SVGAnimatedLength.idl \
460     $(WebCore)/svg/SVGAnimatedLengthList.idl \
461     $(WebCore)/svg/SVGAnimatedNumber.idl \
462     $(WebCore)/svg/SVGAnimatedNumberList.idl \
463     $(WebCore)/svg/SVGAnimatedPreserveAspectRatio.idl \
464     $(WebCore)/svg/SVGAnimatedRect.idl \
465     $(WebCore)/svg/SVGAnimatedString.idl \
466     $(WebCore)/svg/SVGAnimatedTransformList.idl \
467     $(WebCore)/svg/SVGAnimationElement.idl \
468     $(WebCore)/svg/SVGCircleElement.idl \
469     $(WebCore)/svg/SVGClipPathElement.idl \
470     $(WebCore)/svg/SVGColor.idl \
471     $(WebCore)/svg/SVGComponentTransferFunctionElement.idl \
472     $(WebCore)/svg/SVGCursorElement.idl \
473     $(WebCore)/svg/SVGDefsElement.idl \
474     $(WebCore)/svg/SVGDescElement.idl \
475     $(WebCore)/svg/SVGDocument.idl \
476     $(WebCore)/svg/SVGElement.idl \
477     $(WebCore)/svg/SVGElementInstance.idl \
478     $(WebCore)/svg/SVGElementInstanceList.idl \
479     $(WebCore)/svg/SVGEllipseElement.idl \
480     $(WebCore)/svg/SVGException.idl \
481     $(WebCore)/svg/SVGExternalResourcesRequired.idl \
482     $(WebCore)/svg/SVGFEBlendElement.idl \
483     $(WebCore)/svg/SVGFEColorMatrixElement.idl \
484     $(WebCore)/svg/SVGFEComponentTransferElement.idl \
485     $(WebCore)/svg/SVGFECompositeElement.idl \
486     $(WebCore)/svg/SVGFEConvolveMatrixElement.idl \
487     $(WebCore)/svg/SVGFEDiffuseLightingElement.idl \
488     $(WebCore)/svg/SVGFEDisplacementMapElement.idl \
489     $(WebCore)/svg/SVGFEDistantLightElement.idl \
490     $(WebCore)/svg/SVGFEDropShadowElement.idl \
491     $(WebCore)/svg/SVGFEFloodElement.idl \
492     $(WebCore)/svg/SVGFEFuncAElement.idl \
493     $(WebCore)/svg/SVGFEFuncBElement.idl \
494     $(WebCore)/svg/SVGFEFuncGElement.idl \
495     $(WebCore)/svg/SVGFEFuncRElement.idl \
496     $(WebCore)/svg/SVGFEGaussianBlurElement.idl \
497     $(WebCore)/svg/SVGFEImageElement.idl \
498     $(WebCore)/svg/SVGFEMergeElement.idl \
499     $(WebCore)/svg/SVGFEMergeNodeElement.idl \
500     $(WebCore)/svg/SVGFEMorphologyElement.idl \
501     $(WebCore)/svg/SVGFEOffsetElement.idl \
502     $(WebCore)/svg/SVGFEPointLightElement.idl \
503     $(WebCore)/svg/SVGFESpecularLightingElement.idl \
504     $(WebCore)/svg/SVGFESpotLightElement.idl \
505     $(WebCore)/svg/SVGFETileElement.idl \
506     $(WebCore)/svg/SVGFETurbulenceElement.idl \
507     $(WebCore)/svg/SVGFilterElement.idl \
508     $(WebCore)/svg/SVGFilterPrimitiveStandardAttributes.idl \
509     $(WebCore)/svg/SVGFitToViewBox.idl \
510     $(WebCore)/svg/SVGFontElement.idl \
511     $(WebCore)/svg/SVGFontFaceElement.idl \
512     $(WebCore)/svg/SVGFontFaceFormatElement.idl \
513     $(WebCore)/svg/SVGFontFaceNameElement.idl \
514     $(WebCore)/svg/SVGFontFaceSrcElement.idl \
515     $(WebCore)/svg/SVGFontFaceUriElement.idl \
516     $(WebCore)/svg/SVGForeignObjectElement.idl \
517     $(WebCore)/svg/SVGGElement.idl \
518     $(WebCore)/svg/SVGGlyphElement.idl \
519     $(WebCore)/svg/SVGGlyphRefElement.idl \
520     $(WebCore)/svg/SVGGradientElement.idl \
521     $(WebCore)/svg/SVGHKernElement.idl \
522     $(WebCore)/svg/SVGImageElement.idl \
523     $(WebCore)/svg/SVGLangSpace.idl \
524     $(WebCore)/svg/SVGLength.idl \
525     $(WebCore)/svg/SVGLengthList.idl \
526     $(WebCore)/svg/SVGLineElement.idl \
527     $(WebCore)/svg/SVGLinearGradientElement.idl \
528     $(WebCore)/svg/SVGLocatable.idl \
529     $(WebCore)/svg/SVGMPathElement.idl \
530     $(WebCore)/svg/SVGMarkerElement.idl \
531     $(WebCore)/svg/SVGMaskElement.idl \
532     $(WebCore)/svg/SVGMatrix.idl \
533     $(WebCore)/svg/SVGMetadataElement.idl \
534     $(WebCore)/svg/SVGMissingGlyphElement.idl \
535     $(WebCore)/svg/SVGNumber.idl \
536     $(WebCore)/svg/SVGNumberList.idl \
537     $(WebCore)/svg/SVGPaint.idl \
538     $(WebCore)/svg/SVGPathElement.idl \
539     $(WebCore)/svg/SVGPathSeg.idl \
540     $(WebCore)/svg/SVGPathSegArcAbs.idl \
541     $(WebCore)/svg/SVGPathSegArcRel.idl \
542     $(WebCore)/svg/SVGPathSegClosePath.idl \
543     $(WebCore)/svg/SVGPathSegCurvetoCubicAbs.idl \
544     $(WebCore)/svg/SVGPathSegCurvetoCubicRel.idl \
545     $(WebCore)/svg/SVGPathSegCurvetoCubicSmoothAbs.idl \
546     $(WebCore)/svg/SVGPathSegCurvetoCubicSmoothRel.idl \
547     $(WebCore)/svg/SVGPathSegCurvetoQuadraticAbs.idl \
548     $(WebCore)/svg/SVGPathSegCurvetoQuadraticRel.idl \
549     $(WebCore)/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl \
550     $(WebCore)/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl \
551     $(WebCore)/svg/SVGPathSegLinetoAbs.idl \
552     $(WebCore)/svg/SVGPathSegLinetoHorizontalAbs.idl \
553     $(WebCore)/svg/SVGPathSegLinetoHorizontalRel.idl \
554     $(WebCore)/svg/SVGPathSegLinetoRel.idl \
555     $(WebCore)/svg/SVGPathSegLinetoVerticalAbs.idl \
556     $(WebCore)/svg/SVGPathSegLinetoVerticalRel.idl \
557     $(WebCore)/svg/SVGPathSegList.idl \
558     $(WebCore)/svg/SVGPathSegMovetoAbs.idl \
559     $(WebCore)/svg/SVGPathSegMovetoRel.idl \
560     $(WebCore)/svg/SVGPatternElement.idl \
561     $(WebCore)/svg/SVGPoint.idl \
562     $(WebCore)/svg/SVGPointList.idl \
563     $(WebCore)/svg/SVGPolygonElement.idl \
564     $(WebCore)/svg/SVGPolylineElement.idl \
565     $(WebCore)/svg/SVGPreserveAspectRatio.idl \
566     $(WebCore)/svg/SVGRadialGradientElement.idl \
567     $(WebCore)/svg/SVGRect.idl \
568     $(WebCore)/svg/SVGRectElement.idl \
569     $(WebCore)/svg/SVGRenderingIntent.idl \
570     $(WebCore)/svg/SVGSVGElement.idl \
571     $(WebCore)/svg/SVGScriptElement.idl \
572     $(WebCore)/svg/SVGSetElement.idl \
573     $(WebCore)/svg/SVGStopElement.idl \
574     $(WebCore)/svg/SVGStringList.idl \
575     $(WebCore)/svg/SVGStylable.idl \
576     $(WebCore)/svg/SVGStyleElement.idl \
577     $(WebCore)/svg/SVGSwitchElement.idl \
578     $(WebCore)/svg/SVGSymbolElement.idl \
579     $(WebCore)/svg/SVGTRefElement.idl \
580     $(WebCore)/svg/SVGTSpanElement.idl \
581     $(WebCore)/svg/SVGTests.idl \
582     $(WebCore)/svg/SVGTextContentElement.idl \
583     $(WebCore)/svg/SVGTextElement.idl \
584     $(WebCore)/svg/SVGTextPathElement.idl \
585     $(WebCore)/svg/SVGTextPositioningElement.idl \
586     $(WebCore)/svg/SVGTitleElement.idl \
587     $(WebCore)/svg/SVGTransform.idl \
588     $(WebCore)/svg/SVGTransformList.idl \
589     $(WebCore)/svg/SVGTransformable.idl \
590     $(WebCore)/svg/SVGURIReference.idl \
591     $(WebCore)/svg/SVGUnitTypes.idl \
592     $(WebCore)/svg/SVGUseElement.idl \
593     $(WebCore)/svg/SVGVKernElement.idl \
594     $(WebCore)/svg/SVGViewElement.idl \
595     $(WebCore)/svg/SVGViewSpec.idl \
596     $(WebCore)/svg/SVGZoomAndPan.idl \
597     $(WebCore)/svg/SVGZoomEvent.idl \
598     $(WebCore)/testing/Internals.idl \
599     $(WebCore)/testing/InternalSettings.idl \
600     $(WebCore)/testing/MallocStatistics.idl \
601     $(WebCore)/workers/AbstractWorker.idl \
602     $(WebCore)/workers/DedicatedWorkerContext.idl \
603     $(WebCore)/workers/SharedWorker.idl \
604     $(WebCore)/workers/SharedWorkerContext.idl \
605     $(WebCore)/workers/Worker.idl \
606     $(WebCore)/workers/WorkerContext.idl \
607     $(WebCore)/workers/WorkerLocation.idl \
608     $(WebCore)/xml/DOMParser.idl \
609     $(WebCore)/xml/XMLHttpRequest.idl \
610     $(WebCore)/xml/XMLHttpRequestException.idl \
611     $(WebCore)/xml/XMLHttpRequestProgressEvent.idl \
612     $(WebCore)/xml/XMLHttpRequestUpload.idl \
613     $(WebCore)/xml/XMLSerializer.idl \
614     $(WebCore)/xml/XPathEvaluator.idl \
615     $(WebCore)/xml/XPathException.idl \
616     $(WebCore)/xml/XPathExpression.idl \
617     $(WebCore)/xml/XPathNSResolver.idl \
618     $(WebCore)/xml/XPathResult.idl \
619     $(WebCore)/xml/XSLTProcessor.idl \
620 #
621
622 .PHONY : all
623
624 DOM_CLASSES=$(basename $(notdir $(BINDING_IDLS)))
625
626 JS_DOM_HEADERS=$(filter-out JSMediaQueryListListener.h JSEventListener.h, $(DOM_CLASSES:%=JS%.h))
627
628 WEB_DOM_HEADERS :=
629 ifeq ($(findstring BUILDING_WX,$(FEATURE_DEFINES)), BUILDING_WX)
630 WEB_DOM_HEADERS := $(filter-out WebDOMXSLTProcessor.h WebDOMEventTarget.h, $(DOM_CLASSES:%=WebDOM%.h))
631 endif # BUILDING_WX
632
633 all : \
634     $(SUPPLEMENTAL_DEPENDENCY_FILE) \
635     $(JS_DOM_HEADERS) \
636     $(WEB_DOM_HEADERS) \
637     \
638     JSJavaScriptCallFrame.h \
639     \
640     CSSGrammar.cpp \
641     CSSPropertyNames.h \
642     CSSValueKeywords.h \
643     ColorData.cpp \
644     EventFactory.cpp \
645     EventTargetInterfaces.h \
646     ExceptionCodeDescription.cpp \
647     HTMLElementFactory.cpp \
648     HTMLEntityTable.cpp \
649     HTMLNames.cpp \
650     JSSVGElementWrapperFactory.cpp \
651     SVGElementFactory.cpp \
652     SVGNames.cpp \
653     UserAgentStyleSheets.h \
654     WebKitFontFamilyNames.cpp \
655     WebKitFontFamilyNames.h \
656     XLinkNames.cpp \
657     XMLNSNames.cpp \
658     XMLNames.cpp \
659     MathMLElementFactory.cpp \
660     MathMLNames.cpp \
661     XPathGrammar.cpp \
662 #
663
664 # --------
665
666 ADDITIONAL_IDL_DEFINES :=
667
668 ifeq ($(OS),MACOS)
669
670 FRAMEWORK_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(FRAMEWORK_SEARCH_PATHS) | perl -e 'print "-F " . join(" -F ", split(" ", <>));')
671 HEADER_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(HEADER_SEARCH_PATHS) | perl -e 'print "-I" . join(" -I", split(" ", <>));')
672
673 ifeq ($(TARGET_GCC_VERSION),LLVM_COMPILER)
674         TEXT_PREPROCESSOR_FLAGS=-E -P -x c -traditional
675 else
676         TEXT_PREPROCESSOR_FLAGS=-E -P -x c -std=c89
677 endif
678
679 ifneq ($(SDKROOT),)
680         SDK_FLAGS=-isysroot $(SDKROOT)
681 endif
682
683 ifeq ($(shell $(CC) -x c++ -E -P -dM $(SDK_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep ENABLE_DASHBOARD_SUPPORT | cut -d' ' -f3), 1)
684     ENABLE_DASHBOARD_SUPPORT = 1
685 else
686     ENABLE_DASHBOARD_SUPPORT = 0
687 endif
688
689 ifeq ($(shell $(CC) -x c++ -E -P -dM $(SDK_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep ENABLE_ORIENTATION_EVENTS | cut -d' ' -f3), 1)
690     ENABLE_ORIENTATION_EVENTS = 1
691 else
692     ENABLE_ORIENTATION_EVENTS = 0
693 endif
694
695 else
696
697 ifndef ENABLE_DASHBOARD_SUPPORT
698     ENABLE_DASHBOARD_SUPPORT = 0
699 endif
700
701 ifndef ENABLE_ORIENTATION_EVENTS
702     ENABLE_ORIENTATION_EVENTS = 0
703 endif
704
705 endif # MACOS
706
707 ifndef ENABLE_WIDGET_REGION
708     ENABLE_WIDGET_REGION = 0
709 endif
710
711 ifeq ($(ENABLE_ORIENTATION_EVENTS), 1)
712     ADDITIONAL_IDL_DEFINES := $(ADDITIONAL_IDL_DEFINES) ENABLE_ORIENTATION_EVENTS
713 endif
714
715 ifeq ($(ENABLE_WIDGET_REGION), 1)
716     ADDITIONAL_IDL_DEFINES := $(ADDITIONAL_IDL_DEFINES) ENABLE_WIDGET_REGION
717 endif
718
719 # --------
720
721 # CSS property names and value keywords
722
723 WEBCORE_CSS_PROPERTY_NAMES := $(WebCore)/css/CSSPropertyNames.in
724 WEBCORE_CSS_VALUE_KEYWORDS := $(WebCore)/css/CSSValueKeywords.in
725
726 ifeq ($(findstring ENABLE_SVG,$(FEATURE_DEFINES)), ENABLE_SVG)
727     WEBCORE_CSS_PROPERTY_NAMES := $(WEBCORE_CSS_PROPERTY_NAMES) $(WebCore)/css/SVGCSSPropertyNames.in
728     WEBCORE_CSS_VALUE_KEYWORDS := $(WEBCORE_CSS_VALUE_KEYWORDS) $(WebCore)/css/SVGCSSValueKeywords.in
729 endif
730
731 CSSPropertyNames.h : $(WEBCORE_CSS_PROPERTY_NAMES) css/makeprop.pl
732         cat $(WEBCORE_CSS_PROPERTY_NAMES) > CSSPropertyNames.in
733         perl -I$(WebCore)/bindings/scripts "$(WebCore)/css/makeprop.pl" --defines "$(FEATURE_DEFINES)"
734
735 CSSValueKeywords.h : $(WEBCORE_CSS_VALUE_KEYWORDS) css/makevalues.pl
736         cat $(WEBCORE_CSS_VALUE_KEYWORDS) > CSSValueKeywords.in
737         perl -I$(WebCore)/bindings/scripts "$(WebCore)/css/makevalues.pl" --defines "$(FEATURE_DEFINES)"
738
739 # --------
740
741 # XMLViewer CSS
742
743 all : XMLViewerCSS.h
744
745 XMLViewerCSS.h : xml/XMLViewer.css
746         perl $(WebCore)/inspector/xxd.pl XMLViewer_css $(WebCore)/xml/XMLViewer.css XMLViewerCSS.h
747
748 # --------
749
750 # XMLViewer JS
751
752 all : XMLViewerJS.h
753
754 XMLViewerJS.h : xml/XMLViewer.js
755         perl $(WebCore)/inspector/xxd.pl XMLViewer_js $(WebCore)/xml/XMLViewer.js XMLViewerJS.h
756
757 # --------
758
759 # HTML entity names
760
761 HTMLEntityTable.cpp : html/parser/HTMLEntityNames.in $(WebCore)/html/parser/create-html-entity-table
762         python $(WebCore)/html/parser/create-html-entity-table -o HTMLEntityTable.cpp $(WebCore)/html/parser/HTMLEntityNames.in
763
764 # --------
765
766 # color names
767
768 ColorData.cpp : platform/ColorData.gperf $(WebCore)/make-hash-tools.pl
769         perl $(WebCore)/make-hash-tools.pl . $(WebCore)/platform/ColorData.gperf
770
771 # --------
772
773 # Path to bison
774
775 ifeq ($(OS),MACOS)
776 BISON=$(shell xcrun -find bison)
777 else
778 BISON=bison
779 endif
780
781 # --------
782
783 # CSS grammar
784 # NOTE: Older versions of bison do not inject an inclusion guard, so we add one.
785
786 CSSGrammar.cpp : css/CSSGrammar.y
787         $(BISON) -d -p cssyy $< -o $@
788         touch CSSGrammar.cpp.h
789         touch CSSGrammar.hpp
790         echo '#ifndef CSSGrammar_h' > CSSGrammar.h
791         echo '#define CSSGrammar_h' >> CSSGrammar.h
792         cat CSSGrammar.cpp.h CSSGrammar.hpp >> CSSGrammar.h
793         echo '#endif' >> CSSGrammar.h
794         rm -f CSSGrammar.cpp.h CSSGrammar.hpp
795
796 # --------
797
798 # XPath grammar
799 # NOTE: Older versions of bison do not inject an inclusion guard, so we add one.
800
801 XPathGrammar.cpp : xml/XPathGrammar.y $(PROJECT_FILE)
802         $(BISON) -d -p xpathyy $< -o $@
803         touch XPathGrammar.cpp.h
804         touch XPathGrammar.hpp
805         echo '#ifndef XPathGrammar_h' > XPathGrammar.h
806         echo '#define XPathGrammar_h' >> XPathGrammar.h
807         cat XPathGrammar.cpp.h XPathGrammar.hpp >> XPathGrammar.h
808         echo '#endif' >> XPathGrammar.h
809         rm -f XPathGrammar.cpp.h XPathGrammar.hpp
810
811 # --------
812
813 # user agent style sheets
814
815 USER_AGENT_STYLE_SHEETS = $(WebCore)/css/html.css $(WebCore)/css/quirks.css $(WebCore)/css/view-source.css $(WebCore)/css/themeWin.css $(WebCore)/css/themeWinQuirks.css
816
817 ifeq ($(findstring ENABLE_SVG,$(FEATURE_DEFINES)), ENABLE_SVG)
818     USER_AGENT_STYLE_SHEETS := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/css/svg.css
819 endif
820
821 ifeq ($(findstring ENABLE_MATHML,$(FEATURE_DEFINES)), ENABLE_MATHML)
822     USER_AGENT_STYLE_SHEETS := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/css/mathml.css
823 endif
824
825 ifeq ($(findstring ENABLE_VIDEO,$(FEATURE_DEFINES)), ENABLE_VIDEO)
826     USER_AGENT_STYLE_SHEETS := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/css/mediaControls.css
827     USER_AGENT_STYLE_SHEETS := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/css/mediaControlsQuickTime.css
828 endif
829
830 ifeq ($(findstring ENABLE_FULLSCREEN_API,$(FEATURE_DEFINES)), ENABLE_FULLSCREEN_API)
831     USER_AGENT_STYLE_SHEETS := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/css/fullscreen.css $(WebCore)/css/fullscreenQuickTime.css
832 endif
833
834 UserAgentStyleSheets.h : css/make-css-file-arrays.pl bindings/scripts/preprocessor.pm $(USER_AGENT_STYLE_SHEETS)
835         perl -I$(WebCore)/bindings/scripts $< --defines "$(FEATURE_DEFINES)" $@ UserAgentStyleSheetsData.cpp $(USER_AGENT_STYLE_SHEETS)
836
837 # --------
838
839 WebKitFontFamilyNames.cpp WebKitFontFamilyNames.h : dom/make_names.pl css/WebKitFontFamilyNames.in
840         perl -I $(WebCore)/bindings/scripts $< --fonts $(WebCore)/css/WebKitFontFamilyNames.in
841
842 # HTML tag and attribute names
843
844 ifeq ($(findstring ENABLE_DATALIST_ELEMENT,$(FEATURE_DEFINES)), ENABLE_DATALIST_ELEMENT)
845     HTML_FLAGS := $(HTML_FLAGS) ENABLE_DATALIST_ELEMENT=1
846 endif
847
848 ifeq ($(findstring ENABLE_DETAILS_ELEMENT,$(FEATURE_DEFINES)), ENABLE_DETAILS_ELEMENT)
849     HTML_FLAGS := $(HTML_FLAGS) ENABLE_DETAILS_ELEMENT=1
850 endif
851
852 ifeq ($(findstring ENABLE_METER_ELEMENT,$(FEATURE_DEFINES)), ENABLE_METER_ELEMENT)
853     HTML_FLAGS := $(HTML_FLAGS) ENABLE_METER_ELEMENT=1
854 endif
855
856 ifeq ($(findstring ENABLE_MICRODATA,$(FEATURE_DEFINES)), ENABLE_MICRODATA)
857     HTML_FLAGS := $(HTML_FLAGS) ENABLE_MICRODATA=1
858 endif
859
860 ifeq ($(findstring ENABLE_PROGRESS_ELEMENT,$(FEATURE_DEFINES)), ENABLE_PROGRESS_ELEMENT)
861     HTML_FLAGS := $(HTML_FLAGS) ENABLE_PROGRESS_ELEMENT=1
862 endif
863
864 ifeq ($(findstring ENABLE_VIDEO,$(FEATURE_DEFINES)), ENABLE_VIDEO)
865     HTML_FLAGS := $(HTML_FLAGS) ENABLE_VIDEO=1
866 endif
867
868 ifeq ($(findstring ENABLE_VIDEO_TRACK,$(FEATURE_DEFINES)), ENABLE_VIDEO_TRACK)
869     HTML_FLAGS := $(HTML_FLAGS) ENABLE_VIDEO_TRACK=0
870 endif
871
872 ifeq ($(findstring ENABLE_SHADOW_DOM,$(FEATURE_DEFINES)), ENABLE_SHADOW_DOM)
873     HTML_FLAGS := $(HTML_FLAGS) ENABLE_SHADOW_DOM=1
874 endif
875
876 ifeq ($(findstring ENABLE_ENCRYPTED_MEDIA,$(FEATURE_DEFINES)), ENABLE_ENCRYPTED_MEDIA)
877     HTML_FLAGS := $(HTML_FLAGS) ENABLE_ENCRYPTED_MEDIA=1
878 endif
879
880 ifdef HTML_FLAGS
881
882 HTMLElementFactory.cpp HTMLNames.cpp : dom/make_names.pl html/HTMLTagNames.in html/HTMLAttributeNames.in
883         perl -I $(WebCore)/bindings/scripts $< --tags $(WebCore)/html/HTMLTagNames.in --attrs $(WebCore)/html/HTMLAttributeNames.in --factory --wrapperFactory --extraDefines "$(HTML_FLAGS)"
884
885 else
886
887 HTMLElementFactory.cpp HTMLNames.cpp : dom/make_names.pl html/HTMLTagNames.in html/HTMLAttributeNames.in
888         perl -I $(WebCore)/bindings/scripts $< --tags $(WebCore)/html/HTMLTagNames.in --attrs $(WebCore)/html/HTMLAttributeNames.in --factory --wrapperFactory
889
890 endif
891
892 JSHTMLElementWrapperFactory.cpp : HTMLNames.cpp
893
894 XMLNSNames.cpp : dom/make_names.pl xml/xmlnsattrs.in
895         perl -I $(WebCore)/bindings/scripts $< --attrs $(WebCore)/xml/xmlnsattrs.in
896
897 XMLNames.cpp : dom/make_names.pl xml/xmlattrs.in
898         perl -I $(WebCore)/bindings/scripts $< --attrs $(WebCore)/xml/xmlattrs.in
899
900 # --------
901
902 # SVG tag and attribute names, and element factory
903
904 ifeq ($(findstring ENABLE_SVG_FONTS,$(FEATURE_DEFINES)), ENABLE_SVG_FONTS)
905     SVG_FLAGS := $(SVG_FLAGS) ENABLE_SVG_FONTS=1
906 endif
907
908 ifeq ($(findstring ENABLE_FILTERS,$(FEATURE_DEFINES)), ENABLE_FILTERS)
909     SVG_FLAGS := $(SVG_FLAGS) ENABLE_FILTERS=1
910 endif
911
912 # SVG tag and attribute names (need to pass an extra flag if svg experimental features are enabled)
913
914 ifdef SVG_FLAGS
915
916 SVGElementFactory.cpp SVGNames.cpp : dom/make_names.pl svg/svgtags.in svg/svgattrs.in
917         perl -I $(WebCore)/bindings/scripts $< --tags $(WebCore)/svg/svgtags.in --attrs $(WebCore)/svg/svgattrs.in --extraDefines "$(SVG_FLAGS)" --factory --wrapperFactory
918 else
919
920 SVGElementFactory.cpp SVGNames.cpp : dom/make_names.pl svg/svgtags.in svg/svgattrs.in
921         perl -I $(WebCore)/bindings/scripts $< --tags $(WebCore)/svg/svgtags.in --attrs $(WebCore)/svg/svgattrs.in --factory --wrapperFactory
922
923 endif
924
925 JSSVGElementWrapperFactory.cpp : SVGNames.cpp
926
927 XLinkNames.cpp : dom/make_names.pl svg/xlinkattrs.in
928         perl -I $(WebCore)/bindings/scripts $< --attrs $(WebCore)/svg/xlinkattrs.in
929
930 # --------
931
932 # Register event constructors and targets
933
934 EventFactory.cpp EventHeaders.h EventInterfaces.h : dom/make_event_factory.pl dom/EventNames.in
935         perl -I $(WebCore)/bindings/scripts $< --input $(WebCore)/dom/EventNames.in
936
937 EventTargetHeaders.h EventTargetInterfaces.h : dom/make_event_factory.pl dom/EventTargetFactory.in
938         perl -I $(WebCore)/bindings/scripts $< --input $(WebCore)/dom/EventTargetFactory.in
939
940 ExceptionCodeDescription.cpp ExceptionCodeDescription.h ExceptionHeaders.h ExceptionInterfaces.h : dom/make_dom_exceptions.pl dom/DOMExceptions.in
941         perl -I $(WebCore)/bindings/scripts $< --input $(WebCore)/dom/DOMExceptions.in
942
943 # --------
944
945 # MathML tag and attribute names, and element factory
946
947 MathMLElementFactory.cpp MathMLNames.cpp : dom/make_names.pl mathml/mathtags.in mathml/mathattrs.in
948         perl -I $(WebCore)/bindings/scripts $< --tags $(WebCore)/mathml/mathtags.in --attrs $(WebCore)/mathml/mathattrs.in --factory --wrapperFactory
949
950 # --------
951
952 # Common generator things
953
954 GENERATE_SCRIPTS = \
955     bindings/scripts/CodeGenerator.pm \
956     bindings/scripts/IDLParser.pm \
957     bindings/scripts/IDLStructure.pm \
958     bindings/scripts/generate-bindings.pl \
959     bindings/scripts/preprocessor.pm
960
961 PREPROCESS_IDLS_SCRIPTS = \
962     bindings/scripts/IDLParser.pm \
963     bindings/scripts/preprocess-idls.pl
964
965 generator_script = perl $(addprefix -I $(WebCore)/, $(sort $(dir $(1)))) $(WebCore)/bindings/scripts/generate-bindings.pl
966
967 preprocess_idls_script = perl $(addprefix -I $(WebCore)/, $(sort $(dir $(1)))) $(WebCore)/bindings/scripts/preprocess-idls.pl
968
969 # JS bindings generator
970
971 IDL_INCLUDES = \
972     $(WebCore)/Modules/battery \
973     $(WebCore)/Modules/filesystem \
974     $(WebCore)/Modules/gamepad \
975     $(WebCore)/Modules/geolocation \
976     $(WebCore)/Modules/indexeddb \
977     $(WebCore)/Modules/intents \
978     $(WebCore)/Modules/mediasource \
979     $(WebCore)/Modules/mediastream \
980     $(WebCore)/Modules/networkinfo \
981     $(WebCore)/Modules/notifications \
982     $(WebCore)/Modules/speech \
983     $(WebCore)/Modules/vibration \
984     $(WebCore)/Modules/webaudio \
985     $(WebCore)/Modules/webdatabase \
986     $(WebCore)/Modules/websockets \
987     $(WebCore)/css \
988     $(WebCore)/dom \
989     $(WebCore)/fileapi \
990     $(WebCore)/html \
991     $(WebCore)/html/canvas \
992     $(WebCore)/html/shadow \
993     $(WebCore)/html/track \
994     $(WebCore)/inspector \
995     $(WebCore)/loader/appcache \
996     $(WebCore)/page \
997     $(WebCore)/plugins \
998     $(WebCore)/storage \
999     $(WebCore)/svg \
1000     $(WebCore)/workers \
1001     $(WebCore)/xml
1002
1003 IDL_COMMON_ARGS = $(IDL_INCLUDES:%=--include %) --write-dependencies --outputDir .
1004
1005 JS_BINDINGS_SCRIPTS = $(GENERATE_SCRIPTS) bindings/scripts/CodeGeneratorJS.pm
1006
1007 SUPPLEMENTAL_DEPENDENCY_FILE = ./SupplementalDependencies.txt
1008 SUPPLEMENTAL_MAKEFILE_DEPS = ./SupplementalDependencies.dep
1009 IDL_FILES_TMP = ./idl_files.tmp
1010 ADDITIONAL_IDLS = $(WebCore)/inspector/JavaScriptCallFrame.idl
1011 IDL_ATTRIBUTES_FILE = $(WebCore)/bindings/scripts/IDLAttributes.txt
1012
1013 # The following two lines get a space character stored in a variable.
1014 # See <http://blog.jgc.org/2007/06/escaping-comma-and-space-in-gnu-make.html>.
1015 space :=
1016 space +=
1017
1018 $(SUPPLEMENTAL_MAKEFILE_DEPS) : $(PREPROCESS_IDLS_SCRIPTS) $(BINDING_IDLS) $(ADDITIONAL_IDLS) $(IDL_ATTRIBUTES_FILE)
1019         printf "$(subst $(space),,$(patsubst %,%\n,$(BINDING_IDLS) $(ADDITIONAL_IDLS)))" > $(IDL_FILES_TMP)
1020         $(call preprocess_idls_script, $(PREPROCESS_IDLS_SCRIPTS)) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --idlFilesList $(IDL_FILES_TMP) --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) --supplementalMakefileDeps $@ --idlAttributesFile $(IDL_ATTRIBUTES_FILE)
1021         rm -f $(IDL_FILES_TMP)
1022
1023 JS%.h : %.idl $(JS_BINDINGS_SCRIPTS)
1024         $(call generator_script, $(JS_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_JAVASCRIPT" --generator JS --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $<
1025
1026 include $(SUPPLEMENTAL_MAKEFILE_DEPS)
1027
1028 # Inspector interfaces generator
1029
1030 all : InspectorProtocolVersion.h
1031
1032 InspectorProtocolVersion.h : Inspector.json inspector/generate-inspector-protocol-version
1033         python $(WebCore)/inspector/generate-inspector-protocol-version -o InspectorProtocolVersion.h $(WebCore)/inspector/Inspector.json
1034
1035 all : InspectorFrontend.h
1036
1037 INSPECTOR_GENERATOR_SCRIPTS = inspector/CodeGeneratorInspector.py
1038
1039 InspectorFrontend.h : Inspector.json $(INSPECTOR_GENERATOR_SCRIPTS)
1040         python $(WebCore)/inspector/CodeGeneratorInspector.py $(WebCore)/inspector/Inspector.json --output_h_dir . --output_cpp_dir .
1041
1042 all : InspectorOverlayPage.h
1043
1044 InspectorOverlayPage.h : InspectorOverlayPage.html
1045         perl $(WebCore)/inspector/xxd.pl InspectorOverlayPage_html $(WebCore)/inspector/InspectorOverlayPage.html InspectorOverlayPage.h
1046
1047 all : InjectedScriptSource.h
1048
1049 InjectedScriptSource.h : InjectedScriptSource.js
1050         perl $(WebCore)/inspector/xxd.pl InjectedScriptSource_js $(WebCore)/inspector/InjectedScriptSource.js InjectedScriptSource.h
1051
1052 all : InjectedScriptCanvasModuleSource.h
1053
1054 InjectedScriptCanvasModuleSource.h : InjectedScriptCanvasModuleSource.js
1055         perl $(WebCore)/inspector/xxd.pl InjectedScriptCanvasModuleSource_js $(WebCore)/inspector/InjectedScriptCanvasModuleSource.js InjectedScriptCanvasModuleSource.h
1056
1057 -include $(JS_DOM_HEADERS:.h=.dep)
1058
1059 ifeq ($(findstring BUILDING_WX,$(FEATURE_DEFINES)), BUILDING_WX)
1060 CPP_BINDINGS_SCRIPTS = $(GENERATE_SCRIPTS) bindings/scripts/CodeGeneratorCPP.pm
1061
1062 WebDOM%.h : %.idl $(CPP_BINDINGS_SCRIPTS)
1063         $(call generator_script, $(CPP_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_CPP" --generator CPP --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $<
1064 endif # BUILDING_WX
1065
1066 # ------------------------
1067
1068 # Mac-specific rules
1069
1070 ifeq ($(OS),MACOS)
1071
1072 OBJC_DOM_HEADERS=$(filter-out DOMDOMWindow.h DOMDOMMimeType.h DOMDOMPlugin.h,$(DOM_CLASSES:%=DOM%.h))
1073
1074 all : $(OBJC_DOM_HEADERS)
1075
1076 all : CharsetData.cpp
1077
1078 # --------
1079
1080 # character set name table
1081
1082 CharsetData.cpp : platform/text/mac/make-charset-table.pl platform/text/mac/character-sets.txt platform/text/mac/mac-encodings.txt
1083         perl $^ kTextEncoding > $@
1084
1085 # --------
1086
1087 ifneq ($(ACTION),installhdrs)
1088
1089 all : WebCore.exp WebCore.LP64.exp
1090
1091 WebCore.exp : $(BUILT_PRODUCTS_DIR)/WebCoreExportFileGenerator
1092         $^ > $@
1093
1094 # Switch NSRect, NSSize and NSPoint with their CG counterparts for the 64-bit exports file.
1095 WebCore.LP64.exp : WebCore.exp
1096         cat $^ | sed -e s/7_NSRect/6CGRect/ -e s/7_NSSize/6CGSize/ -e s/8_NSPoint/7CGPoint/ > $@
1097
1098 endif # installhdrs
1099
1100 # --------
1101
1102 # Objective-C bindings
1103
1104 DOM_BINDINGS_SCRIPTS = $(GENERATE_BINDING_SCRIPTS) bindings/scripts/CodeGeneratorObjC.pm
1105 DOM%.h : %.idl $(DOM_BINDINGS_SCRIPTS) bindings/objc/PublicDOMInterfaces.h
1106         $(call generator_script, $(DOM_BINDINGS_SCRIPTS)) $(IDL_COMMON_ARGS) --defines "$(FEATURE_DEFINES) $(ADDITIONAL_IDL_DEFINES) LANGUAGE_OBJECTIVE_C" --generator ObjC --supplementalDependencyFile $(SUPPLEMENTAL_DEPENDENCY_FILE) $<
1107
1108 -include $(OBJC_DOM_HEADERS:.h=.dep)
1109
1110 # --------
1111
1112 endif # MACOS
1113
1114 # ------------------------
1115
1116 # Header detection
1117
1118 ifeq ($(OS),Windows_NT)
1119
1120 all : WebCoreHeaderDetection.h
1121
1122 WebCoreHeaderDetection.h : DerivedSources.make
1123         if [ -f "$(WEBKITLIBRARIESDIR)/include/AVFoundationCF/AVCFBase.h" ]; then echo "#define HAVE_AVCF 1" > $@; else echo > $@; fi
1124
1125 endif # Windows_NT