[EFL] Add UserAgentEFl.cpp|h
[WebKit-https.git] / Source / WebCore / PlatformEfl.cmake
1 list(APPEND WebCore_INCLUDE_DIRECTORIES
2     "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}"
3     "${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/inspector"
4     "${JAVASCRIPTCORE_DIR}"
5     "${JAVASCRIPTCORE_DIR}/ForwardingHeaders"
6     "${JAVASCRIPTCORE_DIR}/API"
7     "${JAVASCRIPTCORE_DIR}/assembler"
8     "${JAVASCRIPTCORE_DIR}/bytecode"
9     "${JAVASCRIPTCORE_DIR}/bytecompiler"
10     "${JAVASCRIPTCORE_DIR}/dfg"
11     "${JAVASCRIPTCORE_DIR}/disassembler"
12     "${JAVASCRIPTCORE_DIR}/heap"
13     "${JAVASCRIPTCORE_DIR}/debugger"
14     "${JAVASCRIPTCORE_DIR}/interpreter"
15     "${JAVASCRIPTCORE_DIR}/jit"
16     "${JAVASCRIPTCORE_DIR}/llint"
17     "${JAVASCRIPTCORE_DIR}/parser"
18     "${JAVASCRIPTCORE_DIR}/profiler"
19     "${JAVASCRIPTCORE_DIR}/runtime"
20     "${JAVASCRIPTCORE_DIR}/yarr"
21     "${THIRDPARTY_DIR}/ANGLE/"
22     "${THIRDPARTY_DIR}/ANGLE/include/KHR"
23     "${WEBCORE_DIR}/editing/atk"
24     "${WEBCORE_DIR}/page/efl"
25     "${WEBCORE_DIR}/page/scrolling/coordinatedgraphics"
26     "${WEBCORE_DIR}/platform/cairo"
27     "${WEBCORE_DIR}/platform/efl"
28     "${WEBCORE_DIR}/platform/geoclue"
29     "${WEBCORE_DIR}/platform/graphics/cairo"
30     "${WEBCORE_DIR}/platform/graphics/efl"
31     "${WEBCORE_DIR}/platform/graphics/freetype"
32     "${WEBCORE_DIR}/platform/graphics/harfbuzz/"
33     "${WEBCORE_DIR}/platform/graphics/harfbuzz/ng"
34     "${WEBCORE_DIR}/platform/graphics/opengl"
35     "${WEBCORE_DIR}/platform/graphics/opentype"
36     "${WEBCORE_DIR}/platform/graphics/surfaces"
37     "${WEBCORE_DIR}/platform/graphics/surfaces/efl"
38     "${WEBCORE_DIR}/platform/graphics/surfaces/glx"
39     "${WEBCORE_DIR}/platform/graphics/texmap"
40     "${WEBCORE_DIR}/platform/graphics/texmap/coordinated"
41     "${WEBCORE_DIR}/platform/graphics/x11"
42     "${WEBCORE_DIR}/platform/linux"
43     "${WEBCORE_DIR}/platform/mediastream/openwebrtc"
44     "${WEBCORE_DIR}/platform/mock/mediasource"
45     "${WEBCORE_DIR}/platform/network/soup"
46     "${WEBCORE_DIR}/platform/text/efl"
47     "${WEBCORE_DIR}/plugins/efl"
48     "${WTF_DIR}"
49     "${WTF_DIR}/wtf/efl"
50 )
51
52 list(APPEND WebCore_SOURCES
53     accessibility/atk/AXObjectCacheAtk.cpp
54     accessibility/atk/AccessibilityObjectAtk.cpp
55     accessibility/atk/WebKitAccessibleHyperlink.cpp
56     accessibility/atk/WebKitAccessibleInterfaceAction.cpp
57     accessibility/atk/WebKitAccessibleInterfaceComponent.cpp
58     accessibility/atk/WebKitAccessibleInterfaceDocument.cpp
59     accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp
60     accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp
61     accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp
62     accessibility/atk/WebKitAccessibleInterfaceImage.cpp
63     accessibility/atk/WebKitAccessibleInterfaceSelection.cpp
64     accessibility/atk/WebKitAccessibleInterfaceTable.cpp
65     accessibility/atk/WebKitAccessibleInterfaceTableCell.cpp
66     accessibility/atk/WebKitAccessibleInterfaceText.cpp
67     accessibility/atk/WebKitAccessibleInterfaceValue.cpp
68     accessibility/atk/WebKitAccessibleUtil.cpp
69     accessibility/atk/WebKitAccessibleWrapperAtk.cpp
70
71     editing/SmartReplace.cpp
72
73     editing/atk/FrameSelectionAtk.cpp
74
75     editing/efl/EditorEfl.cpp
76
77     html/shadow/MediaControlsApple.cpp
78
79     loader/soup/CachedRawResourceSoup.cpp
80     loader/soup/SubresourceLoaderSoup.cpp
81
82     page/efl/DragControllerEfl.cpp
83     page/efl/EventHandlerEfl.cpp
84
85     page/scrolling/AxisScrollSnapOffsets.cpp
86
87     page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp
88     page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp
89
90     platform/ContextMenuItemNone.cpp
91     platform/ContextMenuNone.cpp
92     platform/KillRingNone.cpp
93
94     platform/audio/efl/AudioBusEfl.cpp
95
96     platform/audio/gstreamer/AudioDestinationGStreamer.cpp
97     platform/audio/gstreamer/AudioFileReaderGStreamer.cpp
98     platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp
99     platform/audio/gstreamer/FFTFrameGStreamer.cpp
100     platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
101
102     platform/efl/BatteryProviderEfl.cpp
103     platform/efl/CursorEfl.cpp
104     platform/efl/DragDataEfl.cpp
105     platform/efl/DragImageEfl.cpp
106     platform/efl/EflInspectorUtilities.cpp
107     platform/efl/EflKeyboardUtilities.cpp
108     platform/efl/EflScreenUtilities.cpp
109     platform/efl/ErrorsEfl.cpp
110     platform/efl/EventLoopEfl.cpp
111     platform/efl/FileSystemEfl.cpp
112     platform/efl/GamepadsEfl.cpp
113     platform/efl/LanguageEfl.cpp
114     platform/efl/LocalizedStringsEfl.cpp
115     platform/efl/LoggingEfl.cpp
116     platform/efl/MIMETypeRegistryEfl.cpp
117     platform/efl/MainThreadSharedTimerEfl.cpp
118     platform/efl/PasteboardEfl.cpp
119     platform/efl/PlatformKeyboardEventEfl.cpp
120     platform/efl/PlatformMouseEventEfl.cpp
121     platform/efl/PlatformScreenEfl.cpp
122     platform/efl/PlatformWheelEventEfl.cpp
123     platform/efl/ScrollbarThemeEfl.cpp
124     platform/efl/SoundEfl.cpp
125     platform/efl/TemporaryLinkStubs.cpp
126     platform/efl/UserAgentEfl.cpp
127     platform/efl/WidgetEfl.cpp
128
129     platform/geoclue/GeolocationProviderGeoclue1.cpp
130     platform/geoclue/GeolocationProviderGeoclue2.cpp
131
132     platform/glib/KeyedDecoderGlib.cpp
133     platform/glib/KeyedEncoderGlib.cpp
134
135     platform/graphics/ImageSource.cpp
136     platform/graphics/PlatformDisplay.cpp
137     platform/graphics/WOFFFileFormat.cpp
138
139     platform/graphics/cairo/BackingStoreBackendCairoImpl.cpp
140     platform/graphics/cairo/BitmapImageCairo.cpp
141     platform/graphics/cairo/CairoUtilities.cpp
142     platform/graphics/cairo/FontCairo.cpp
143     platform/graphics/cairo/FontCairoHarfbuzzNG.cpp
144     platform/graphics/cairo/GradientCairo.cpp
145     platform/graphics/cairo/GraphicsContextCairo.cpp
146     platform/graphics/cairo/ImageBufferCairo.cpp
147     platform/graphics/cairo/ImageCairo.cpp
148     platform/graphics/cairo/IntRectCairo.cpp
149     platform/graphics/cairo/PathCairo.cpp
150     platform/graphics/cairo/PatternCairo.cpp
151     platform/graphics/cairo/PlatformContextCairo.cpp
152     platform/graphics/cairo/PlatformPathCairo.cpp
153     platform/graphics/cairo/RefPtrCairo.cpp
154     platform/graphics/cairo/TransformationMatrixCairo.cpp
155
156     platform/graphics/efl/CairoUtilitiesEfl.cpp
157     platform/graphics/efl/EvasGLContext.cpp
158     platform/graphics/efl/EvasGLSurface.cpp
159     platform/graphics/efl/GraphicsContext3DEfl.cpp
160     platform/graphics/efl/GraphicsContext3DPrivate.cpp
161     platform/graphics/efl/IconEfl.cpp
162     platform/graphics/efl/ImageBufferEfl.cpp
163     platform/graphics/efl/ImageEfl.cpp
164     platform/graphics/efl/IntPointEfl.cpp
165     platform/graphics/efl/IntRectEfl.cpp
166
167     platform/graphics/freetype/FontCacheFreeType.cpp
168     platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp
169     platform/graphics/freetype/FontPlatformDataFreeType.cpp
170     platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp
171     platform/graphics/freetype/SimpleFontDataFreeType.cpp
172
173     platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp
174     platform/graphics/gstreamer/GRefPtrGStreamer.cpp
175     platform/graphics/gstreamer/GStreamerUtilities.cpp
176     platform/graphics/gstreamer/ImageGStreamerCairo.cpp
177     platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
178     platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
179     platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
180     platform/graphics/gstreamer/MediaSourceGStreamer.cpp
181     platform/graphics/gstreamer/SourceBufferPrivateGStreamer.cpp
182     platform/graphics/gstreamer/TextCombinerGStreamer.cpp
183     platform/graphics/gstreamer/TextSinkGStreamer.cpp
184     platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
185     platform/graphics/gstreamer/VideoSinkGStreamer.cpp
186     platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp
187     platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp
188     platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
189
190     platform/graphics/harfbuzz/HarfBuzzFace.cpp
191     platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp
192     platform/graphics/harfbuzz/HarfBuzzShaper.cpp
193
194     platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
195     platform/graphics/opengl/GLPlatformContext.cpp
196     platform/graphics/opengl/GLPlatformSurface.cpp
197     platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
198     platform/graphics/opengl/TemporaryOpenGLSetting.cpp
199
200     platform/graphics/opentype/OpenTypeVerticalData.cpp
201
202     platform/graphics/surfaces/GLTransportSurface.cpp
203     platform/graphics/surfaces/GraphicsSurface.cpp
204
205     platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp
206
207     platform/graphics/surfaces/glx/X11Helper.cpp
208
209     platform/graphics/texmap/BitmapTexture.cpp
210     platform/graphics/texmap/BitmapTextureGL.cpp
211     platform/graphics/texmap/BitmapTexturePool.cpp
212     platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
213     platform/graphics/texmap/TextureMapperGL.cpp
214     platform/graphics/texmap/TextureMapperShaderProgram.cpp
215
216     platform/graphics/texmap/coordinated/AreaAllocator.cpp
217     platform/graphics/texmap/coordinated/CompositingCoordinator.cpp
218     platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp
219     platform/graphics/texmap/coordinated/CoordinatedImageBacking.cpp
220     platform/graphics/texmap/coordinated/CoordinatedSurface.cpp
221     platform/graphics/texmap/coordinated/Tile.cpp
222     platform/graphics/texmap/coordinated/TiledBackingStore.cpp
223     platform/graphics/texmap/coordinated/UpdateAtlas.cpp
224
225     platform/graphics/x11/PlatformDisplayX11.cpp
226     platform/graphics/x11/XUniqueResource.cpp
227
228     platform/image-encoders/JPEGImageEncoder.cpp
229
230     platform/image-decoders/ImageDecoder.cpp
231
232     platform/image-decoders/bmp/BMPImageDecoder.cpp
233     platform/image-decoders/bmp/BMPImageReader.cpp
234
235     platform/image-decoders/cairo/ImageDecoderCairo.cpp
236
237     platform/image-decoders/gif/GIFImageDecoder.cpp
238     platform/image-decoders/gif/GIFImageReader.cpp
239
240     platform/image-decoders/ico/ICOImageDecoder.cpp
241
242     platform/image-decoders/jpeg/JPEGImageDecoder.cpp
243
244     platform/image-decoders/png/PNGImageDecoder.cpp
245
246     platform/image-decoders/webp/WEBPImageDecoder.cpp
247
248     platform/linux/GamepadDeviceLinux.cpp
249     platform/linux/MemoryPressureHandlerLinux.cpp
250
251     platform/mediastream/openwebrtc/OpenWebRTCUtilities.cpp
252     platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp
253
254     platform/network/efl/NetworkStateNotifierEfl.cpp
255
256     platform/network/soup/AuthenticationChallengeSoup.cpp
257     platform/network/soup/CertificateInfo.cpp
258     platform/network/soup/CookieJarSoup.cpp
259     platform/network/soup/CookieStorageSoup.cpp
260     platform/network/soup/CredentialStorageSoup.cpp
261     platform/network/soup/DNSSoup.cpp
262     platform/network/soup/NetworkStorageSessionSoup.cpp
263     platform/network/soup/ProxyServerSoup.cpp
264     platform/network/soup/ResourceErrorSoup.cpp
265     platform/network/soup/ResourceHandleSoup.cpp
266     platform/network/soup/ResourceRequestSoup.cpp
267     platform/network/soup/ResourceResponseSoup.cpp
268     platform/network/soup/SocketStreamHandleSoup.cpp
269     platform/network/soup/SoupNetworkSession.cpp
270     platform/network/soup/SynchronousLoaderClientSoup.cpp
271     platform/network/soup/WebKitSoupRequestGeneric.cpp
272
273     platform/posix/FileSystemPOSIX.cpp
274     platform/posix/SharedBufferPOSIX.cpp
275
276     platform/soup/PublicSuffixSoup.cpp
277     platform/soup/SharedBufferSoup.cpp
278     platform/soup/URLSoup.cpp
279
280     platform/text/Hyphenation.cpp
281     platform/text/LocaleICU.cpp
282
283     platform/text/efl/TextBreakIteratorInternalICUEfl.cpp
284
285     platform/text/enchant/TextCheckerEnchant.cpp
286
287     platform/text/hyphen/HyphenationLibHyphen.cpp
288
289     rendering/RenderThemeEfl.cpp
290 )
291
292 if (USE_GEOCLUE2)
293     list(APPEND WebCore_SOURCES
294         ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.c
295     )
296     execute_process(COMMAND pkg-config --variable dbus_interface geoclue-2.0 OUTPUT_VARIABLE GEOCLUE_DBUS_INTERFACE)
297     add_custom_command(
298          OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.c ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface.h
299          COMMAND gdbus-codegen --interface-prefix org.freedesktop.GeoClue2. --c-namespace Geoclue --generate-c-code ${DERIVED_SOURCES_WEBCORE_DIR}/Geoclue2Interface ${GEOCLUE_DBUS_INTERFACE}
300     )
301 endif ()
302
303 if (ENABLE_GAMEPAD_DEPRECATED)
304     # FIXME: GAMEPAD_DEPRECATED is legacy implementation. Need to be removed.
305     list(REMOVE_ITEM WebCore_INCLUDE_DIRECTORIES
306         "${WEBCORE_DIR}/Modules/gamepad"
307     )
308 endif ()
309
310 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
311     ${WEBCORE_DIR}/Modules/mediacontrols/mediaControlsBase.css
312 )
313
314 set(WebCore_USER_AGENT_SCRIPTS
315     ${WEBCORE_DIR}/English.lproj/mediaControlsLocalizedStrings.js
316     ${WEBCORE_DIR}/Modules/mediacontrols/mediaControlsBase.js
317 )
318
319 add_custom_command(
320     OUTPUT ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h
321     MAIN_DEPENDENCY ${WEBKIT_DIR}/scripts/generate-webkitversion.pl
322     DEPENDS ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig
323     COMMAND ${PERL_EXECUTABLE} ${WEBKIT_DIR}/scripts/generate-webkitversion.pl --config ${WEBKIT_DIR}/mac/Configurations/Version.xcconfig --outputDir ${DERIVED_SOURCES_WEBCORE_DIR}
324     VERBATIM)
325 list(APPEND WebCore_SOURCES ${DERIVED_SOURCES_WEBCORE_DIR}/WebKitVersion.h)
326
327 set(WebCore_USER_AGENT_SCRIPTS_DEPENDENCIES ${WEBCORE_DIR}/platform/efl/RenderThemeEfl.cpp)
328
329 list(APPEND WebCore_LIBRARIES
330     ${CAIRO_LIBRARIES}
331     ${ECORE_EVAS_LIBRARIES}
332     ${ECORE_FILE_LIBRARIES}
333     ${ECORE_LIBRARIES}
334     ${ECORE_X_LIBRARIES}
335     ${EDJE_LIBRARIES}
336     ${EEZE_LIBRARIES}
337     ${EINA_LIBRARIES}
338     ${ELDBUS_LIBRARIES}
339     ${EO_LIBRARIES}
340     ${EVAS_LIBRARIES}
341     ${FONTCONFIG_LIBRARIES}
342     ${FREETYPE2_LIBRARIES}
343     ${GEOCLUE_LIBRARIES}
344     ${GLIB_GIO_LIBRARIES}
345     ${GLIB_GOBJECT_LIBRARIES}
346     ${GLIB_LIBRARIES}
347     ${HARFBUZZ_LIBRARIES}
348     ${JPEG_LIBRARIES}
349     ${LIBSOUP_LIBRARIES}
350     ${LIBXML2_LIBRARIES}
351     ${LIBXSLT_LIBRARIES}
352     ${HYPHEN_LIBRARIES}
353     ${PNG_LIBRARIES}
354     ${SQLITE_LIBRARIES}
355     ${WEBP_LIBRARIES}
356     ${X11_X11_LIB}
357     ${ZLIB_LIBRARIES}
358 )
359
360 list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
361     ${CAIRO_INCLUDE_DIRS}
362     ${ECORE_INCLUDE_DIRS}
363     ${ECORE_EVAS_INCLUDE_DIRS}
364     ${ECORE_FILE_INCLUDE_DIRS}
365     ${ECORE_X_INCLUDE_DIRS}
366     ${EO_INCLUDE_DIRS}
367     ${EDJE_INCLUDE_DIRS}
368     ${EEZE_INCLUDE_DIRS}
369     ${EINA_INCLUDE_DIRS}
370     ${ELDBUS_INCLUDE_DIRS}
371     ${EVAS_INCLUDE_DIRS}
372     ${FREETYPE2_INCLUDE_DIRS}
373     ${GEOCLUE_INCLUDE_DIRS}
374     ${GIO_UNIX_INCLUDE_DIRS}
375     ${LIBXML2_INCLUDE_DIR}
376     ${LIBXSLT_INCLUDE_DIR}
377     ${SQLITE_INCLUDE_DIR}
378     ${WEBP_INCLUDE_DIRS}
379     ${GLIB_INCLUDE_DIRS}
380     ${LIBSOUP_INCLUDE_DIRS}
381     ${ZLIB_INCLUDE_DIRS}
382     ${HARFBUZZ_INCLUDE_DIRS}
383 )
384
385 if (ENABLE_MEDIA_STREAM)
386     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
387         ${OPENWEBRTC_INCLUDE_DIRS}
388     )
389     list(APPEND WebCore_LIBRARIES
390         ${OPENWEBRTC_LIBRARIES}
391     )
392 endif ()
393
394 if (ENABLE_VIDEO OR ENABLE_WEB_AUDIO)
395     list(APPEND WebCore_INCLUDE_DIRECTORIES
396         "${WEBCORE_DIR}/platform/graphics/gstreamer"
397     )
398
399     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
400         ${GSTREAMER_INCLUDE_DIRS}
401         ${GSTREAMER_BASE_INCLUDE_DIRS}
402         ${GSTREAMER_APP_INCLUDE_DIRS}
403         ${GSTREAMER_PBUTILS_INCLUDE_DIRS}
404     )
405
406     list(APPEND WebCore_LIBRARIES
407         ${GSTREAMER_APP_LIBRARIES}
408         ${GSTREAMER_BASE_LIBRARIES}
409         ${GSTREAMER_LIBRARIES}
410         ${GSTREAMER_PBUTILS_LIBRARIES}
411         ${GSTREAMER_AUDIO_LIBRARIES}
412     )
413     # Avoiding a GLib deprecation warning due to GStreamer API using deprecated classes.
414     set_source_files_properties(platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp PROPERTIES COMPILE_DEFINITIONS "GLIB_DISABLE_DEPRECATION_WARNINGS=1")
415 endif ()
416
417 if (ENABLE_VIDEO)
418     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
419         ${GSTREAMER_TAG_INCLUDE_DIRS}
420         ${GSTREAMER_VIDEO_INCLUDE_DIRS}
421     )
422     list(APPEND WebCore_LIBRARIES
423         ${GSTREAMER_TAG_LIBRARIES}
424         ${GSTREAMER_VIDEO_LIBRARIES}
425     )
426
427     if (USE_GSTREAMER_MPEGTS)
428         list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
429             ${GSTREAMER_MPEGTS_INCLUDE_DIRS}
430         )
431
432         list(APPEND WebCore_LIBRARIES
433             ${GSTREAMER_MPEGTS_LIBRARIES}
434         )
435     endif ()
436 endif ()
437
438 if (USE_EGL)
439     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
440         "${WEBCORE_DIR}/platform/graphics/surfaces/egl"
441     )
442 endif ()
443
444 if (USE_EGL)
445     list(APPEND WebCore_SOURCES
446         platform/graphics/surfaces/egl/EGLConfigSelector.cpp
447         platform/graphics/surfaces/egl/EGLContext.cpp
448         platform/graphics/surfaces/egl/EGLHelper.cpp
449         platform/graphics/surfaces/egl/EGLSurface.cpp
450         platform/graphics/surfaces/egl/EGLXSurface.cpp
451     )
452 else ()
453     list(APPEND WebCore_SOURCES
454         platform/graphics/surfaces/glx/GLXContext.cpp
455         platform/graphics/surfaces/glx/GLXSurface.cpp
456     )
457 endif ()
458
459 if (USE_OPENGL_ES_2)
460     list(APPEND WebCore_SOURCES
461         platform/graphics/opengl/Extensions3DOpenGLES.cpp
462         platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp
463     )
464 else ()
465     list(APPEND WebCore_SOURCES
466         platform/graphics/OpenGLShims.cpp
467
468         platform/graphics/opengl/Extensions3DOpenGL.cpp
469         platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
470     )
471 endif ()
472
473 if (NOT USE_EGL AND X11_Xcomposite_FOUND AND X11_Xrender_FOUND)
474     list(APPEND WebCore_LIBRARIES
475         ${X11_Xcomposite_LIB}
476         ${X11_Xrender_LIB}
477     )
478 endif ()
479
480 if (ENABLE_WEB_AUDIO)
481     list(APPEND WebCore_INCLUDE_DIRECTORIES
482         "${WEBCORE_DIR}/platform/audio/gstreamer"
483     )
484
485     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
486         ${GSTREAMER_AUDIO_INCLUDE_DIRS}
487         ${GSTREAMER_FFT_INCLUDE_DIRS}
488     )
489     list(APPEND WebCore_LIBRARIES
490         ${GSTREAMER_FFT_LIBRARIES}
491     )
492     set(WEB_AUDIO_DIR ${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/webaudio/resources)
493     file(GLOB WEB_AUDIO_DATA "${WEBCORE_DIR}/platform/audio/resources/*.wav")
494     install(FILES ${WEB_AUDIO_DATA} DESTINATION ${WEB_AUDIO_DIR})
495     add_definitions(-DUNINSTALLED_AUDIO_RESOURCES_DIR="${WEBCORE_DIR}/platform/audio/resources")
496 endif ()
497
498 if (ENABLE_SPELLCHECK)
499     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
500         ${ENCHANT_INCLUDE_DIRS}
501     )
502     list(APPEND WebCore_LIBRARIES
503         ${ENCHANT_LIBRARIES}
504     )
505 endif ()
506
507 if (ENABLE_ACCESSIBILITY)
508     list(APPEND WebCore_INCLUDE_DIRECTORIES
509         "${WEBCORE_DIR}/accessibility/atk"
510     )
511     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
512         ${ATK_INCLUDE_DIRS}
513     )
514     list(APPEND WebCore_LIBRARIES
515         ${ATK_LIBRARIES}
516     )
517 endif ()
518
519 if (ENABLE_SMOOTH_SCROLLING)
520     list(APPEND WebCore_SOURCES
521         platform/ScrollAnimatorNone.cpp
522     )
523 endif ()
524
525 if (ENABLE_SPEECH_SYNTHESIS)
526     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
527         ${ESPEAK_INCLUDE_DIRS}
528     )
529     list(APPEND WebCore_LIBRARIES
530         ${ESPEAK_LIBRARIES}
531     )
532     list(APPEND WebCore_SOURCES
533         platform/efl/PlatformSpeechSynthesisProviderEfl.cpp
534         platform/efl/PlatformSpeechSynthesizerEfl.cpp
535     )
536 endif ()
537
538 if (ENABLE_SUBTLE_CRYPTO)
539     list(APPEND WebCore_SOURCES
540         crypto/CryptoAlgorithm.cpp
541         crypto/CryptoAlgorithmDescriptionBuilder.cpp
542         crypto/CryptoAlgorithmRegistry.cpp
543         crypto/CryptoKey.cpp
544         crypto/CryptoKeyPair.cpp
545         crypto/SubtleCrypto.cpp
546
547         crypto/algorithms/CryptoAlgorithmAES_CBC.cpp
548         crypto/algorithms/CryptoAlgorithmAES_KW.cpp
549         crypto/algorithms/CryptoAlgorithmHMAC.cpp
550         crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp
551         crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp
552         crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp
553         crypto/algorithms/CryptoAlgorithmSHA1.cpp
554         crypto/algorithms/CryptoAlgorithmSHA224.cpp
555         crypto/algorithms/CryptoAlgorithmSHA256.cpp
556         crypto/algorithms/CryptoAlgorithmSHA384.cpp
557         crypto/algorithms/CryptoAlgorithmSHA512.cpp
558
559         crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp
560         crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp
561         crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp
562         crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp
563         crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp
564         crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp
565         crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp
566         crypto/gnutls/CryptoDigestGnuTLS.cpp
567         crypto/gnutls/CryptoKeyRSAGnuTLS.cpp
568         crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp
569
570         crypto/keys/CryptoKeyAES.cpp
571         crypto/keys/CryptoKeyDataOctetSequence.cpp
572         crypto/keys/CryptoKeyDataRSAComponents.cpp
573         crypto/keys/CryptoKeyHMAC.cpp
574         crypto/keys/CryptoKeySerializationRaw.cpp
575     )
576
577     list(APPEND WebCore_SYSTEM_INCLUDE_DIRECTORIES
578         ${GNUTLS_INCLUDE_DIRS}
579     )
580     list(APPEND WebCore_LIBRARIES
581         ${GNUTLS_LIBRARIES}
582     )
583 endif ()
584
585 if (DEVELOPER_MODE)
586     if (USE_LIBHYPHEN AND IS_DIRECTORY ${CMAKE_SOURCE_DIR}/WebKitBuild/DependenciesEFL)
587         add_definitions(-DTEST_HYPHENATAION_PATH=\"${CMAKE_SOURCE_DIR}/WebKitBuild/DependenciesEFL/Root/webkitgtk-test-dicts\")
588     endif ()
589 endif ()