4365e755d1f141b276b906f3dbacaa8b99605997
[WebKit-https.git] / Source / WebCore / PlatformMac.cmake
1 if ("${CURRENT_OSX_VERSION}" MATCHES "10.9")
2     set(WEBKITSYSTEMINTERFACE_LIBRARY ${CMAKE_SOURCE_DIR}/WebKitLibraries/libWebKitSystemInterfaceMavericks.a)
3 elseif ("${CURRENT_OSX_VERSION}" MATCHES "10.10")
4     set(WEBKITSYSTEMINTERFACE_LIBRARY ${CMAKE_SOURCE_DIR}/WebKitLibraries/libWebKitSystemInterfaceYosemite.a)
5 else ()
6     set(WEBKITSYSTEMINTERFACE_LIBRARY ${CMAKE_SOURCE_DIR}/WebKitLibraries/libWebKitSystemInterfaceElCapitan.a)
7 endif ()
8
9 find_library(ACCELERATE_LIBRARY accelerate)
10 find_library(APPLICATIONSERVICES_LIBRARY ApplicationServices)
11 find_library(AVFOUNDATION_LIBRARY AVFoundation)
12 find_library(AUDIOTOOLBOX_LIBRARY AudioToolbox)
13 find_library(AUDIOUNIT_LIBRARY AudioUnit)
14 find_library(CARBON_LIBRARY Carbon)
15 find_library(CFNETWORK_LIBRARY CFNetwork)
16 find_library(COCOA_LIBRARY Cocoa)
17 find_library(COREAUDIO_LIBRARY CoreAudio)
18 find_library(CORESERVICES_LIBRARY CoreServices)
19 find_library(DISKARBITRATION_LIBRARY DiskArbitration)
20 find_library(IOKIT_LIBRARY IOKit)
21 find_library(IOSURFACE_LIBRARY IOSurface)
22 find_library(METAL_LIBRARY Metal)
23 find_library(OPENGL_LIBRARY OpenGL)
24 find_library(QUARTZ_LIBRARY Quartz)
25 find_library(QUARTZCORE_LIBRARY QuartzCore)
26 find_library(SECURITY_LIBRARY Security)
27 find_library(SYSTEMCONFIGURATION_LIBRARY SystemConfiguration)
28 find_library(XML2_LIBRARY XML2)
29 find_package(Sqlite REQUIRED)
30 find_package(ZLIB REQUIRED)
31
32 list(APPEND WebCore_LIBRARIES
33     ${ACCELERATE_LIBRARY}
34     ${AUDIOTOOLBOX_LIBRARY}
35     ${AUDIOUNIT_LIBRARY}
36     ${AVFOUNDATION_LIBRARY}
37     ${CARBON_LIBRARY}
38     ${CFNETWORK_LIBRARY}
39     ${COCOA_LIBRARY}
40     ${COREAUDIO_LIBRARY}
41     ${CORESERVICES_LIBRARY}
42     ${DISKARBITRATION_LIBRARY}
43     ${IOKIT_LIBRARY}
44     ${IOSURFACE_LIBRARY}
45     ${METAL_LIBRARY}
46     ${OPENGL_LIBRARY}
47     ${QUARTZ_LIBRARY}
48     ${QUARTZCORE_LIBRARY}
49     ${SECURITY_LIBRARY}
50     ${SQLITE_LIBRARIES}
51     ${SYSTEMCONFIGURATION_LIBRARY}
52     ${WEBKITSYSTEMINTERFACE_LIBRARY}
53     ${XML2_LIBRARY}
54     ${ZLIB_LIBRARY}
55 )
56
57 add_definitions(-iframework ${APPLICATIONSERVICES_LIBRARY}/Versions/Current/Frameworks)
58 add_definitions(-iframework ${AVFOUNDATION_LIBRARY}/Versions/Current/Frameworks)
59 add_definitions(-iframework ${CARBON_LIBRARY}/Versions/Current/Frameworks)
60 add_definitions(-iframework ${CORESERVICES_LIBRARY}/Versions/Current/Frameworks)
61 add_definitions(-iframework ${QUARTZ_LIBRARY}/Frameworks)
62
63 find_library(DATADETECTORSCORE_FRAMEWORK DataDetectorsCore HINTS /System/Library/PrivateFrameworks)
64 if (NOT DATADETECTORSCORE_FRAMEWORK-NOTFOUND)
65     list(APPEND WebCore_LIBRARIES ${DATADETECTORSCORE_FRAMEWORK})
66 endif ()
67
68 find_library(LOOKUP_FRAMEWORK Lookup HINTS /System/Library/PrivateFrameworks)
69 if (NOT LOOKUP_FRAMEWORK-NOTFOUND)
70     list(APPEND WebCore_LIBRARIES ${LOOKUP_FRAMEWORK})
71 endif ()
72
73 list(APPEND WebCore_INCLUDE_DIRECTORIES
74     "${FORWARDING_HEADERS_DIR}/JavaScriptCore"
75     "${THIRDPARTY_DIR}/ANGLE"
76     "${THIRDPARTY_DIR}/ANGLE/include/KHR"
77     "${WEBCORE_DIR}/accessibility/mac"
78     "${WEBCORE_DIR}/bridge/objc"
79     "${WEBCORE_DIR}/editing/cocoa"
80     "${WEBCORE_DIR}/editing/ios"
81     "${WEBCORE_DIR}/editing/mac"
82     "${WEBCORE_DIR}/ForwardingHeaders"
83     "${WEBCORE_DIR}/ForwardingHeaders/bindings"
84     "${WEBCORE_DIR}/ForwardingHeaders/bytecode"
85     "${WEBCORE_DIR}/ForwardingHeaders/domjit"
86     "${WEBCORE_DIR}/ForwardingHeaders/debugger"
87     "${WEBCORE_DIR}/ForwardingHeaders/heap"
88     "${WEBCORE_DIR}/ForwardingHeaders/inspector"
89     "${WEBCORE_DIR}/ForwardingHeaders/interpreter"
90     "${WEBCORE_DIR}/ForwardingHeaders/jit"
91     "${WEBCORE_DIR}/ForwardingHeaders/masm"
92     "${WEBCORE_DIR}/ForwardingHeaders/parser"
93     "${WEBCORE_DIR}/ForwardingHeaders/profiler"
94     "${WEBCORE_DIR}/ForwardingHeaders/replay"
95     "${WEBCORE_DIR}/ForwardingHeaders/runtime"
96     "${WEBCORE_DIR}/ForwardingHeaders/yarr"
97     "${WEBCORE_DIR}/icu"
98     "${WEBCORE_DIR}/loader/archive/cf"
99     "${WEBCORE_DIR}/loader/cf"
100     "${WEBCORE_DIR}/loader/mac"
101     "${WEBCORE_DIR}/page/cocoa"
102     "${WEBCORE_DIR}/page/mac"
103     "${WEBCORE_DIR}/page/scrolling/mac"
104     "${WEBCORE_DIR}/platform/audio/mac"
105     "${WEBCORE_DIR}/platform/cf"
106     "${WEBCORE_DIR}/platform/cocoa"
107     "${WEBCORE_DIR}/platform/graphics/avfoundation"
108     "${WEBCORE_DIR}/platform/graphics/avfoundation/cf"
109     "${WEBCORE_DIR}/platform/graphics/avfoundation/objc"
110     "${WEBCORE_DIR}/platform/graphics/ca"
111     "${WEBCORE_DIR}/platform/graphics/ca/cocoa"
112     "${WEBCORE_DIR}/platform/graphics/cocoa"
113     "${WEBCORE_DIR}/platform/graphics/cg"
114     "${WEBCORE_DIR}/platform/graphics/cv"
115     "${WEBCORE_DIR}/platform/graphics/gpu"
116     "${WEBCORE_DIR}/platform/graphics/egl"
117     "${WEBCORE_DIR}/platform/graphics/opentype"
118     "${WEBCORE_DIR}/platform/graphics/opengl"
119     "${WEBCORE_DIR}/platform/graphics/mac"
120     "${WEBCORE_DIR}/platform/mac"
121     "${WEBCORE_DIR}/platform/mediastream/mac"
122     "${WEBCORE_DIR}/platform/network/cocoa"
123     "${WEBCORE_DIR}/platform/network/cf"
124     "${WEBCORE_DIR}/platform/network/ios"
125     "${WEBCORE_DIR}/platform/network/mac"
126     "${WEBCORE_DIR}/platform/text/cf"
127     "${WEBCORE_DIR}/platform/text/mac"
128     "${WEBCORE_DIR}/platform/spi/cf"
129     "${WEBCORE_DIR}/platform/spi/cg"
130     "${WEBCORE_DIR}/platform/spi/cocoa"
131     "${WEBCORE_DIR}/platform/spi/ios"
132     "${WEBCORE_DIR}/platform/spi/mac"
133     "${WEBCORE_DIR}/plugins/mac"
134 )
135
136 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
137     ${WEBCORE_DIR}/html/shadow/mac/imageControlsMac.css
138     ${WEBCORE_DIR}/Modules/plugins/QuickTimePluginReplacement.css
139 )
140
141 set(WebCore_USER_AGENT_SCRIPTS
142     ${WEBCORE_DIR}/Modules/plugins/QuickTimePluginReplacement.js
143 )
144
145 #FIXME: Use ios-encodings.txt once we get CMake working for iOS.
146 add_custom_command(
147     OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/CharsetData.cpp
148     MAIN_DEPENDENCY ${WEBCORE_DIR}/platform/text/mac/make-charset-table.pl
149     DEPENDS platform/text/mac/character-sets.txt
150     DEPENDS platform/text/mac/mac-encodings.txt
151     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
152     VERBATIM)
153
154 list(APPEND WebCore_DERIVED_SOURCES
155     ${DERIVED_SOURCES_WEBCORE_DIR}/CharsetData.cpp
156 )
157
158 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
159     "${CMAKE_OSX_SYSROOT}/usr/include/libxslt"
160     "${CMAKE_OSX_SYSROOT}/usr/include/libxml2"
161 )
162
163 list(APPEND WebCore_SOURCES
164     Modules/plugins/QuickTimePluginReplacement.mm
165     Modules/plugins/YouTubePluginReplacement.cpp
166
167     accessibility/mac/AXObjectCacheMac.mm
168     accessibility/mac/AccessibilityObjectMac.mm
169     accessibility/mac/WebAccessibilityObjectWrapperBase.mm
170     accessibility/mac/WebAccessibilityObjectWrapperMac.mm
171
172     bindings/js/ScriptControllerMac.mm
173
174     bridge/objc/ObjCRuntimeObject.mm
175     bridge/objc/WebScriptObject.mm
176     bridge/objc/objc_class.mm
177     bridge/objc/objc_instance.mm
178     bridge/objc/objc_runtime.mm
179     bridge/objc/objc_utility.mm
180
181     crypto/CommonCryptoUtilities.cpp
182
183     crypto/mac/CommonCryptoDERUtilities.cpp
184     crypto/mac/CryptoAlgorithmAES_CBCMac.cpp
185     crypto/mac/CryptoAlgorithmAES_CFBMac.cpp
186     crypto/mac/CryptoAlgorithmAES_CTRMac.cpp
187     crypto/mac/CryptoAlgorithmAES_GCMMac.cpp
188     crypto/mac/CryptoAlgorithmAES_KWMac.cpp
189     crypto/mac/CryptoAlgorithmECDHMac.cpp
190     crypto/mac/CryptoAlgorithmECDSAMac.cpp
191     crypto/mac/CryptoAlgorithmHKDFMac.cpp
192     crypto/mac/CryptoAlgorithmHMACMac.cpp
193     crypto/mac/CryptoAlgorithmPBKDF2Mac.cpp
194     crypto/mac/CryptoAlgorithmRSAES_PKCS1_v1_5Mac.cpp
195     crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp
196     crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp
197     crypto/mac/CryptoAlgorithmRSA_PSSMac.cpp
198     crypto/mac/CryptoAlgorithmRegistryMac.cpp
199     crypto/mac/CryptoKeyECMac.cpp
200     crypto/mac/CryptoKeyMac.cpp
201     crypto/mac/CryptoKeyRSAMac.cpp
202     crypto/mac/SerializedCryptoKeyWrapMac.mm
203
204     dom/DataTransferMac.mm
205     dom/SlotAssignment.cpp
206
207     editing/SelectionRectGatherer.cpp
208     editing/SmartReplaceCF.cpp
209
210     editing/cocoa/DataDetection.mm
211     editing/cocoa/EditorCocoa.mm
212     editing/cocoa/HTMLConverter.mm
213     editing/cocoa/WebArchiveResourceFromNSAttributedString.mm
214     editing/cocoa/WebArchiveResourceWebResourceHandler.mm
215     editing/cocoa/WebContentReaderCocoa.mm
216
217     editing/ios/AutofillElements.cpp
218
219     editing/mac/AlternativeTextUIController.mm
220     editing/mac/DictionaryLookup.mm
221     editing/mac/EditorMac.mm
222     editing/mac/FrameSelectionMac.mm
223     editing/mac/TextAlternativeWithRange.mm
224     editing/mac/TextUndoInsertionMarkupMac.mm
225     editing/mac/WebContentReaderMac.mm
226
227     fileapi/FileCocoa.mm
228
229     html/HTMLSlotElement.cpp
230
231     html/shadow/ImageControlsRootElement.cpp
232     html/shadow/YouTubeEmbedShadowElement.cpp
233
234     html/shadow/mac/ImageControlsButtonElementMac.cpp
235     html/shadow/mac/ImageControlsRootElementMac.cpp
236
237     history/mac/HistoryItemMac.mm
238
239     loader/ResourceLoadInfo.cpp
240
241     loader/archive/cf/LegacyWebArchive.cpp
242     loader/archive/cf/LegacyWebArchiveMac.mm
243
244     loader/cocoa/DiskCacheMonitorCocoa.mm
245     loader/cocoa/SubresourceLoaderCocoa.mm
246
247     loader/cf/ResourceLoaderCFNet.cpp
248
249     loader/mac/DocumentLoaderMac.cpp
250     loader/mac/LoaderNSURLExtras.mm
251     loader/mac/ResourceLoaderMac.mm
252
253     page/CaptionUserPreferencesMediaAF.cpp
254     page/PageDebuggable.cpp
255
256     page/cocoa/MemoryReleaseCocoa.mm
257     page/cocoa/PerformanceLoggingCocoa.mm
258     page/cocoa/ResourceUsageOverlayCocoa.mm
259     page/cocoa/ResourceUsageThreadCocoa.mm
260     page/cocoa/SettingsCocoa.mm
261     page/cocoa/UserAgent.mm
262
263     page/mac/ChromeMac.mm
264     page/mac/DragControllerMac.mm
265     page/mac/EventHandlerMac.mm
266     page/mac/PageMac.mm
267     page/mac/ServicesOverlayController.mm
268     page/mac/TextIndicatorWindow.mm
269     page/mac/UserAgentMac.mm
270     page/mac/WheelEventDeltaFilterMac.mm
271
272     page/scrolling/AsyncScrollingCoordinator.cpp
273     page/scrolling/ScrollingMomentumCalculator.cpp
274
275     page/scrolling/cocoa/ScrollingStateNode.mm
276
277     page/scrolling/mac/ScrollingCoordinatorMac.mm
278     page/scrolling/mac/ScrollingMomentumCalculatorMac.mm
279     page/scrolling/mac/ScrollingStateFrameScrollingNodeMac.mm
280     page/scrolling/mac/ScrollingThreadMac.mm
281     page/scrolling/mac/ScrollingTreeFixedNode.mm
282     page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm
283     page/scrolling/mac/ScrollingTreeMac.cpp
284     page/scrolling/mac/ScrollingTreeStickyNode.mm
285
286     platform/CPUMonitor.cpp
287     platform/LocalizedStrings.cpp
288     platform/ScrollableArea.cpp
289
290     platform/audio/AudioSession.cpp
291
292     platform/audio/cocoa/MediaSessionManagerCocoa.cpp
293
294     platform/audio/mac/CAAudioStreamDescription.cpp
295
296     platform/audio/mac/AudioBusMac.mm
297     platform/audio/mac/AudioDestinationMac.cpp
298     platform/audio/mac/AudioFileReaderMac.cpp
299     platform/audio/mac/AudioHardwareListenerMac.cpp
300     platform/audio/mac/AudioSessionMac.cpp
301     platform/audio/mac/CARingBuffer.cpp
302     platform/audio/mac/FFTFrameMac.cpp
303     platform/audio/mac/MediaSessionManagerMac.mm
304
305     platform/cf/CFURLExtras.cpp
306     platform/cf/CoreMediaSoftLink.cpp
307     platform/cf/FileSystemCF.cpp
308     platform/cf/KeyedDecoderCF.cpp
309     platform/cf/KeyedEncoderCF.cpp
310     platform/cf/MainThreadSharedTimerCF.cpp
311     platform/cf/MediaAccessibilitySoftLink.cpp
312     platform/cf/RunLoopObserver.cpp
313     platform/cf/SharedBufferCF.cpp
314     platform/cf/URLCF.cpp
315
316     platform/cocoa/ContentFilterUnblockHandlerCocoa.mm
317     platform/cocoa/CoreVideoSoftLink.cpp
318     platform/cocoa/FileMonitorCocoa.mm
319     platform/cocoa/FileSystemCocoa.mm
320     platform/cocoa/KeyEventCocoa.mm
321     platform/cocoa/LocalizedStringsCocoa.mm
322     platform/cocoa/MIMETypeRegistryCocoa.mm
323     platform/cocoa/MachSendRight.cpp
324     platform/cocoa/NetworkExtensionContentFilter.mm
325     platform/cocoa/ParentalControlsContentFilter.mm
326     platform/cocoa/PasteboardCocoa.mm
327     platform/cocoa/RuntimeApplicationChecksCocoa.mm
328     platform/cocoa/ScrollController.mm
329     platform/cocoa/ScrollSnapAnimatorState.mm
330     platform/cocoa/SearchPopupMenuCocoa.mm
331     platform/cocoa/SharedBufferCocoa.mm
332     platform/cocoa/SystemVersion.mm
333     platform/cocoa/TelephoneNumberDetectorCocoa.cpp
334     platform/cocoa/ThemeCocoa.mm
335     platform/cocoa/VideoToolboxSoftLink.cpp
336     platform/cocoa/WebCoreNSErrorExtras.mm
337
338     platform/gamepad/mac/HIDGamepad.cpp
339     platform/gamepad/mac/HIDGamepadProvider.cpp
340
341     platform/graphics/DisplayRefreshMonitor.cpp
342     platform/graphics/DisplayRefreshMonitorManager.cpp
343     platform/graphics/FourCC.cpp
344
345     platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm
346     platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm
347     platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm
348     platform/graphics/avfoundation/InbandMetadataTextTrackPrivateAVF.cpp
349     platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp
350     platform/graphics/avfoundation/MediaPlaybackTargetMac.mm
351     platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp
352     platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.mm
353
354     platform/graphics/avfoundation/objc/AVAssetTrackUtilities.mm
355     platform/graphics/avfoundation/objc/AVFoundationMIMETypeCache.mm
356     platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm
357     platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp
358     platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm
359     platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm
360     platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm
361     platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm
362     platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm
363     platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm
364     platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm
365     platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm
366     platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
367     platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm
368     platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm
369     platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm
370     platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp
371     platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm
372     platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm
373
374     platform/graphics/ca/GraphicsLayerCA.cpp
375     platform/graphics/ca/LayerFlushScheduler.cpp
376     platform/graphics/ca/LayerPool.cpp
377     platform/graphics/ca/PlatformCAAnimation.cpp
378     platform/graphics/ca/PlatformCALayer.cpp
379     platform/graphics/ca/TileController.cpp
380     platform/graphics/ca/TileCoverageMap.cpp
381     platform/graphics/ca/TileGrid.cpp
382     platform/graphics/ca/TransformationMatrixCA.cpp
383
384     platform/graphics/ca/cocoa/LayerFlushSchedulerMac.cpp
385     platform/graphics/ca/cocoa/PlatformCAAnimationCocoa.mm
386     platform/graphics/ca/cocoa/PlatformCAFiltersCocoa.mm
387     platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm
388     platform/graphics/ca/cocoa/WebSystemBackdropLayer.mm
389     platform/graphics/ca/cocoa/WebTiledBackingLayer.mm
390
391     platform/graphics/cg/ColorCG.cpp
392     platform/graphics/cg/FloatPointCG.cpp
393     platform/graphics/cg/FloatRectCG.cpp
394     platform/graphics/cg/FloatSizeCG.cpp
395     platform/graphics/cg/GradientCG.cpp
396     platform/graphics/cg/GraphicsContext3DCG.cpp
397     platform/graphics/cg/GraphicsContextCG.cpp
398     platform/graphics/cg/IOSurfacePool.cpp
399     platform/graphics/cg/ImageBufferCG.cpp
400     platform/graphics/cg/ImageBufferDataCG.cpp
401     platform/graphics/cg/ImageCG.cpp
402     platform/graphics/cg/ImageDecoderCG.cpp
403     platform/graphics/cg/ImageSourceCGMac.mm
404     platform/graphics/cg/IntPointCG.cpp
405     platform/graphics/cg/IntRectCG.cpp
406     platform/graphics/cg/IntSizeCG.cpp
407     platform/graphics/cg/NativeImageCG.cpp
408     platform/graphics/cg/PDFDocumentImage.cpp
409     platform/graphics/cg/PathCG.cpp
410     platform/graphics/cg/PatternCG.cpp
411     platform/graphics/cg/SubimageCacheWithTimer.cpp
412     platform/graphics/cg/TransformationMatrixCG.cpp
413     platform/graphics/cg/UTIRegistry.cpp
414
415     platform/graphics/cocoa/GPUBufferMetal.mm
416     platform/graphics/cocoa/GPUCommandBufferMetal.mm
417     platform/graphics/cocoa/GPUCommandQueueMetal.mm
418     platform/graphics/cocoa/GPUComputeCommandEncoderMetal.mm
419     platform/graphics/cocoa/GPUComputePipelineStateMetal.mm
420     platform/graphics/cocoa/GPUDepthStencilDescriptorMetal.mm
421     platform/graphics/cocoa/GPUDepthStencilStateMetal.mm
422     platform/graphics/cocoa/GPUDeviceMetal.mm
423     platform/graphics/cocoa/GPUDrawableMetal.mm
424     platform/graphics/cocoa/GPUFunctionMetal.mm
425     platform/graphics/cocoa/GPULibraryMetal.mm
426     platform/graphics/cocoa/GPURenderCommandEncoderMetal.mm
427     platform/graphics/cocoa/GPURenderPassAttachmentDescriptorMetal.mm
428     platform/graphics/cocoa/GPURenderPassColorAttachmentDescriptorMetal.mm
429     platform/graphics/cocoa/GPURenderPassDepthAttachmentDescriptorMetal.mm
430     platform/graphics/cocoa/GPURenderPassDescriptorMetal.mm
431     platform/graphics/cocoa/GPURenderPipelineColorAttachmentDescriptorMetal.mm
432     platform/graphics/cocoa/GPURenderPipelineDescriptorMetal.mm
433     platform/graphics/cocoa/GPURenderPipelineStateMetal.mm
434     platform/graphics/cocoa/GPUTextureDescriptorMetal.mm
435     platform/graphics/cocoa/GPUTextureMetal.mm
436     platform/graphics/cocoa/GraphicsContext3DCocoa.mm
437     platform/graphics/cocoa/GraphicsContextCocoa.mm
438     platform/graphics/cocoa/FontCacheCoreText.cpp
439     platform/graphics/cocoa/FontCascadeCocoa.mm
440     platform/graphics/cocoa/FontCocoa.mm
441     platform/graphics/cocoa/FontDescriptionCocoa.cpp
442     platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp
443     platform/graphics/cocoa/FontPlatformDataCocoa.mm
444     platform/graphics/cocoa/IOSurface.mm
445     platform/graphics/cocoa/IOSurfacePoolCocoa.mm
446     platform/graphics/cocoa/WebActionDisablingCALayerDelegate.mm
447     platform/graphics/cocoa/WebCoreCALayerExtras.mm
448     platform/graphics/cocoa/WebCoreDecompressionSession.mm
449     platform/graphics/cocoa/WebGLLayer.mm
450     platform/graphics/cocoa/WebGPULayer.mm
451
452     platform/graphics/cv/PixelBufferConformerCV.cpp
453     platform/graphics/cv/TextureCacheCV.mm
454     platform/graphics/cv/VideoTextureCopierCV.cpp
455
456     platform/graphics/gpu/Texture.cpp
457     platform/graphics/gpu/TilingData.cpp
458
459     platform/graphics/mac/ColorMac.mm
460     platform/graphics/mac/ComplexTextControllerCoreText.mm
461     platform/graphics/mac/DisplayRefreshMonitorMac.cpp
462     platform/graphics/mac/FloatPointMac.mm
463     platform/graphics/mac/FloatRectMac.mm
464     platform/graphics/mac/FloatSizeMac.mm
465     platform/graphics/mac/FontCacheMac.mm
466     platform/graphics/mac/FontCustomPlatformData.cpp
467     platform/graphics/mac/GlyphPageMac.cpp
468     platform/graphics/mac/IconMac.mm
469     platform/graphics/mac/ImageMac.mm
470     platform/graphics/mac/IntPointMac.mm
471     platform/graphics/mac/IntRectMac.mm
472     platform/graphics/mac/IntSizeMac.mm
473     platform/graphics/mac/MediaPlayerPrivateQTKit.mm
474     platform/graphics/mac/MediaTimeQTKit.mm
475     platform/graphics/mac/PDFDocumentImageMac.mm
476     platform/graphics/mac/SimpleFontDataCoreText.cpp
477     platform/graphics/mac/WebLayer.mm
478
479     platform/graphics/opengl/Extensions3DOpenGL.cpp
480     platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
481     platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
482     platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
483     platform/graphics/opengl/TemporaryOpenGLSetting.cpp
484
485     platform/graphics/opentype/OpenTypeCG.cpp
486     platform/graphics/opentype/OpenTypeMathData.cpp
487
488     platform/mac/BlacklistUpdater.mm
489     platform/mac/CursorMac.mm
490     platform/mac/DragDataMac.mm
491     platform/mac/DragImageMac.mm
492     platform/mac/EventLoopMac.mm
493     platform/mac/FileSystemMac.mm
494     platform/mac/KeyEventMac.mm
495     platform/mac/LocalCurrentGraphicsContext.mm
496     platform/mac/LoggingMac.mm
497     platform/mac/MediaRemoteSoftLink.cpp
498     platform/mac/NSScrollerImpDetails.mm
499     platform/mac/PasteboardMac.mm
500     platform/mac/PasteboardWriter.mm
501     platform/mac/PlatformEventFactoryMac.mm
502     platform/mac/PlatformPasteboardMac.mm
503     platform/mac/PlatformScreenMac.mm
504     platform/mac/PlatformSpeechSynthesizerMac.mm
505     platform/mac/PluginBlacklist.mm
506     platform/mac/PowerObserverMac.cpp
507     platform/mac/PublicSuffixMac.mm
508     platform/mac/RemoteCommandListenerMac.mm
509     platform/mac/SSLKeyGeneratorMac.mm
510     platform/mac/ScrollAnimatorMac.mm
511     platform/mac/ScrollViewMac.mm
512     platform/mac/ScrollbarThemeMac.mm
513     platform/mac/SerializedPlatformRepresentationMac.mm
514     platform/mac/StringUtilities.mm
515     platform/mac/SuddenTermination.mm
516     platform/mac/ThemeMac.mm
517     platform/mac/ThreadCheck.mm
518     platform/mac/URLMac.mm
519     platform/mac/UserActivityMac.mm
520     platform/mac/ValidationBubbleMac.mm
521     platform/mac/WebCoreFullScreenPlaceholderView.mm
522     platform/mac/WebCoreFullScreenWarningView.mm
523     platform/mac/WebCoreFullScreenWindow.mm
524     platform/mac/WebCoreNSStringExtras.mm
525     platform/mac/WebCoreNSURLExtras.mm
526     platform/mac/WebCoreObjCExtras.mm
527     platform/mac/WebCoreSystemInterface.mm
528     platform/mac/WebGLBlacklist.mm
529     platform/mac/WebNSAttributedStringExtras.mm
530     platform/mac/WebVideoFullscreenController.mm
531     platform/mac/WebVideoFullscreenHUDWindowController.mm
532     platform/mac/WebWindowAnimation.mm
533     platform/mac/WidgetMac.mm
534
535     platform/mediastream/mac/MockRealtimeVideoSourceMac.mm
536
537     platform/network/cf/AuthenticationCF.cpp
538     platform/network/cf/CookieJarCFNet.cpp
539     platform/network/cf/CookieStorageCFNet.cpp
540     platform/network/cf/CredentialStorageCFNet.cpp
541     platform/network/cf/DNSCFNet.cpp
542     platform/network/cf/FormDataStreamCFNet.cpp
543     platform/network/cf/LoaderRunLoopCF.cpp
544     platform/network/cf/NetworkStorageSessionCFNet.cpp
545     platform/network/cf/ProxyServerCFNet.cpp
546     platform/network/cf/ResourceErrorCF.cpp
547     platform/network/cf/ResourceRequestCFNet.cpp
548     platform/network/cf/ResourceResponseCFNet.cpp
549     platform/network/cf/SocketStreamHandleImplCFNet.cpp
550     platform/network/cf/SynchronousLoaderClientCFNet.cpp
551     platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp
552
553     platform/network/cocoa/CookieCocoa.mm
554     platform/network/cocoa/CookieStorageObserver.mm
555     platform/network/cocoa/CredentialCocoa.mm
556     platform/network/cocoa/NetworkLoadMetrics.mm
557     platform/network/cocoa/NetworkStorageSessionCocoa.mm
558     platform/network/cocoa/ProtectionSpaceCocoa.mm
559     platform/network/cocoa/ResourceRequestCocoa.mm
560     platform/network/cocoa/ResourceResponseCocoa.mm
561     platform/network/cocoa/WebCoreNSURLSession.mm
562
563     platform/network/mac/AuthenticationMac.mm
564     platform/network/mac/BlobDataFileReferenceMac.mm
565     platform/network/mac/CertificateInfoMac.mm
566     platform/network/mac/CookieJarMac.mm
567     platform/network/mac/CookieStorageMac.mm
568     platform/network/mac/CredentialStorageMac.mm
569     platform/network/mac/FormDataStreamMac.mm
570     platform/network/mac/NetworkStateNotifierMac.cpp
571     platform/network/mac/ResourceErrorMac.mm
572     platform/network/mac/ResourceHandleMac.mm
573     platform/network/mac/SynchronousLoaderClient.mm
574     platform/network/mac/UTIUtilities.mm
575     platform/network/mac/WebCoreResourceHandleAsDelegate.mm
576     platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm
577     platform/network/mac/WebCoreURLResponse.mm
578
579     platform/posix/FileSystemPOSIX.cpp
580
581     platform/text/cf/HyphenationCF.cpp
582
583     platform/text/mac/LocaleMac.mm
584     platform/text/mac/TextBoundaries.mm
585     platform/text/mac/TextCodecMac.cpp
586     platform/text/mac/TextEncodingRegistryMac.mm
587
588     rendering/RenderThemeCocoa.mm
589     rendering/RenderThemeMac.mm
590     rendering/TextAutoSizing.cpp
591 )
592
593 # FIXME: We do not need everything from all of these directories.
594 # Move some to WebCore_FORWARDING_HEADERS_FILES once people start actually maintaining this.
595 set(WebCore_FORWARDING_HEADERS_DIRECTORIES
596     accessibility
597     bridge
598     contentextensions
599     crypto
600     css
601     dom
602     editing
603     fileapi
604     history
605     html
606     inspector
607     loader
608     page
609     platform
610     plugins
611     rendering
612     replay
613     storage
614     style
615     svg
616     workers
617
618     Modules/applepay
619     Modules/cache
620     Modules/geolocation
621     Modules/indexeddb
622     Modules/mediastream
623     Modules/notifications
624     Modules/webdatabase
625     Modules/websockets
626
627     Modules/indexeddb/client
628     Modules/indexeddb/shared
629     Modules/indexeddb/server
630
631     bindings/js
632
633     bridge/objc
634     bridge/jsc
635
636     css/parser
637
638     editing/cocoa
639     editing/mac
640     editing/ios
641
642     html/canvas
643     html/forms
644     html/parser
645     html/shadow
646
647     loader/appcache
648     loader/archive
649     loader/cache
650     loader/cocoa
651
652     loader/archive/cf
653
654     page/animation
655     page/cocoa
656     page/csp
657     page/mac
658     page/scrolling
659
660     page/scrolling/mac
661
662     platform/animation
663     platform/audio
664     platform/cf
665     platform/cocoa
666     platform/graphics
667     platform/mac
668     platform/mediastream
669     platform/mock
670     platform/network
671     platform/sql
672     platform/text
673
674     platform/audio/cocoa
675
676     platform/gamepad/cocoa
677     platform/gamepad/mac
678
679     platform/graphics/ca
680     platform/graphics/cocoa
681     platform/graphics/cg
682     platform/graphics/filters
683     platform/graphics/opentype
684     platform/graphics/mac
685     platform/graphics/transforms
686
687     platform/graphics/ca/cocoa
688
689     platform/mediastream/libwebrtc
690
691     platform/network/cf
692     platform/network/cocoa
693     platform/network/mac
694
695     platform/spi/cf
696     platform/spi/cg
697     platform/spi/cocoa
698     platform/spi/mac
699
700     rendering/line
701     rendering/style
702
703     svg/graphics
704     svg/properties
705
706     workers/service
707
708     workers/service/server
709
710     xml
711 )
712
713 set(WebCore_FORWARDING_HEADERS_FILES
714     Modules/webdatabase/DatabaseDetails.h
715
716     bridge/IdentifierRep.h
717     bridge/npruntime_impl.h
718     bridge/npruntime_internal.h
719
720     contentextensions/CompiledContentExtension.h
721
722     editing/EditAction.h
723     editing/EditingBehaviorTypes.h
724     editing/EditingBoundary.h
725     editing/FindOptions.h
726     editing/FrameSelection.h
727     editing/TextAffinity.h
728
729     editing/mac/TextAlternativeWithRange.h
730
731     history/HistoryItem.h
732     history/PageCache.h
733
734     html/HTMLMediaElement.h
735
736     loader/appcache/ApplicationCacheStorage.h
737
738     loader/icon/IconDatabase.h
739     loader/icon/IconDatabaseBase.h
740     loader/icon/IconDatabaseClient.h
741
742     loader/mac/LoaderNSURLExtras.h
743
744     platform/PlatformExportMacros.h
745
746     platform/audio/AudioHardwareListener.h
747
748     platform/cf/RunLoopObserver.h
749
750     platform/cocoa/MachSendRight.h
751     platform/cocoa/SoftLinking.h
752
753     platform/graphics/cocoa/IOSurface.h
754
755     platform/graphics/transforms/AffineTransform.h
756
757     platform/mac/WebCoreSystemInterface.h
758
759     platform/network/cf/CertificateInfo.h
760     platform/network/cf/ResourceResponse.h
761
762     platform/network/mac/AuthenticationMac.h
763
764     platform/sql/SQLiteDatabase.h
765
766     rendering/style/RenderStyleConstants.h
767 )
768
769 list(APPEND WebCore_IDL_FILES
770     Modules/plugins/QuickTimePluginReplacement.idl
771 )
772
773 WEBKIT_CREATE_FORWARDING_HEADERS(WebCore DIRECTORIES ${WebCore_FORWARDING_HEADERS_DIRECTORIES} FILES ${WebCore_FORWARDING_HEADERS_FILES})
774
775 set(FEATURE_DEFINES_OBJECTIVE_C "LANGUAGE_OBJECTIVE_C=1 ${FEATURE_DEFINES_WITH_SPACE_SEPARATOR}")
776 set(ADDITIONAL_BINDINGS_DEPENDENCIES
777     ${WINDOW_CONSTRUCTORS_FILE}
778     ${WORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
779     ${DEDICATEDWORKERGLOBALSCOPE_CONSTRUCTORS_FILE}
780 )
781
782 list(APPEND WebCoreTestSupport_LIBRARIES PRIVATE WebCore)
783 list(APPEND WebCoreTestSupport_SOURCES
784     testing/Internals.mm
785     testing/MockContentFilter.cpp
786     testing/MockContentFilterSettings.cpp
787     testing/MockPreviewLoaderClient.cpp
788
789     testing/cocoa/WebArchiveDumpSupport.mm
790 )
791
792 set(CMAKE_SHARED_LINKER_FLAGS ${CMAKE_SHARED_LINKER_FLAGS} "-compatibility_version 1 -current_version ${WEBKIT_MAC_VERSION}")