e18bdb526a739455c55be8b32b5c0495a208c5d8
[WebKit-https.git] / Source / WebCore / PlatformEfl.cmake
1 list(APPEND WebCore_INCLUDE_DIRECTORIES
2     "${WEBCORE_DIR}/page/efl"
3     "${WEBCORE_DIR}/platform/cairo"
4     "${WEBCORE_DIR}/platform/efl"
5     "${WEBCORE_DIR}/platform/graphics/cairo"
6     "${WEBCORE_DIR}/platform/graphics/efl"
7     "${WEBCORE_DIR}/platform/graphics/freetype"
8     "${WEBCORE_DIR}/platform/graphics/harfbuzz/"
9     "${WEBCORE_DIR}/platform/graphics/harfbuzz/ng"
10     "${WEBCORE_DIR}/platform/linux"
11     "${WEBCORE_DIR}/platform/mediastream/gstreamer"
12     "${WEBCORE_DIR}/platform/network/soup"
13     "${WEBCORE_DIR}/platform/text/efl"
14     "${WEBCORE_DIR}/plugins/efl"
15 )
16
17 list(APPEND WebCore_SOURCES
18     accessibility/atk/AccessibilityObjectAtk.cpp
19     accessibility/atk/AXObjectCacheAtk.cpp
20     accessibility/atk/WebKitAccessibleHyperlink.cpp
21     accessibility/atk/WebKitAccessibleInterfaceAction.cpp
22     accessibility/atk/WebKitAccessibleInterfaceComponent.cpp
23     accessibility/atk/WebKitAccessibleInterfaceDocument.cpp
24     accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp
25     accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp
26     accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp
27     accessibility/atk/WebKitAccessibleInterfaceImage.cpp
28     accessibility/atk/WebKitAccessibleInterfaceSelection.cpp
29     accessibility/atk/WebKitAccessibleInterfaceTable.cpp
30     accessibility/atk/WebKitAccessibleInterfaceText.cpp
31     accessibility/atk/WebKitAccessibleInterfaceValue.cpp
32     accessibility/atk/WebKitAccessibleUtil.cpp
33     accessibility/atk/WebKitAccessibleWrapperAtk.cpp
34
35     editing/SmartReplaceICU.cpp
36
37     page/efl/DragControllerEfl.cpp
38     page/efl/EventHandlerEfl.cpp
39
40     platform/cairo/WidgetBackingStoreCairo.cpp
41
42     platform/Cursor.cpp
43
44     platform/audio/efl/AudioBusEfl.cpp
45     platform/audio/gstreamer/AudioDestinationGStreamer.cpp
46     platform/audio/gstreamer/AudioFileReaderGStreamer.cpp
47     platform/audio/gstreamer/FFTFrameGStreamer.cpp
48     platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
49
50     platform/efl/AsyncFileSystemEfl.cpp
51     platform/efl/BatteryProviderEfl.cpp
52     platform/efl/ClipboardEfl.cpp
53     platform/efl/ContextMenuEfl.cpp
54     platform/efl/ContextMenuItemEfl.cpp
55     platform/efl/CursorEfl.cpp
56     platform/efl/DragDataEfl.cpp
57     platform/efl/DragImageEfl.cpp
58     platform/efl/EflInspectorUtilities.cpp
59     platform/efl/EflKeyboardUtilities.cpp
60     platform/efl/EflScreenUtilities.cpp
61     platform/efl/ErrorsEfl.cpp
62     platform/efl/EventLoopEfl.cpp
63     platform/efl/FileSystemEfl.cpp
64     platform/efl/GamepadsEfl.cpp
65     platform/efl/KURLEfl.cpp
66     platform/efl/LanguageEfl.cpp
67     platform/efl/LocalizedStringsEfl.cpp
68     platform/efl/LoggingEfl.cpp
69     platform/efl/MIMETypeRegistryEfl.cpp
70     platform/efl/NetworkInfoProviderEfl.cpp
71     platform/efl/PasteboardEfl.cpp
72     platform/efl/PlatformKeyboardEventEfl.cpp
73     platform/efl/PlatformMouseEventEfl.cpp
74     platform/efl/PlatformScreenEfl.cpp
75     platform/efl/PlatformWheelEventEfl.cpp
76     platform/efl/RenderThemeEfl.cpp
77     platform/efl/RunLoopEfl.cpp
78     platform/efl/ScrollbarEfl.cpp
79     platform/efl/ScrollbarThemeEfl.cpp
80     platform/efl/ScrollViewEfl.cpp
81     platform/efl/SharedTimerEfl.cpp
82     platform/efl/SoundEfl.cpp
83     platform/efl/SystemTimeEfl.cpp
84     platform/efl/TemporaryLinkStubs.cpp
85     platform/efl/WidgetEfl.cpp
86
87     platform/graphics/cairo/BitmapImageCairo.cpp
88     platform/graphics/cairo/CairoUtilities.cpp
89     platform/graphics/cairo/FontCairo.cpp
90     platform/graphics/cairo/FontCairoHarfbuzzNG.cpp
91     platform/graphics/cairo/GradientCairo.cpp
92     platform/graphics/cairo/GraphicsContextCairo.cpp
93     platform/graphics/cairo/ImageBufferCairo.cpp
94     platform/graphics/cairo/ImageCairo.cpp
95     platform/graphics/cairo/IntRectCairo.cpp
96     platform/graphics/cairo/NativeImageCairo.cpp
97     platform/graphics/cairo/OwnPtrCairo.cpp
98     platform/graphics/cairo/PathCairo.cpp
99     platform/graphics/cairo/PatternCairo.cpp
100     platform/graphics/cairo/PlatformContextCairo.cpp
101     platform/graphics/cairo/PlatformPathCairo.cpp
102     platform/graphics/cairo/RefPtrCairo.cpp
103     platform/graphics/cairo/TileCairo.cpp
104     platform/graphics/cairo/TiledBackingStoreBackendCairo.cpp
105     platform/graphics/cairo/TransformationMatrixCairo.cpp
106
107     platform/graphics/efl/CairoUtilitiesEfl.cpp
108     platform/graphics/efl/IconEfl.cpp
109     platform/graphics/efl/ImageEfl.cpp
110     platform/graphics/efl/IntPointEfl.cpp
111     platform/graphics/efl/IntRectEfl.cpp
112
113     platform/graphics/freetype/FontCacheFreeType.cpp
114     platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp
115     platform/graphics/freetype/FontPlatformDataFreeType.cpp
116     platform/graphics/freetype/GlyphPageTreeNodeFreeType.cpp
117     platform/graphics/freetype/SimpleFontDataFreeType.cpp
118
119     platform/graphics/gstreamer/GRefPtrGStreamer.cpp
120     platform/graphics/gstreamer/GStreamerGWorld.cpp
121     platform/graphics/gstreamer/GStreamerUtilities.cpp
122     platform/graphics/gstreamer/GStreamerVersioning.cpp
123     platform/graphics/gstreamer/ImageGStreamerCairo.cpp
124     platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
125     platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
126     platform/graphics/gstreamer/PlatformVideoWindowEfl.cpp
127     platform/graphics/gstreamer/VideoSinkGStreamer.cpp
128     platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
129
130     platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp
131     platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp
132     platform/graphics/harfbuzz/HarfBuzzFace.cpp
133     platform/graphics/harfbuzz/HarfBuzzShaper.cpp
134
135     platform/graphics/surfaces/glx/GLXContext.cpp
136     platform/graphics/surfaces/glx/GLXSurface.cpp
137
138     platform/graphics/WOFFFileFormat.cpp
139
140     platform/image-decoders/cairo/ImageDecoderCairo.cpp
141
142     platform/linux/GamepadDeviceLinux.cpp
143
144     platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp
145
146     platform/network/efl/NetworkStateNotifierEfl.cpp
147
148     platform/network/soup/AuthenticationChallengeSoup.cpp
149     platform/network/soup/CookieJarSoup.cpp
150     platform/network/soup/CookieStorageSoup.cpp
151     platform/network/soup/CredentialStorageSoup.cpp
152     platform/network/soup/DNSSoup.cpp
153     platform/network/soup/GOwnPtrSoup.cpp
154     platform/network/soup/NetworkStorageSessionSoup.cpp
155     platform/network/soup/ProxyResolverSoup.cpp
156     platform/network/soup/ProxyServerSoup.cpp
157     platform/network/soup/ResourceErrorSoup.cpp
158     platform/network/soup/ResourceHandleSoup.cpp
159     platform/network/soup/ResourceRequestSoup.cpp
160     platform/network/soup/ResourceResponseSoup.cpp
161     platform/network/soup/SocketStreamHandleSoup.cpp
162     platform/network/soup/SoupURIUtils.cpp
163
164     platform/PlatformStrategies.cpp
165
166     platform/posix/FileSystemPOSIX.cpp
167     platform/posix/SharedBufferPOSIX.cpp
168
169     platform/text/efl/TextBreakIteratorInternalICUEfl.cpp
170     platform/text/enchant/TextCheckerEnchant.cpp
171     platform/text/TextBreakIteratorICU.cpp
172     platform/text/TextCodecICU.cpp
173     platform/text/TextEncodingDetectorICU.cpp
174 )
175
176 if (ENABLE_BATTERY_STATUS)
177     list(APPEND WebCore_INCLUDE_DIRECTORIES ${DBUS_INCLUDE_DIRS})
178     list(APPEND WebCore_LIBRARIES ${DBUS_LIBRARIES})
179 endif ()
180
181 if (ENABLE_NETSCAPE_PLUGIN_API)
182     list(APPEND WebCore_SOURCES
183         plugins/PluginDatabase.cpp
184         plugins/PluginDebug.cpp
185         plugins/PluginPackage.cpp
186         plugins/PluginStream.cpp
187         plugins/PluginView.cpp
188
189         plugins/efl/PluginPackageEfl.cpp
190         plugins/efl/PluginViewEfl.cpp
191     )
192 else ()
193     list(APPEND WebCore_SOURCES
194         plugins/PluginPackageNone.cpp
195         plugins/PluginViewNone.cpp
196     )
197 endif ()
198
199 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
200     ${WEBCORE_DIR}/css/mediaControlsEfl.css
201     ${WEBCORE_DIR}/css/mediaControlsEflFullscreen.css
202 )
203
204 if (WTF_USE_TEXTURE_MAPPER)
205     list(APPEND WebCore_SOURCES
206         platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
207     )
208 endif ()
209
210 list(APPEND WebCore_LIBRARIES
211     ${CAIRO_LIBRARIES}
212     ${ECORE_LIBRARIES}
213     ${ECORE_EVAS_LIBRARIES}
214     ${ECORE_FILE_LIBRARIES}
215     ${ECORE_X_LIBRARIES}
216     ${EO_LIBRARIES}
217     ${E_DBUS_LIBRARIES}
218     ${E_DBUS_EUKIT_LIBRARIES}
219     ${EDJE_LIBRARIES}
220     ${EEZE_LIBRARIES}
221     ${EINA_LIBRARIES}
222     ${EVAS_LIBRARIES}
223     ${FONTCONFIG_LIBRARIES}
224     ${FREETYPE_LIBRARIES}
225     ${ICU_LIBRARIES}
226     ${JPEG_LIBRARIES}
227     ${LIBXML2_LIBRARIES}
228     ${LIBXSLT_LIBRARIES}
229     ${PNG_LIBRARIES}
230     ${SQLITE_LIBRARIES}
231     ${GLIB_LIBRARIES}
232     ${GLIB_GIO_LIBRARIES}
233     ${GLIB_GOBJECT_LIBRARIES}
234     ${LIBSOUP_LIBRARIES}
235     ${ZLIB_LIBRARIES}
236     ${HARFBUZZ_LIBRARIES}
237 )
238
239 list(APPEND WebCore_INCLUDE_DIRECTORIES
240     ${CAIRO_INCLUDE_DIRS}
241     ${ECORE_INCLUDE_DIRS}
242     ${ECORE_EVAS_INCLUDE_DIRS}
243     ${ECORE_FILE_INCLUDE_DIRS}
244     ${ECORE_X_INCLUDE_DIRS}
245     ${EO_INCLUDE_DIRS}
246     ${E_DBUS_INCLUDE_DIRS}
247     ${E_DBUS_EUKIT_INCLUDE_DIRS}
248     ${EDJE_INCLUDE_DIRS}
249     ${EEZE_INCLUDE_DIRS}
250     ${EINA_INCLUDE_DIRS}
251     ${EVAS_INCLUDE_DIRS}
252     ${FREETYPE_INCLUDE_DIRS}
253     ${ICU_INCLUDE_DIRS}
254     ${LIBXML2_INCLUDE_DIR}
255     ${LIBXSLT_INCLUDE_DIR}
256     ${SQLITE_INCLUDE_DIR}
257     ${GLIB_INCLUDE_DIRS}
258     ${LIBSOUP_INCLUDE_DIRS}
259     ${ZLIB_INCLUDE_DIRS}
260     ${HARFBUZZ_INCLUDE_DIRS}
261 )
262
263 if (ENABLE_VIDEO OR ENABLE_WEB_AUDIO)
264     list(APPEND WebCore_INCLUDE_DIRECTORIES
265         "${WEBCORE_DIR}/platform/graphics/gstreamer"
266
267         ${GSTREAMER_INCLUDE_DIRS}
268         ${GSTREAMER_BASE_INCLUDE_DIRS}
269         ${GSTREAMER_APP_INCLUDE_DIRS}
270         ${GSTREAMER_PBUTILS_INCLUDE_DIRS}
271     )
272
273     list(APPEND WebCore_LIBRARIES
274         ${GSTREAMER_LIBRARIES}
275         ${GSTREAMER_BASE_LIBRARIES}
276         ${GSTREAMER_APP_LIBRARIES}
277         ${GSTREAMER_PBUTILS_LIBRARIES}
278     )
279     # Avoiding a GLib deprecation warning due to GStreamer API using deprecated classes.
280     set_source_files_properties(platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp PROPERTIES COMPILE_DEFINITIONS "GLIB_DISABLE_DEPRECATION_WARNINGS=1")
281 endif ()
282
283 if (ENABLE_VIDEO)
284     list(APPEND WebCore_INCLUDE_DIRECTORIES
285         ${GSTREAMER_VIDEO_INCLUDE_DIRS}
286     )
287     list(APPEND WebCore_LIBRARIES
288         ${GSTREAMER_VIDEO_LIBRARIES}
289     )
290 endif ()
291
292 if (WTF_USE_3D_GRAPHICS)
293     set(WTF_USE_OPENGL 1)
294     add_definitions(-DWTF_USE_OPENGL=1)
295
296     list(APPEND WebCore_INCLUDE_DIRECTORIES
297         "${WEBCORE_DIR}/platform/graphics/opengl"
298         "${WEBCORE_DIR}/platform/graphics/surfaces"
299         "${WEBCORE_DIR}/platform/graphics/surfaces/glx"
300         "${WEBCORE_DIR}/platform/graphics/texmap"
301     )
302
303     if (WTF_USE_EGL)
304         list(APPEND WebCore_INCLUDE_DIRECTORIES
305             ${EGL_INCLUDE_DIR}
306             "${WEBCORE_DIR}/platform/graphics/surfaces/egl"
307     )
308     endif ()
309
310     list(APPEND WebCore_SOURCES
311         platform/graphics/cairo/DrawingBufferCairo.cpp
312         platform/graphics/efl/GraphicsContext3DEfl.cpp
313         platform/graphics/efl/GraphicsContext3DPrivate.cpp
314         platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
315         platform/graphics/opengl/GLPlatformContext.cpp
316         platform/graphics/opengl/GLPlatformSurface.cpp
317         platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
318         platform/graphics/surfaces/GraphicsSurface.cpp
319         platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp
320         platform/graphics/surfaces/glx/X11WindowResources.cpp
321         platform/graphics/texmap/TextureMapperGL.cpp
322         platform/graphics/texmap/TextureMapperShaderProgram.cpp
323     )
324
325     if (WTF_USE_EGL)
326         list(APPEND WebCore_SOURCES
327             platform/graphics/surfaces/egl/EGLConfigSelector.cpp
328             platform/graphics/surfaces/egl/EGLContext.cpp
329             platform/graphics/surfaces/egl/EGLSurface.cpp
330         )
331     endif ()
332
333     if (WTF_USE_OPENGL_ES_2)
334         list(APPEND WebCore_SOURCES
335             platform/graphics/opengl/Extensions3DOpenGLES.cpp
336             platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp
337         )
338     else ()
339         list(APPEND WebCore_SOURCES
340             platform/graphics/opengl/Extensions3DOpenGL.cpp
341             platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
342             platform/graphics/OpenGLShims.cpp
343         )
344     endif ()
345
346     list(APPEND WebCore_LIBRARIES
347         ${X11_X11_LIB}
348         ${X11_Xcomposite_LIB}
349         ${X11_Xrender_LIB}
350     )
351     if (WTF_USE_EGL)
352         list(APPEND WebCore_LIBRARIES
353             ${EGL_LIBRARY}
354         )
355     endif ()
356 endif ()
357
358 add_definitions(-DDATA_DIR="${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}")
359
360 if (ENABLE_WEB_AUDIO)
361     list(APPEND WebCore_INCLUDE_DIRECTORIES
362         "${WEBCORE_DIR}/platform/audio/gstreamer"
363
364         ${GSTREAMER_AUDIO_INCLUDE_DIRS}
365         ${GSTREAMER_FFT_INCLUDE_DIRS}
366     )
367     list(APPEND WebCore_LIBRARIES
368         ${GSTREAMER_AUDIO_LIBRARIES}
369         ${GSTREAMER_FFT_LIBRARIES}
370     )
371     set(WEB_AUDIO_DIR ${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/webaudio/resources)
372     file(GLOB WEB_AUDIO_DATA "${WEBCORE_DIR}/platform/audio/resources/*.wav")
373     install(FILES ${WEB_AUDIO_DATA} DESTINATION ${WEB_AUDIO_DIR})
374     add_definitions(-DUNINSTALLED_AUDIO_RESOURCES_DIR="${WEBCORE_DIR}/platform/audio/resources")
375 endif ()
376
377 if (ENABLE_SPELLCHECK)
378     list(APPEND WebCore_INCLUDE_DIRECTORIES
379         ${ENCHANT_INCLUDE_DIRS}
380     )
381     list(APPEND WebCore_LIBRARIES
382         ${ENCHANT_LIBRARIES}
383     )
384 endif ()
385
386 if (ENABLE_ACCESSIBILITY)
387     list(APPEND WebCore_INCLUDE_DIRECTORIES
388         "${WEBCORE_DIR}/accessibility/atk"
389         ${ATK_INCLUDE_DIRS}
390     )
391     list(APPEND WebCore_LIBRARIES
392         ${ATK_LIBRARIES}
393     )
394 endif ()