d1d463f1a5a939b18ab0eda765525bf6d6c6df6f
[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/WOFFFileFormat.cpp
136
137     platform/image-decoders/cairo/ImageDecoderCairo.cpp
138
139     platform/linux/GamepadDeviceLinux.cpp
140
141     platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp
142
143     platform/network/efl/NetworkStateNotifierEfl.cpp
144
145     platform/network/soup/AuthenticationChallengeSoup.cpp
146     platform/network/soup/CookieJarSoup.cpp
147     platform/network/soup/CookieStorageSoup.cpp
148     platform/network/soup/CredentialStorageSoup.cpp
149     platform/network/soup/DNSSoup.cpp
150     platform/network/soup/GOwnPtrSoup.cpp
151     platform/network/soup/NetworkStorageSessionSoup.cpp
152     platform/network/soup/ProxyResolverSoup.cpp
153     platform/network/soup/ProxyServerSoup.cpp
154     platform/network/soup/ResourceErrorSoup.cpp
155     platform/network/soup/ResourceHandleSoup.cpp
156     platform/network/soup/ResourceRequestSoup.cpp
157     platform/network/soup/ResourceResponseSoup.cpp
158     platform/network/soup/SocketStreamHandleSoup.cpp
159     platform/network/soup/SoupURIUtils.cpp
160
161     platform/PlatformStrategies.cpp
162
163     platform/posix/FileSystemPOSIX.cpp
164     platform/posix/SharedBufferPOSIX.cpp
165
166     platform/text/efl/TextBreakIteratorInternalICUEfl.cpp
167     platform/text/enchant/TextCheckerEnchant.cpp
168     platform/text/LocaleICU.cpp
169     platform/text/TextBreakIteratorICU.cpp
170     platform/text/TextCodecICU.cpp
171     platform/text/TextEncodingDetectorICU.cpp
172 )
173
174 if (ENABLE_BATTERY_STATUS)
175     list(APPEND WebCore_INCLUDE_DIRECTORIES ${DBUS_INCLUDE_DIRS})
176     list(APPEND WebCore_LIBRARIES ${DBUS_LIBRARIES})
177 endif ()
178
179 if (ENABLE_NETSCAPE_PLUGIN_API)
180     list(APPEND WebCore_SOURCES
181         plugins/PluginDatabase.cpp
182         plugins/PluginDebug.cpp
183         plugins/PluginPackage.cpp
184         plugins/PluginStream.cpp
185         plugins/PluginView.cpp
186
187         plugins/efl/PluginPackageEfl.cpp
188         plugins/efl/PluginViewEfl.cpp
189     )
190 else ()
191     list(APPEND WebCore_SOURCES
192         plugins/PluginPackageNone.cpp
193         plugins/PluginViewNone.cpp
194     )
195 endif ()
196
197 list(APPEND WebCore_USER_AGENT_STYLE_SHEETS
198     ${WEBCORE_DIR}/css/mediaControlsEfl.css
199     ${WEBCORE_DIR}/css/mediaControlsEflFullscreen.css
200 )
201
202 if (WTF_USE_TEXTURE_MAPPER)
203     list(APPEND WebCore_SOURCES
204         platform/graphics/texmap/GraphicsLayerTextureMapper.cpp
205     )
206 endif ()
207
208 list(APPEND WebCore_LIBRARIES
209     ${CAIRO_LIBRARIES}
210     ${ECORE_LIBRARIES}
211     ${ECORE_EVAS_LIBRARIES}
212     ${ECORE_FILE_LIBRARIES}
213     ${ECORE_X_LIBRARIES}
214     ${EO_LIBRARIES}
215     ${E_DBUS_LIBRARIES}
216     ${E_DBUS_EUKIT_LIBRARIES}
217     ${EDJE_LIBRARIES}
218     ${EEZE_LIBRARIES}
219     ${EINA_LIBRARIES}
220     ${EVAS_LIBRARIES}
221     ${FONTCONFIG_LIBRARIES}
222     ${FREETYPE_LIBRARIES}
223     ${ICU_LIBRARIES}
224     ${JPEG_LIBRARIES}
225     ${LIBXML2_LIBRARIES}
226     ${LIBXSLT_LIBRARIES}
227     ${PNG_LIBRARIES}
228     ${SQLITE_LIBRARIES}
229     ${GLIB_LIBRARIES}
230     ${GLIB_GIO_LIBRARIES}
231     ${GLIB_GOBJECT_LIBRARIES}
232     ${LIBSOUP_LIBRARIES}
233     ${ZLIB_LIBRARIES}
234     ${HARFBUZZ_LIBRARIES}
235 )
236
237 list(APPEND WebCore_INCLUDE_DIRECTORIES
238     ${CAIRO_INCLUDE_DIRS}
239     ${ECORE_INCLUDE_DIRS}
240     ${ECORE_EVAS_INCLUDE_DIRS}
241     ${ECORE_FILE_INCLUDE_DIRS}
242     ${ECORE_X_INCLUDE_DIRS}
243     ${EO_INCLUDE_DIRS}
244     ${E_DBUS_INCLUDE_DIRS}
245     ${E_DBUS_EUKIT_INCLUDE_DIRS}
246     ${EDJE_INCLUDE_DIRS}
247     ${EEZE_INCLUDE_DIRS}
248     ${EINA_INCLUDE_DIRS}
249     ${EVAS_INCLUDE_DIRS}
250     ${FREETYPE_INCLUDE_DIRS}
251     ${ICU_INCLUDE_DIRS}
252     ${LIBXML2_INCLUDE_DIR}
253     ${LIBXSLT_INCLUDE_DIR}
254     ${SQLITE_INCLUDE_DIR}
255     ${GLIB_INCLUDE_DIRS}
256     ${LIBSOUP_INCLUDE_DIRS}
257     ${ZLIB_INCLUDE_DIRS}
258     ${HARFBUZZ_INCLUDE_DIRS}
259 )
260
261 if (ENABLE_VIDEO OR ENABLE_WEB_AUDIO)
262     list(APPEND WebCore_INCLUDE_DIRECTORIES
263         "${WEBCORE_DIR}/platform/graphics/gstreamer"
264
265         ${GSTREAMER_INCLUDE_DIRS}
266         ${GSTREAMER_BASE_INCLUDE_DIRS}
267         ${GSTREAMER_APP_INCLUDE_DIRS}
268         ${GSTREAMER_PBUTILS_INCLUDE_DIRS}
269     )
270
271     list(APPEND WebCore_LIBRARIES
272         ${GSTREAMER_LIBRARIES}
273         ${GSTREAMER_BASE_LIBRARIES}
274         ${GSTREAMER_APP_LIBRARIES}
275         ${GSTREAMER_PBUTILS_LIBRARIES}
276     )
277     # Avoiding a GLib deprecation warning due to GStreamer API using deprecated classes.
278     set_source_files_properties(platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp PROPERTIES COMPILE_DEFINITIONS "GLIB_DISABLE_DEPRECATION_WARNINGS=1")
279 endif ()
280
281 if (ENABLE_VIDEO)
282     list(APPEND WebCore_INCLUDE_DIRECTORIES
283         ${GSTREAMER_VIDEO_INCLUDE_DIRS}
284     )
285     list(APPEND WebCore_LIBRARIES
286         ${GSTREAMER_VIDEO_LIBRARIES}
287     )
288 endif ()
289
290 if (WTF_USE_3D_GRAPHICS)
291     set(WTF_USE_OPENGL 1)
292     add_definitions(-DWTF_USE_OPENGL=1)
293
294     list(APPEND WebCore_INCLUDE_DIRECTORIES
295         "${WEBCORE_DIR}/platform/graphics/opengl"
296         "${WEBCORE_DIR}/platform/graphics/surfaces"
297         "${WEBCORE_DIR}/platform/graphics/surfaces/glx"
298         "${WEBCORE_DIR}/platform/graphics/texmap"
299     )
300
301     if (WTF_USE_EGL)
302         list(APPEND WebCore_INCLUDE_DIRECTORIES
303             ${EGL_INCLUDE_DIR}
304             "${WEBCORE_DIR}/platform/graphics/surfaces/egl"
305     )
306     endif ()
307
308     list(APPEND WebCore_SOURCES
309         platform/graphics/cairo/DrawingBufferCairo.cpp
310         platform/graphics/efl/GraphicsContext3DEfl.cpp
311         platform/graphics/efl/GraphicsContext3DPrivate.cpp
312         platform/graphics/opengl/Extensions3DOpenGLCommon.cpp
313         platform/graphics/opengl/GLPlatformContext.cpp
314         platform/graphics/opengl/GLPlatformSurface.cpp
315         platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp
316         platform/graphics/surfaces/GLTransportSurface.cpp
317         platform/graphics/surfaces/GraphicsSurface.cpp
318         platform/graphics/surfaces/glx/X11Helper.cpp
319         platform/graphics/texmap/TextureMapperGL.cpp
320         platform/graphics/texmap/TextureMapperShaderProgram.cpp
321     )
322
323     if (WTF_USE_EGL)
324         list(APPEND WebCore_SOURCES
325             platform/graphics/surfaces/egl/EGLConfigSelector.cpp
326             platform/graphics/surfaces/egl/EGLContext.cpp
327             platform/graphics/surfaces/egl/EGLSurface.cpp
328         )
329     else ()
330         list(APPEND WebCore_SOURCES
331             platform/graphics/surfaces/glx/GLXContext.cpp
332             platform/graphics/surfaces/glx/GLXSurface.cpp
333             platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp
334         )
335     endif ()
336
337     if (WTF_USE_OPENGL_ES_2)
338         list(APPEND WebCore_SOURCES
339             platform/graphics/opengl/Extensions3DOpenGLES.cpp
340             platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp
341         )
342     else ()
343         list(APPEND WebCore_SOURCES
344             platform/graphics/opengl/Extensions3DOpenGL.cpp
345             platform/graphics/opengl/GraphicsContext3DOpenGL.cpp
346             platform/graphics/OpenGLShims.cpp
347         )
348     endif ()
349
350     list(APPEND WebCore_LIBRARIES
351         ${X11_X11_LIB}
352         ${X11_Xcomposite_LIB}
353         ${X11_Xrender_LIB}
354     )
355     if (WTF_USE_EGL)
356         list(APPEND WebCore_LIBRARIES
357             ${EGL_LIBRARY}
358         )
359     endif ()
360 endif ()
361
362 add_definitions(-DDATA_DIR="${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}")
363
364 if (ENABLE_WEB_AUDIO)
365     list(APPEND WebCore_INCLUDE_DIRECTORIES
366         "${WEBCORE_DIR}/platform/audio/gstreamer"
367
368         ${GSTREAMER_AUDIO_INCLUDE_DIRS}
369         ${GSTREAMER_FFT_INCLUDE_DIRS}
370     )
371     list(APPEND WebCore_LIBRARIES
372         ${GSTREAMER_AUDIO_LIBRARIES}
373         ${GSTREAMER_FFT_LIBRARIES}
374     )
375     set(WEB_AUDIO_DIR ${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/webaudio/resources)
376     file(GLOB WEB_AUDIO_DATA "${WEBCORE_DIR}/platform/audio/resources/*.wav")
377     install(FILES ${WEB_AUDIO_DATA} DESTINATION ${WEB_AUDIO_DIR})
378     add_definitions(-DUNINSTALLED_AUDIO_RESOURCES_DIR="${WEBCORE_DIR}/platform/audio/resources")
379 endif ()
380
381 if (ENABLE_SPELLCHECK)
382     list(APPEND WebCore_INCLUDE_DIRECTORIES
383         ${ENCHANT_INCLUDE_DIRS}
384     )
385     list(APPEND WebCore_LIBRARIES
386         ${ENCHANT_LIBRARIES}
387     )
388 endif ()
389
390 if (ENABLE_ACCESSIBILITY)
391     list(APPEND WebCore_INCLUDE_DIRECTORIES
392         "${WEBCORE_DIR}/accessibility/atk"
393         ${ATK_INCLUDE_DIRS}
394     )
395     list(APPEND WebCore_LIBRARIES
396         ${ATK_LIBRARIES}
397     )
398 endif ()