[CF] Replace CFNetwork-related WebKitSystemInterface calls with SPI
[WebKit-https.git] / Source / WebCore / PlatformMac.cmake
1 set(WebCore_LIBRARY_TYPE SHARED)
2
3 if ("${CURRENT_OSX_VERSION}" MATCHES "10.9")
4 set(WEBKITSYSTEMINTERFACE_LIBRARY libWebKitSystemInterfaceMavericks.a)
5 elif ("${CURRENT_OSX_VERSION}" MATCHES "10.10")
6 set(WEBKITSYSTEMINTERFACE_LIBRARY libWebKitSystemInterfaceYosemite.a)
7 else ()
8 set(WEBKITSYSTEMINTERFACE_LIBRARY libWebKitSystemInterfaceElCapitan.a)
9 endif ()
10 link_directories(../../WebKitLibraries)
11
12 find_library(ACCELERATE_LIBRARY accelerate)
13 find_library(AUDIOTOOLBOX_LIBRARY AudioToolbox)
14 find_library(AUDIOUNIT_LIBRARY AudioUnit)
15 find_library(CARBON_LIBRARY Carbon)
16 find_library(COCOA_LIBRARY Cocoa)
17 find_library(COREAUDIO_LIBRARY CoreAudio)
18 find_library(DISKARBITRATION_LIBRARY DiskArbitration)
19 find_library(IOKIT_LIBRARY IOKit)
20 find_library(IOSURFACE_LIBRARY IOSurface)
21 find_library(OPENGL_LIBRARY OpenGL)
22 find_library(QUARTZ_LIBRARY Quartz)
23 find_library(QUARTZCORE_LIBRARY QuartzCore)
24 find_library(SECURITY_LIBRARY Security)
25 find_library(SYSTEMCONFIGURATION_LIBRARY SystemConfiguration)
26 find_library(SQLITE3_LIBRARY sqlite3)
27 find_library(XML2_LIBRARY XML2)
28 find_package(ZLIB REQUIRED)
29
30 list(APPEND WebCore_LIBRARIES
31     ${ACCELERATE_LIBRARY}
32     ${AUDIOTOOLBOX_LIBRARY}
33     ${AUDIOUNIT_LIBRARY}
34     ${CARBON_LIBRARY}
35     ${COCOA_LIBRARY}
36     ${COREAUDIO_LIBRARY}
37     ${DISKARBITRATION_LIBRARY}
38     ${IOKIT_LIBRARY}
39     ${IOSURFACE_LIBRARY}
40     ${OPENGL_LIBRARY}
41     ${QUARTZ_LIBRARY}
42     ${QUARTZCORE_LIBRARY}
43     ${SECURITY_LIBRARY}
44     ${SQLITE3_LIBRARY}
45     ${SYSTEMCONFIGURATION_LIBRARY}
46     ${WEBKITSYSTEMINTERFACE_LIBRARY}
47     ${XML2_LIBRARY}
48     ${ZLIB_LIBRARIES}
49 )
50
51 add_definitions(-iframework ${QUARTZ_LIBRARY}/Frameworks)
52
53 find_library(DATADETECTORSCORE_FRAMEWORK DataDetectorsCore HINTS /System/Library/PrivateFrameworks)
54 if (NOT DATADETECTORSCORE_FRAMEWORK-NOTFOUND)
55     list(APPEND WebCore_LIBRARIES ${DATADETECTORSCORE_FRAMEWORK})
56 endif ()
57
58 find_library(LOOKUP_FRAMEWORK Lookup HINTS /System/Library/PrivateFrameworks)
59 if (NOT LOOKUP_FRAMEWORK-NOTFOUND)
60     list(APPEND WebCore_LIBRARIES ${LOOKUP_FRAMEWORK})
61 endif ()
62
63 list(APPEND WebCore_INCLUDE_DIRECTORIES
64     "${DERIVED_SOURCES_DIR}/ForwardingHeaders/JavaScriptCore"
65     "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}"
66     "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/inspector"
67     "${JAVASCRIPTCORE_DIR}/replay"
68     "${THIRDPARTY_DIR}/ANGLE"
69     "${THIRDPARTY_DIR}/ANGLE/include/KHR"
70     "${WEBCORE_DIR}/accessibility/mac"
71     "${WEBCORE_DIR}/bindings/objc"
72     "${WEBCORE_DIR}/bridge/objc"
73     "${WEBCORE_DIR}/editing/cocoa"
74     "${WEBCORE_DIR}/editing/mac"
75     "${WEBCORE_DIR}/ForwardingHeaders"
76     "${WEBCORE_DIR}/ForwardingHeaders/bindings"
77     "${WEBCORE_DIR}/ForwardingHeaders/bytecode"
78     "${WEBCORE_DIR}/ForwardingHeaders/debugger"
79     "${WEBCORE_DIR}/ForwardingHeaders/heap"
80     "${WEBCORE_DIR}/ForwardingHeaders/inspector"
81     "${WEBCORE_DIR}/ForwardingHeaders/interpreter"
82     "${WEBCORE_DIR}/ForwardingHeaders/jit"
83     "${WEBCORE_DIR}/ForwardingHeaders/masm"
84     "${WEBCORE_DIR}/ForwardingHeaders/parser"
85     "${WEBCORE_DIR}/ForwardingHeaders/profiler"
86     "${WEBCORE_DIR}/ForwardingHeaders/replay"
87     "${WEBCORE_DIR}/ForwardingHeaders/runtime"
88     "${WEBCORE_DIR}/ForwardingHeaders/yarr"
89     "${WEBCORE_DIR}/icu"
90     "${WEBCORE_DIR}/loader/archive/cf"
91     "${WEBCORE_DIR}/loader/cf"
92     "${WEBCORE_DIR}/loader/mac"
93     "${WEBCORE_DIR}/page/cocoa"
94     "${WEBCORE_DIR}/page/mac"
95     "${WEBCORE_DIR}/page/scrolling/mac"
96     "${WEBCORE_DIR}/platform/audio/mac"
97     "${WEBCORE_DIR}/platform/cf"
98     "${WEBCORE_DIR}/platform/cocoa"
99     "${WEBCORE_DIR}/platform/graphics/avfoundation"
100     "${WEBCORE_DIR}/platform/graphics/avfoundation/cf"
101     "${WEBCORE_DIR}/platform/graphics/avfoundation/objc"
102     "${WEBCORE_DIR}/platform/graphics/ca"
103     "${WEBCORE_DIR}/platform/graphics/ca/cocoa"
104     "${WEBCORE_DIR}/platform/graphics/cocoa"
105     "${WEBCORE_DIR}/platform/graphics/cg"
106     "${WEBCORE_DIR}/platform/graphics/opentype"
107     "${WEBCORE_DIR}/platform/graphics/opengl"
108     "${WEBCORE_DIR}/platform/graphics/mac"
109     "${WEBCORE_DIR}/platform/mac"
110     "${WEBCORE_DIR}/platform/mediastream/mac"
111     "${WEBCORE_DIR}/platform/network/cocoa"
112     "${WEBCORE_DIR}/platform/network/cf"
113     "${WEBCORE_DIR}/platform/network/mac"
114     "${WEBCORE_DIR}/platform/text/cf"
115     "${WEBCORE_DIR}/platform/text/mac"
116     "${WEBCORE_DIR}/platform/spi/cf"
117     "${WEBCORE_DIR}/platform/spi/cg"
118     "${WEBCORE_DIR}/platform/spi/cocoa"
119     "${WEBCORE_DIR}/platform/spi/ios"
120     "${WEBCORE_DIR}/platform/spi/mac"
121     "${WEBCORE_DIR}/plugins/mac"
122     "${WTF_DIR}"
123 )
124
125 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
126     ${WEBCORE_DIR}/html/shadow/mac/imageControlsMac.css
127     ${WEBCORE_DIR}/Modules/plugins/QuickTimePluginReplacement.css
128 )
129
130 set(WebCore_USER_AGENT_SCRIPTS
131     ${WEBCORE_DIR}/Modules/plugins/QuickTimePluginReplacement.js
132 )
133
134 #FIXME: Use ios-encodings.txt once we get CMake working for iOS.
135 add_custom_command(
136     OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/CharsetData.cpp
137     MAIN_DEPENDENCY ${WEBCORE_DIR}/platform/text/mac/make-charset-table.pl
138     DEPENDS platform/text/mac/character-sets.txt
139     DEPENDS platform/text/mac/mac-encodings.txt
140     COMMAND ${PERL_EXECUTABLE} ${WEBCORE_DIR}/platform/text/mac/make-charset-table.pl ${WEBCORE_DIR}/platform/text/mac/character-sets.txt ${WEBCORE_DIR}/platform/text/mac/mac-encodings.txt kTextEncoding > ${DERIVED_SOURCES_WEBCORE_DIR}/CharsetData.cpp
141     VERBATIM)
142
143 list(APPEND WebCore_SOURCES
144     ${DERIVED_SOURCES_WEBCORE_DIR}/CharsetData.cpp
145 )
146
147 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
148     "${CMAKE_OSX_SYSROOT}/usr/include/libxslt"
149     "${CMAKE_OSX_SYSROOT}/usr/include/libxml2"
150 )
151
152 list(APPEND WebCore_SOURCES
153     Modules/indieui/UIRequestEvent.cpp
154
155     Modules/plugins/QuickTimePluginReplacement.mm
156     Modules/plugins/YouTubePluginReplacement.cpp
157
158     accessibility/mac/AXObjectCacheMac.mm
159     accessibility/mac/AccessibilityObjectMac.mm
160     accessibility/mac/WebAccessibilityObjectWrapperBase.mm
161     accessibility/mac/WebAccessibilityObjectWrapperMac.mm
162
163     bindings/js/ScriptControllerMac.mm
164
165     bindings/objc/DOM.mm
166     bindings/objc/DOMAbstractView.mm
167     bindings/objc/DOMCSS.mm
168     bindings/objc/DOMCustomXPathNSResolver.mm
169     bindings/objc/DOMEvents.mm
170     bindings/objc/DOMHTML.mm
171     bindings/objc/DOMInternal.mm
172     bindings/objc/DOMObject.mm
173     bindings/objc/DOMUIKitExtensions.mm
174     bindings/objc/DOMUtility.mm
175     bindings/objc/DOMXPath.mm
176     bindings/objc/ExceptionHandlers.mm
177     bindings/objc/ObjCEventListener.mm
178     bindings/objc/ObjCNodeFilterCondition.mm
179     bindings/objc/WebScriptObject.mm
180
181     bridge/objc/ObjCRuntimeObject.mm
182     bridge/objc/objc_class.mm
183     bridge/objc/objc_instance.mm
184     bridge/objc/objc_runtime.mm
185     bridge/objc/objc_utility.mm
186
187     crypto/CommonCryptoUtilities.cpp
188     crypto/CryptoAlgorithm.cpp
189     crypto/CryptoAlgorithmDescriptionBuilder.cpp
190     crypto/CryptoAlgorithmRegistry.cpp
191     crypto/CryptoKey.cpp
192     crypto/CryptoKeyPair.cpp
193     crypto/SubtleCrypto.cpp
194
195     crypto/algorithms/CryptoAlgorithmAES_CBC.cpp
196     crypto/algorithms/CryptoAlgorithmAES_KW.cpp
197     crypto/algorithms/CryptoAlgorithmHMAC.cpp
198     crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp
199     crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp
200     crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp
201     crypto/algorithms/CryptoAlgorithmSHA1.cpp
202     crypto/algorithms/CryptoAlgorithmSHA224.cpp
203     crypto/algorithms/CryptoAlgorithmSHA256.cpp
204     crypto/algorithms/CryptoAlgorithmSHA384.cpp
205     crypto/algorithms/CryptoAlgorithmSHA512.cpp
206
207     crypto/keys/CryptoKeyAES.cpp
208     crypto/keys/CryptoKeyDataOctetSequence.cpp
209     crypto/keys/CryptoKeyDataRSAComponents.cpp
210     crypto/keys/CryptoKeyHMAC.cpp
211     crypto/keys/CryptoKeySerializationRaw.cpp
212
213     crypto/mac/CryptoAlgorithmAES_CBCMac.cpp
214     crypto/mac/CryptoAlgorithmAES_KWMac.cpp
215     crypto/mac/CryptoAlgorithmHMACMac.cpp
216     crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp
217     crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp
218     crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp
219     crypto/mac/CryptoAlgorithmRegistryMac.cpp
220     crypto/mac/CryptoDigestMac.cpp
221     crypto/mac/CryptoKeyMac.cpp
222     crypto/mac/CryptoKeyRSAMac.cpp
223     crypto/mac/SerializedCryptoKeyWrapMac.mm
224
225     dom/DataTransferMac.mm
226     dom/SlotAssignment.cpp
227
228     editing/SelectionRectGatherer.cpp
229     editing/SmartReplaceCF.cpp
230
231     editing/cocoa/EditorCocoa.mm
232     editing/cocoa/HTMLConverter.mm
233
234     editing/mac/AlternativeTextUIController.mm
235     editing/mac/DataDetection.mm
236     editing/mac/DictionaryLookup.mm
237     editing/mac/EditorMac.mm
238     editing/mac/FrameSelectionMac.mm
239     editing/mac/TextAlternativeWithRange.mm
240     editing/mac/TextUndoInsertionMarkupMac.mm
241
242     fileapi/FileMac.mm
243
244     html/HTMLSlotElement.cpp
245
246     html/shadow/ImageControlsRootElement.cpp
247     html/shadow/YouTubeEmbedShadowElement.cpp
248
249     html/shadow/mac/ImageControlsButtonElementMac.cpp
250     html/shadow/mac/ImageControlsRootElementMac.cpp
251
252     history/mac/HistoryItemMac.mm
253
254     loader/ResourceLoadInfo.cpp
255
256     loader/archive/cf/LegacyWebArchive.cpp
257     loader/archive/cf/LegacyWebArchiveMac.mm
258
259     loader/cocoa/DiskCacheMonitorCocoa.mm
260     loader/cocoa/SubresourceLoaderCocoa.mm
261
262     loader/cf/ResourceLoaderCFNet.cpp
263     loader/cf/SubresourceLoaderCF.cpp
264
265     loader/mac/DocumentLoaderMac.cpp
266     loader/mac/LoaderNSURLExtras.mm
267     loader/mac/ResourceLoaderMac.mm
268
269     page/CaptionUserPreferencesMediaAF.cpp
270     page/PageDebuggable.cpp
271
272     page/cocoa/UserAgent.mm
273     page/cocoa/ResourceUsageOverlayCocoa.mm
274     page/cocoa/SettingsCocoa.mm
275
276     page/mac/ChromeMac.mm
277     page/mac/DragControllerMac.mm
278     page/mac/EventHandlerMac.mm
279     page/mac/PageMac.mm
280     page/mac/ServicesOverlayController.mm
281     page/mac/TextIndicatorWindow.mm
282     page/mac/UserAgentMac.mm
283     page/mac/WheelEventDeltaFilterMac.mm
284
285     page/scrolling/AsyncScrollingCoordinator.cpp
286
287     page/scrolling/cocoa/ScrollingStateNode.mm
288
289     page/scrolling/mac/ScrollingCoordinatorMac.mm
290     page/scrolling/mac/ScrollingStateFrameScrollingNodeMac.mm
291     page/scrolling/mac/ScrollingThreadMac.mm
292     page/scrolling/mac/ScrollingTreeFixedNode.mm
293     page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm
294     page/scrolling/mac/ScrollingTreeMac.cpp
295     page/scrolling/mac/ScrollingTreeStickyNode.mm
296
297     platform/LocalizedStrings.cpp
298     platform/ScrollableArea.cpp
299     platform/VNodeTracker.cpp
300
301     platform/audio/AudioSession.cpp
302
303     platform/audio/mac/AudioBusMac.mm
304     platform/audio/mac/AudioDestinationMac.cpp
305     platform/audio/mac/AudioFileReaderMac.cpp
306     platform/audio/mac/AudioHardwareListenerMac.cpp
307     platform/audio/mac/AudioSessionMac.cpp
308     platform/audio/mac/CARingBuffer.cpp
309     platform/audio/mac/FFTFrameMac.cpp
310     platform/audio/mac/MediaSessionManagerMac.cpp
311
312     platform/cf/CFURLExtras.cpp
313     platform/cf/CoreMediaSoftLink.cpp
314     platform/cf/FileSystemCF.cpp
315     platform/cf/KeyedDecoderCF.cpp
316     platform/cf/KeyedEncoderCF.cpp
317     platform/cf/MainThreadSharedTimerCF.cpp
318     platform/cf/MediaAccessibilitySoftLink.cpp
319     platform/cf/RunLoopObserver.cpp
320     platform/cf/SharedBufferCF.cpp
321     platform/cf/URLCF.cpp
322
323     platform/cocoa/ContentFilterUnblockHandlerCocoa.mm
324     platform/cocoa/DisplaySleepDisablerCocoa.cpp
325     platform/cocoa/KeyEventCocoa.mm
326     platform/cocoa/LocalizedStringsCocoa.mm
327     platform/cocoa/MachSendRight.cpp
328     platform/cocoa/MemoryPressureHandlerCocoa.mm
329     platform/cocoa/NetworkExtensionContentFilter.mm
330     platform/cocoa/ParentalControlsContentFilter.mm
331     platform/cocoa/ScrollController.mm
332     platform/cocoa/ScrollSnapAnimatorState.mm
333     platform/cocoa/SearchPopupMenuCocoa.mm
334     platform/cocoa/SystemVersion.mm
335     platform/cocoa/TelephoneNumberDetectorCocoa.cpp
336     platform/cocoa/ThemeCocoa.cpp
337     platform/cocoa/VNodeTrackerCocoa.cpp
338
339     platform/graphics/DisplayRefreshMonitor.cpp
340     platform/graphics/DisplayRefreshMonitorManager.cpp
341     platform/graphics/FontPlatformData.cpp
342
343     platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm
344     platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm
345     platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm
346     platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp
347     platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp
348     platform/graphics/avfoundation/MediaPlaybackTargetMac.mm
349     platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp
350     platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.mm
351     platform/graphics/avfoundation/MediaTimeAVFoundation.cpp
352
353     platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm
354     platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp
355     platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm
356     platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm
357     platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm
358     platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm
359     platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
360     platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
361     platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm
362     platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm
363     platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp
364     platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm
365     platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm
366
367     platform/graphics/ca/GraphicsLayerCA.cpp
368     platform/graphics/ca/LayerFlushScheduler.cpp
369     platform/graphics/ca/LayerPool.cpp
370     platform/graphics/ca/PlatformCAAnimation.cpp
371     platform/graphics/ca/PlatformCALayer.cpp
372     platform/graphics/ca/TileController.cpp
373     platform/graphics/ca/TileCoverageMap.cpp
374     platform/graphics/ca/TileGrid.cpp
375     platform/graphics/ca/TransformationMatrixCA.cpp
376
377     platform/graphics/ca/cocoa/LayerFlushSchedulerMac.cpp
378     platform/graphics/ca/cocoa/PlatformCAAnimationCocoa.mm
379     platform/graphics/ca/cocoa/PlatformCAFiltersCocoa.mm
380     platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm
381     platform/graphics/ca/cocoa/WebSystemBackdropLayer.mm
382     platform/graphics/ca/cocoa/WebTiledBackingLayer.mm
383
384     platform/graphics/cg/BitmapImageCG.cpp
385     platform/graphics/cg/ColorCG.cpp
386     platform/graphics/cg/FloatPointCG.cpp
387     platform/graphics/cg/FloatRectCG.cpp
388     platform/graphics/cg/FloatSizeCG.cpp
389     platform/graphics/cg/GradientCG.cpp
390     platform/graphics/cg/GraphicsContext3DCG.cpp
391     platform/graphics/cg/GraphicsContextCG.cpp
392     platform/graphics/cg/IOSurfacePool.cpp
393     platform/graphics/cg/ImageBufferCG.cpp
394     platform/graphics/cg/ImageBufferDataCG.cpp
395     platform/graphics/cg/ImageCG.cpp
396     platform/graphics/cg/ImageSourceCG.cpp
397     platform/graphics/cg/ImageSourceCGMac.mm
398     platform/graphics/cg/IntPointCG.cpp
399     platform/graphics/cg/IntRectCG.cpp
400     platform/graphics/cg/IntSizeCG.cpp
401     platform/graphics/cg/PDFDocumentImage.cpp
402     platform/graphics/cg/PathCG.cpp
403     platform/graphics/cg/PatternCG.cpp
404     platform/graphics/cg/SubimageCacheWithTimer.cpp
405     platform/graphics/cg/TransformationMatrixCG.cpp
406
407     platform/graphics/cocoa/FontCacheCoreText.cpp
408     platform/graphics/cocoa/FontCascadeCocoa.mm
409     platform/graphics/cocoa/FontCocoa.mm
410     platform/graphics/cocoa/FontPlatformDataCocoa.mm
411     platform/graphics/cocoa/IOSurface.mm
412     platform/graphics/cocoa/IOSurfacePoolCocoa.mm
413     platform/graphics/cocoa/WebActionDisablingCALayerDelegate.mm
414     platform/graphics/cocoa/WebCoreCALayerExtras.mm
415
416     platform/graphics/mac/ColorMac.mm
417     platform/graphics/mac/ComplexTextController.cpp
418     platform/graphics/mac/ComplexTextControllerCoreText.mm
419     platform/graphics/mac/DisplayRefreshMonitorMac.cpp
420     platform/graphics/mac/FloatPointMac.mm
421     platform/graphics/mac/FloatRectMac.mm
422     platform/graphics/mac/FloatSizeMac.mm
423     platform/graphics/mac/FontCacheMac.mm
424     platform/graphics/mac/FontCustomPlatformData.cpp
425     platform/graphics/mac/GlyphPageMac.cpp
426     platform/graphics/mac/GraphicsContext3DMac.mm
427     platform/graphics/mac/GraphicsContextMac.mm
428     platform/graphics/mac/IconMac.mm
429     platform/graphics/mac/ImageMac.mm
430     platform/graphics/mac/IntPointMac.mm
431     platform/graphics/mac/IntRectMac.mm
432     platform/graphics/mac/IntSizeMac.mm
433     platform/graphics/mac/MediaPlayerPrivateQTKit.mm
434     platform/graphics/mac/MediaTimeQTKit.mm
435     platform/graphics/mac/PDFDocumentImageMac.mm
436     platform/graphics/mac/SimpleFontDataCoreText.cpp
437     platform/graphics/mac/WebGLLayer.mm
438     platform/graphics/mac/WebLayer.mm
439
440     platform/graphics/opengl/Extensions3DOpenGL.cpp
441     platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
442     platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
443     platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
444     platform/graphics/opengl/TemporaryOpenGLSetting.cpp
445
446     platform/graphics/opentype/OpenTypeCG.cpp
447     platform/graphics/opentype/OpenTypeMathData.cpp
448
449     platform/mac/BlockExceptions.mm
450     platform/mac/CursorMac.mm
451     platform/mac/DragDataMac.mm
452     platform/mac/DragImageMac.mm
453     platform/mac/EventLoopMac.mm
454     platform/mac/FileSystemMac.mm
455     platform/mac/HIDGamepad.cpp
456     platform/mac/HIDGamepadProvider.cpp
457     platform/mac/KeyEventMac.mm
458     platform/mac/KillRingMac.mm
459     platform/mac/Language.mm
460     platform/mac/LocalCurrentGraphicsContext.mm
461     platform/mac/LoggingMac.mm
462     platform/mac/MIMETypeRegistryMac.mm
463     platform/mac/NSScrollerImpDetails.mm
464     platform/mac/PasteboardMac.mm
465     platform/mac/PlatformClockCA.cpp
466     platform/mac/PlatformClockCM.mm
467     platform/mac/PlatformEventFactoryMac.mm
468     platform/mac/PlatformPasteboardMac.mm
469     platform/mac/PlatformScreenMac.mm
470     platform/mac/PlatformSpeechSynthesizerMac.mm
471     platform/mac/PowerObserverMac.cpp
472     platform/mac/PublicSuffixMac.mm
473     platform/mac/SSLKeyGeneratorMac.cpp
474     platform/mac/ScrollAnimatorMac.mm
475     platform/mac/ScrollViewMac.mm
476     platform/mac/ScrollbarThemeMac.mm
477     platform/mac/SerializedPlatformRepresentationMac.mm
478     platform/mac/SharedBufferMac.mm
479     platform/mac/SoundMac.mm
480     platform/mac/SuddenTermination.mm
481     platform/mac/SystemSleepListenerMac.mm
482     platform/mac/ThemeMac.mm
483     platform/mac/ThreadCheck.mm
484     platform/mac/URLMac.mm
485     platform/mac/UserActivityMac.mm
486     platform/mac/WebCoreFullScreenPlaceholderView.mm
487     platform/mac/WebCoreFullScreenWarningView.mm
488     platform/mac/WebCoreFullScreenWindow.mm
489     platform/mac/WebCoreNSStringExtras.mm
490     platform/mac/WebCoreNSURLExtras.mm
491     platform/mac/WebCoreObjCExtras.mm
492     platform/mac/WebCoreSystemInterface.mm
493     platform/mac/WebNSAttributedStringExtras.mm
494     platform/mac/WebVideoFullscreenController.mm
495     platform/mac/WebVideoFullscreenHUDWindowController.mm
496     platform/mac/WebWindowAnimation.mm
497     platform/mac/WidgetMac.mm
498
499     platform/mediastream/mac/MockRealtimeVideoSourceMac.mm
500
501     platform/network/cf/AuthenticationCF.cpp
502     platform/network/cf/CookieJarCFNet.cpp
503     platform/network/cf/CookieStorageCFNet.cpp
504     platform/network/cf/CredentialStorageCFNet.cpp
505     platform/network/cf/DNSCFNet.cpp
506     platform/network/cf/FormDataStreamCFNet.cpp
507     platform/network/cf/LoaderRunLoopCF.cpp
508     platform/network/cf/NetworkStorageSessionCFNet.cpp
509     platform/network/cf/ProxyServerCFNet.cpp
510     platform/network/cf/ResourceErrorCF.cpp
511     platform/network/cf/ResourceHandleCFNet.cpp
512     platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp
513     platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp
514     platform/network/cf/ResourceRequestCFNet.cpp
515     platform/network/cf/ResourceResponseCFNet.cpp
516     platform/network/cf/SocketStreamHandleCFNet.cpp
517     platform/network/cf/SynchronousLoaderClientCFNet.cpp
518     platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp
519
520     platform/network/cocoa/CredentialCocoa.mm
521     platform/network/cocoa/ProtectionSpaceCocoa.mm
522     platform/network/cocoa/ResourceRequestCocoa.mm
523     platform/network/cocoa/ResourceResponseCocoa.mm
524
525     platform/network/mac/AuthenticationMac.mm
526     platform/network/mac/BlobDataFileReferenceMac.mm
527     platform/network/mac/CertificateInfoMac.mm
528     platform/network/mac/CookieJarMac.mm
529     platform/network/mac/CookieStorageMac.mm
530     platform/network/mac/CredentialStorageMac.mm
531     platform/network/mac/FormDataStreamMac.mm
532     platform/network/mac/NetworkStateNotifierMac.cpp
533     platform/network/mac/ResourceErrorMac.mm
534     platform/network/mac/ResourceHandleMac.mm
535     platform/network/mac/ResourceRequestMac.mm
536     platform/network/mac/SynchronousLoaderClient.mm
537     platform/network/mac/UTIUtilities.mm
538     platform/network/mac/WebCoreResourceHandleAsDelegate.mm
539     platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm
540     platform/network/mac/WebCoreURLResponse.mm
541
542     platform/posix/FileSystemPOSIX.cpp
543
544     platform/text/cf/HyphenationCF.cpp
545
546     platform/text/mac/LocaleMac.mm
547     platform/text/mac/TextBoundaries.mm
548     platform/text/mac/TextBreakIteratorInternalICUMac.mm
549     platform/text/mac/TextCodecMac.cpp
550
551     rendering/RenderThemeMac.mm
552     rendering/TextAutoSizing.cpp
553 )
554
555 # FIXME: We do not need everything from all of these directories.
556 # Move some to WebCore_FORWARDING_HEADERS_FILES once people start actually maintaining this.
557 set(WebCore_FORWARDING_HEADERS_DIRECTORIES
558     accessibility
559     bridge
560     contentextensions
561     crypto
562     css
563     dom
564     editing
565     fileapi
566     history
567     html
568     inspector
569     loader
570     page
571     platform
572     plugins
573     rendering
574     replay
575     storage
576     style
577     svg
578
579     Modules/geolocation
580     Modules/indexeddb
581     Modules/notifications
582     Modules/webdatabase
583
584     Modules/indexeddb/legacy
585
586     bindings/generic
587     bindings/js
588     bindings/objc
589
590     bridge/jsc
591
592     editing/cocoa
593     editing/mac
594
595     html/forms
596     html/parser
597     html/shadow
598
599     loader/appcache
600     loader/archive
601     loader/cache
602     loader/cocoa
603
604     loader/archive/cf
605
606     page/animation
607     page/cocoa
608     page/mac
609     page/scrolling
610
611     page/scrolling/mac
612
613     platform/animation
614     platform/audio
615     platform/cf
616     platform/cocoa
617     platform/graphics
618     platform/mac
619     platform/mediastream
620     platform/mock
621     platform/network
622     platform/sql
623     platform/text
624
625     platform/graphics/ca
626     platform/graphics/cocoa
627     platform/graphics/cg
628     platform/graphics/filters
629     platform/graphics/mac
630     platform/graphics/transforms
631
632     platform/graphics/ca/cocoa
633
634     platform/network/cf
635     platform/network/cocoa
636     platform/network/mac
637
638     platform/spi/cf
639     platform/spi/cg
640     platform/spi/cocoa
641     platform/spi/mac
642
643     rendering/line
644     rendering/style
645
646     svg/graphics
647     svg/properties
648 )
649
650 set(WebCore_FORWARDING_HEADERS_FILES
651     Modules/webdatabase/DatabaseDetails.h
652
653     bridge/IdentifierRep.h
654     bridge/npruntime_impl.h
655     bridge/npruntime_internal.h
656
657     contentextensions/CompiledContentExtension.h
658
659     editing/EditAction.h
660     editing/EditingBehaviorTypes.h
661     editing/EditingBoundary.h
662     editing/FindOptions.h
663     editing/FrameSelection.h
664     editing/TextAffinity.h
665
666     editing/mac/TextAlternativeWithRange.h
667
668     history/BackForwardList.h
669     history/HistoryItem.h
670     history/PageCache.h
671
672     html/HTMLMediaElement.h
673
674     loader/appcache/ApplicationCacheStorage.h
675
676     loader/icon/IconDatabase.h
677     loader/icon/IconDatabaseBase.h
678     loader/icon/IconDatabaseClient.h
679
680     loader/mac/LoaderNSURLExtras.h
681
682     platform/DisplaySleepDisabler.h
683     platform/PlatformExportMacros.h
684
685     platform/audio/AudioHardwareListener.h
686
687     platform/cf/RunLoopObserver.h
688
689     platform/cocoa/MachSendRight.h
690
691     platform/graphics/cocoa/IOSurface.h
692
693     platform/graphics/transforms/AffineTransform.h
694
695     platform/mac/SoftLinking.h
696     platform/mac/WebCoreSystemInterface.h
697
698     platform/network/cf/CertificateInfo.h
699     platform/network/cf/ResourceResponse.h
700
701     platform/network/mac/AuthenticationMac.h
702
703     platform/sql/SQLiteDatabase.h
704
705     rendering/style/RenderStyleConstants.h
706 )
707
708 list(APPEND WebCore_IDL_FILES
709     Modules/plugins/QuickTimePluginReplacement.idl
710 )
711
712 WEBKIT_CREATE_FORWARDING_HEADERS(WebCore DIRECTORIES ${WebCore_FORWARDING_HEADERS_DIRECTORIES} FILES ${WebCore_FORWARDING_HEADERS_FILES})
713
714 set(FEATURE_DEFINES_OBJECTIVE_C "LANGUAGE_OBJECTIVE_C=1 ${FEATURE_DEFINES_WITH_SPACE_SEPARATOR}")
715 set(ADDITIONAL_BINDINGS_DEPENDENCIES
716     ${WINDOW_CONSTRUCTORS_FILE}
717     ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
718     ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
719 )
720
721 set(ObjC_Bindings_IDL_FILES
722     css/CSSCharsetRule.idl
723     css/CSSFontFaceRule.idl
724     css/CSSImportRule.idl
725     css/CSSKeyframeRule.idl
726     css/CSSKeyframesRule.idl
727     css/CSSMediaRule.idl
728     css/CSSPageRule.idl
729     css/CSSPrimitiveValue.idl
730     css/CSSRule.idl
731     css/CSSRuleList.idl
732     css/CSSStyleDeclaration.idl
733     css/CSSStyleRule.idl
734     css/CSSStyleSheet.idl
735     css/CSSSupportsRule.idl
736     css/CSSUnknownRule.idl
737     css/CSSValue.idl
738     css/CSSValueList.idl
739     css/Counter.idl
740     css/MediaList.idl
741     css/RGBColor.idl
742     css/Rect.idl
743     css/StyleSheet.idl
744     css/StyleSheetList.idl
745     css/WebKitCSSFilterValue.idl
746     css/WebKitCSSRegionRule.idl
747     css/WebKitCSSTransformValue.idl
748
749     dom/Attr.idl
750     dom/BeforeLoadEvent.idl
751     dom/CDATASection.idl
752     dom/CharacterData.idl
753     dom/Comment.idl
754     dom/DOMImplementation.idl
755     dom/DOMNamedFlowCollection.idl
756     dom/Document.idl
757     dom/DocumentFragment.idl
758     dom/DocumentType.idl
759     dom/Element.idl
760     dom/Entity.idl
761     dom/EntityReference.idl
762     dom/Event.idl
763     dom/EventListener.idl
764     dom/EventTarget.idl
765     dom/KeyboardEvent.idl
766     dom/MessageEvent.idl
767     dom/MessagePort.idl
768     dom/MouseEvent.idl
769     dom/MutationEvent.idl
770     dom/NamedNodeMap.idl
771     dom/Node.idl
772     dom/NodeFilter.idl
773     dom/NodeIterator.idl
774     dom/NodeList.idl
775     dom/OverflowEvent.idl
776     dom/ProcessingInstruction.idl
777     dom/ProgressEvent.idl
778     dom/Range.idl
779     dom/Text.idl
780     dom/TextEvent.idl
781     dom/TreeWalker.idl
782     dom/UIEvent.idl
783     dom/WebKitNamedFlow.idl
784     dom/WheelEvent.idl
785
786     fileapi/Blob.idl
787     fileapi/File.idl
788     fileapi/FileList.idl
789
790     html/DOMTokenList.idl
791     html/HTMLAnchorElement.idl
792     html/HTMLAppletElement.idl
793     html/HTMLAreaElement.idl
794     html/HTMLBRElement.idl
795     html/HTMLBaseElement.idl
796     html/HTMLBaseFontElement.idl
797     html/HTMLBodyElement.idl
798     html/HTMLButtonElement.idl
799     html/HTMLCanvasElement.idl
800     html/HTMLCollection.idl
801     html/HTMLDListElement.idl
802     html/HTMLDirectoryElement.idl
803     html/HTMLDivElement.idl
804     html/HTMLDocument.idl
805     html/HTMLElement.idl
806     html/HTMLEmbedElement.idl
807     html/HTMLFieldSetElement.idl
808     html/HTMLFontElement.idl
809     html/HTMLFormElement.idl
810     html/HTMLFrameElement.idl
811     html/HTMLFrameSetElement.idl
812     html/HTMLHRElement.idl
813     html/HTMLHeadElement.idl
814     html/HTMLHeadingElement.idl
815     html/HTMLHtmlElement.idl
816     html/HTMLIFrameElement.idl
817     html/HTMLImageElement.idl
818     html/HTMLInputElement.idl
819     html/HTMLLIElement.idl
820     html/HTMLLabelElement.idl
821     html/HTMLLegendElement.idl
822     html/HTMLLinkElement.idl
823     html/HTMLMapElement.idl
824     html/HTMLMarqueeElement.idl
825     html/HTMLMenuElement.idl
826     html/HTMLMetaElement.idl
827     html/HTMLModElement.idl
828     html/HTMLOListElement.idl
829     html/HTMLObjectElement.idl
830     html/HTMLOptGroupElement.idl
831     html/HTMLOptionElement.idl
832     html/HTMLOptionsCollection.idl
833     html/HTMLParagraphElement.idl
834     html/HTMLParamElement.idl
835     html/HTMLPreElement.idl
836     html/HTMLQuoteElement.idl
837     html/HTMLScriptElement.idl
838     html/HTMLSelectElement.idl
839     html/HTMLStyleElement.idl
840     html/HTMLTableCaptionElement.idl
841     html/HTMLTableCellElement.idl
842     html/HTMLTableColElement.idl
843     html/HTMLTableElement.idl
844     html/HTMLTableRowElement.idl
845     html/HTMLTableSectionElement.idl
846     html/HTMLTextAreaElement.idl
847     html/HTMLTitleElement.idl
848     html/HTMLUListElement.idl
849     html/ValidityState.idl
850
851     page/AbstractView.idl
852     page/DOMSecurityPolicy.idl
853
854     xml/XPathExpression.idl
855     xml/XPathNSResolver.idl
856     xml/XPathResult.idl
857 )
858
859 set(ObjC_BINDINGS_NO_MM
860     AbstractView
861     AbstractWorker
862     ChildNode
863     DOMURLMediaSource
864     DOMURLMediaStream
865     DOMWindowIndexedDatabase
866     DOMWindowNotifications
867     DOMWindowSpeechSynthesis
868     DOMWindowWebDatabase
869     EventListener
870     EventTarget
871     GlobalEventHandlers
872     HTMLMediaElementMediaSession
873     HTMLMediaElementMediaStream
874     NavigatorBattery
875     NavigatorContentUtils
876     NavigatorGamepad
877     NavigatorGeolocation
878     NavigatorMediaDevices
879     NavigatorUserMedia
880     NavigatorVibration
881     NodeFilter
882     NonDocumentTypeChildNode
883     NonElementParentNode
884     ParentNode
885     URLUtils
886     WindowBase64
887     WindowEventHandlers
888     WindowTimers
889     WorkerGlobalScopeIndexedDatabase
890     WorkerGlobalScopeNotifications
891     XPathNSResolver
892 )
893
894 GENERATE_BINDINGS(WebCore_SOURCES
895     "${ObjC_Bindings_IDL_FILES}"
896     "${WEBCORE_DIR}"
897     "${IDL_INCLUDES}"
898     "${FEATURE_DEFINES_OBJECTIVE_C}"
899     ${DERIVED_SOURCES_WEBCORE_DIR} DOM ObjC mm
900     ${IDL_ATTRIBUTES_FILE}
901     ${SUPPLEMENTAL_DEPENDENCY_FILE}
902     ${ADDITIONAL_BINDINGS_DEPENDENCIES})