Add to ewk api for setting/getting the User Agent by using system info library.
[framework/web/webkit-efl.git] / Source / WebKit2 / PlatformTizen.cmake
1 LIST(APPEND WebKit2StaticForDebug_INCLUDE_DIRECTORIES
2     "${WEBCORE_DIR}/Modules/filesystem"
3     "${WEBCORE_DIR}/Modules/mediastream"
4     "${WEBCORE_DIR}/platform/efl/tizen"
5     "${WEBCORE_DIR}/platform/graphics/efl/tizen"
6     "${WEBCORE_DIR}/platform/graphics/gstreamer"
7     "${WEBCORE_DIR}/platform/graphics/surfaces"
8     "${WEBCORE_DIR}/platform/graphics/texmap/tizen"
9     "${WEBCORE_DIR}/platform/mediastream"
10     "${WEBKIT2_DIR}/Platform/tizen/AboutData"
11     "${WEBKIT2_DIR}/Shared/efl/tizen"
12     "${WEBKIT2_DIR}/Shared/API/c/cairo"
13     "${WEBKIT2_DIR}/Shared/API/c/efl"
14     "${WEBKIT2_DIR}/Shared/API/c/tizen"
15     "${WEBKIT2_DIR}/Shared/tizen"
16     "${WEBKIT2_DIR}/UIProcess/API/C/efl"
17     "${WEBKIT2_DIR}/UIProcess/API/C/efl/tizen"
18     "${WEBKIT2_DIR}/UIProcess/API/efl/editor"
19     "${WEBKIT2_DIR}/UIProcess/API/efl/tizen"
20     "${WEBKIT2_DIR}/UIProcess/efl"
21     "${WEBKIT2_DIR}/UIProcess/MediaStream"
22     "${WEBKIT2_DIR}/UIProcess/texmap"
23     "${WEBKIT2_DIR}/UIProcess/tizen"
24     "${WEBKIT2_DIR}/WebProcess/LocalFileSystem"
25     "${WEBKIT2_DIR}/WebProcess/MediaStream"
26     "${WEBKIT2_DIR}/WebProcess/WebCoreSupport/efl/tizen"
27     "${WEBKIT2_DIR}/WebProcess/WebPage/efl/tizen"
28     "${WTF_DIR}"
29     ${CAPI_INCLUDE_DIRS}
30     ${ELEMENTARY_INCLUDE_DIRS}
31     ${GLES_INCLUDE_DIRS} #FIXME
32     ${TTS_INCLUDE_DIRS}
33     ${Tizen-Location-Manager_INCLUDE_DIRS}
34     ${UIGadget_INCLUDE_DIRS}
35     ${EFL_ASSIST_INCLUDE_DIRS}
36 )
37
38 LIST(APPEND WebKit2_LIBRARIES
39     ${CAPI_LIBRARIES}
40     ${ELEMENTARY_LIBRARIES}
41     ${GLES20_LIBRARIES} #FIXME
42     ${TTS_LIBRARIES}
43     ${Tizen-Location-Manager_LIBRARIES}
44     ${UIGadget_LIBRARY}
45 )
46
47 ADD_DEFINITIONS(-DWTF_USE_CROSS_PLATFORM_CONTEXT_MENUS=0)
48 ADD_DEFINITIONS(-DENABLE_CONTEXT_MENUS=1)
49
50 LIST(REMOVE_ITEM WebKit2StaticForDebug_SOURCES
51     Shared/efl/NativeWebKeyboardEventEfl.cpp
52     WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp
53 )
54
55 LIST(APPEND WebKit2StaticForDebug_SOURCES
56     Platform/tizen/AboutData/AboutDataTizen.cpp
57
58     PluginProcess/efl/PluginControllerProxyEfl.cpp
59
60     Shared/API/c/tizen/WKURLRequestTizen.cpp
61     Shared/API/c/tizen/WKURLResponseTizen.cpp
62     Shared/efl/tizen/WebSubresourceTizen.cpp
63     Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp
64     Shared/tizen/ArgumentCodersTizen.cpp
65     Shared/tizen/NativeWebKeyboardEventTizen.cpp
66     Shared/tizen/WebURLRequestTizen.cpp
67     Shared/tizen/WebURLResponseTizen.cpp
68
69     UIProcess/API/C/efl/tizen/WKLocalFileSystemManager.cpp
70     UIProcess/API/C/efl/tizen/WKContextTizen.cpp
71     UIProcess/API/C/efl/tizen/WKIconDatabaseTizen.cpp
72     UIProcess/API/C/efl/tizen/WKPageTizen.cpp
73     UIProcess/API/C/efl/tizen/WKPreferencesTizen.cpp
74     UIProcess/API/C/efl/tizen/WKUserMediaPermissionRequest.cpp
75
76     UIProcess/API/efl/ewk_auth_challenge.cpp
77     UIProcess/API/efl/ewk_certificate.cpp
78     UIProcess/API/efl/ewk_context_injected_bundle_client.cpp
79     UIProcess/API/efl/ewk_context_menu.cpp
80     UIProcess/API/efl/ewk_custom_handlers.cpp
81     UIProcess/API/efl/ewk_form_data.cpp
82     UIProcess/API/efl/ewk_frame.cpp
83     UIProcess/API/efl/ewk_geolocation.cpp
84     UIProcess/API/efl/ewk_history.cpp
85     UIProcess/API/efl/ewk_hit_test.cpp
86     UIProcess/API/efl/ewk_notification.cpp
87     UIProcess/API/efl/ewk_policy_decision.cpp
88     UIProcess/API/efl/ewk_search_provider.cpp
89     UIProcess/API/efl/ewk_security_origin.cpp
90     UIProcess/API/efl/ewk_text_style.cpp
91     UIProcess/API/efl/ewk_user_media.cpp
92     UIProcess/API/efl/ewk_util.cpp
93     UIProcess/API/efl/ewk_view_context_menu_client.cpp
94     UIProcess/API/efl/ewk_view_geolocation_provider.cpp
95     UIProcess/API/efl/ewk_view_icondatabase_client.cpp
96     UIProcess/API/efl/ewk_view_notification_provider.cpp
97     UIProcess/API/efl/ewk_view_tizen_client.cpp
98     UIProcess/API/efl/ewk_web_application_icon_data.cpp
99
100     UIProcess/API/efl/tizen/ClipboardHelper.cpp
101     UIProcess/API/efl/tizen/Drag.cpp
102     UIProcess/API/efl/tizen/DragHandle.cpp
103     UIProcess/API/efl/tizen/EasingUtilities.cpp
104     UIProcess/API/efl/tizen/Flick.cpp
105     UIProcess/API/efl/tizen/FocusRing.cpp
106     UIProcess/API/efl/tizen/FormDataCandidate.cpp
107     UIProcess/API/efl/tizen/FormDataCandidatePopup.cpp
108     UIProcess/API/efl/tizen/GestureClient.cpp
109     UIProcess/API/efl/tizen/GestureRecognizer.cpp
110     UIProcess/API/efl/tizen/InputPicker.cpp
111     UIProcess/API/efl/tizen/JavaScriptPopup.cpp
112     UIProcess/API/efl/tizen/LinkMagnifierProxy.cpp
113     UIProcess/API/efl/tizen/OfflinePageSave.cpp
114     UIProcess/API/efl/tizen/OpenPanel.cpp
115     UIProcess/API/efl/tizen/Pan.cpp
116     UIProcess/API/efl/tizen/FormDatabase.cpp
117     UIProcess/API/efl/tizen/ScreenReaderProxy.cpp
118     UIProcess/API/efl/tizen/SmartZoom.cpp
119     UIProcess/API/efl/tizen/TextSelection.cpp
120     UIProcess/API/efl/tizen/TextSelectionHandle.cpp
121     UIProcess/API/efl/tizen/TextSelectionMagnifier.cpp
122     UIProcess/API/efl/tizen/Zoom.cpp
123     UIProcess/API/efl/tizen/ewk_popup_picker.cpp
124
125     UIProcess/efl/PlatformSurfaceTexturePoolEfl.cpp
126
127     UIProcess/MediaStream/UserMediaPermissionRequest.cpp
128     UIProcess/MediaStream/UserMediaPermissionRequestManagerProxy.cpp
129
130     UIProcess/texmap/tizen/LayerBackingStoreTizen.cpp
131
132     UIProcess/tizen/MainFrameScrollbarTizen.cpp
133     UIProcess/tizen/WebContextMenuProxyTizen.cpp
134     UIProcess/tizen/WebLayerTreeRendererTizen.cpp
135     UIProcess/tizen/WebLocalFileSystemManagerProxy.cpp
136     UIProcess/tizen/WebTizenClient.cpp
137
138     WebProcess/FullScreen/efl/WebFullScreenManagerEfl.cpp
139
140     WebProcess/LocalFileSystem/WebLocalFileSystemManager.cpp
141
142     WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp
143
144     WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
145     WebProcess/Plugins/Netscape/efl/PluginProxyEfl.cpp
146
147     WebProcess/WebCoreSupport/efl/tizen/WebDragClientTizen.cpp
148     WebProcess/WebCoreSupport/efl/tizen/WebErrorsTizen.cpp
149     WebProcess/WebCoreSupport/efl/tizen/WebInspectorServerTizen.cpp
150     WebProcess/WebCoreSupport/efl/tizen/WebRegisterContentHandlerClient.cpp
151     WebProcess/WebCoreSupport/efl/tizen/WebRegisterProtocolHandlerClient.cpp
152     WebProcess/WebCoreSupport/efl/tizen/WebUserMediaClient.cpp
153
154     WebProcess/WebPage/efl/tizen/LinkMagnifier.cpp
155     WebProcess/WebPage/efl/tizen/PlatformSurfacePoolTizen.cpp
156     WebProcess/WebPage/efl/tizen/ScreenReader.cpp
157     WebProcess/WebPage/efl/tizen/TiledBackingStoreRemoteTileTizen.cpp
158     WebProcess/WebPage/efl/tizen/WebPageSerializerTizen.cpp
159 )
160
161 IF (WTF_USE_TEXTURE_MAPPER)
162     LIST(APPEND WebKit2StaticForDebug_SOURCES
163         UIProcess/texmap/LayerBackingStore.cpp
164     )
165 ENDIF ()
166
167 LIST(APPEND WebKit2StaticForDebug_MESSAGES_IN_FILES
168     UIProcess/WebLocalFileSystemManagerProxy.messages.in
169     WebProcess/LocalFileSystem/WebLocalFileSystemManager.messages.in
170 )
171
172 SET(THEME_DIR ${CMAKE_BINARY_DIR}/theme)
173 SET(CONTROL_THEME ${THEME_DIR}/control.edj)
174 SET(JS_POPUP_THEME ${THEME_DIR}/JavaScriptPopup.edj)
175
176 IF (ENABLE_TIZEN_WEBKIT2_TEXT_SELECTION)
177     SET(MAGNIFIER_THEME ${THEME_DIR}/Magnifier.edj)
178 ENDIF ()
179
180 IF (ENABLE_TIZEN_DRAG_SUPPORT)
181     SET(DRAG_THEME ${THEME_DIR}/Drag.edj)
182 ENDIF ()
183
184 IF (ENABLE_TIZEN_WEBKIT2_FORM_DATABASE)
185     SET(FORMDATA_THEME ${THEME_DIR}/FormDataCandidate.edj)
186 ENDIF ()
187
188 FILE(MAKE_DIRECTORY ${THEME_DIR})
189
190 ADD_CUSTOM_COMMAND(
191     OUTPUT ${CONTROL_THEME}
192     COMMAND ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/control.edc ${CONTROL_THEME}
193     DEPENDS
194         ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/control.edc
195 )
196
197 ADD_CUSTOM_COMMAND(
198     OUTPUT ${JS_POPUP_THEME}
199     COMMAND  ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/JavaScriptPopup.edc ${JS_POPUP_THEME}
200     DEPENDS
201         ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/JavaScriptPopup.edc
202 )
203
204 IF (ENABLE_TIZEN_WEBKIT2_TEXT_SELECTION)
205     ADD_CUSTOM_COMMAND(
206         OUTPUT ${MAGNIFIER_THEME}
207         COMMAND  ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/Magnifier.edc ${MAGNIFIER_THEME}
208         DEPENDS
209             ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/Magnifier.edc
210     )
211     LIST(APPEND WebKit2StaticForDebug_SOURCES ${MAGNIFIER_THEME})
212 ENDIF ()
213
214 IF (ENABLE_TIZEN_DRAG_SUPPORT)
215     ADD_CUSTOM_COMMAND(
216         OUTPUT ${DRAG_THEME}
217         COMMAND  ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/Drag.edc ${DRAG_THEME}
218         DEPENDS
219             ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/Drag.edc
220     )
221     LIST(APPEND WebKit2StaticForDebug_SOURCES ${DRAG_THEME})
222 ENDIF ()
223
224 IF (ENABLE_TIZEN_WEBKIT2_FORM_DATABASE)
225     ADD_CUSTOM_COMMAND(
226         OUTPUT ${FORMDATA_THEME}
227         COMMAND  ${EDJE_CC_EXECUTABLE} -id ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/FormDataCandidate.edc ${FORMDATA_THEME}
228         DEPENDS
229             ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/FormDataCandidate.edc
230     )
231     LIST(APPEND WebKit2StaticForDebug_SOURCES ${FORMDATA_THEME})
232 ENDIF ()
233
234 LIST(APPEND WebKit2StaticForDebug_SOURCES ${CONTROL_THEME} ${JS_POPUP_THEME})
235
236 ADD_DEFINITIONS("-DEDJE_DIR=\"${CMAKE_INSTALL_PREFIX}/share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes\"")
237
238 FILE(GLOB Shared_API_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/Shared/API/c/*.h")
239 LIST(APPEND Shared_API_HEADERS
240     "${CMAKE_CURRENT_SOURCE_DIR}/Shared/API/c/efl/WKBaseEfl.h"
241     "${CMAKE_CURRENT_SOURCE_DIR}/Shared/API/c/cairo/WKImageCairo.h"
242     "${CMAKE_CURRENT_SOURCE_DIR}/Shared/API/c/tizen/WKURLRequestTizen.h"
243     "${CMAKE_CURRENT_SOURCE_DIR}/Shared/API/c/tizen/WKURLResponseTizen.h"
244 )
245
246 LIST(APPEND NPAPI_HEADERS
247     "${WEBCORE_DIR}/plugins/npapi.h"
248     "${WEBCORE_DIR}/plugins/npfunctions.h"
249     "${WEBCORE_DIR}/plugins/npruntime.h"
250     "${WEBCORE_DIR}/plugins/nptypes.h"
251 )
252
253 INCLUDE_IF_EXISTS(${WEBKIT2_DIR}/PlatformExperimental.cmake)
254
255 INSTALL(FILES ${NPAPI_HEADERS}
256     DESTINATION include/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/NPAPI)
257
258 INSTALL(FILES ${Shared_API_HEADERS}
259     DESTINATION include/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/WebKit2)
260
261 INSTALL(FILES ${CONTROL_THEME}
262     DESTINATION share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)
263 INSTALL(FILES ${JS_POPUP_THEME}
264     DESTINATION share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)
265
266 IF (ENABLE_TIZEN_WEBKIT2_TEXT_SELECTION)
267     INSTALL(FILES ${MAGNIFIER_THEME}
268         DESTINATION share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)
269 ENDIF ()
270
271 IF (ENABLE_TIZEN_DRAG_SUPPORT)
272     INSTALL(FILES ${DRAG_THEME}
273         DESTINATION share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)
274 ENDIF ()
275
276 IF (ENABLE_TIZEN_WEBKIT2_FORM_DATABASE)
277     INSTALL(FILES ${FORMDATA_THEME}
278         DESTINATION share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)
279 ENDIF ()
280
281 FILE(GLOB InjectedBundle_API_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/WebProcess/InjectedBundle/API/c/*.h")
282 # FIXME: WKBundleFrame.h includes WKFrame.h
283 LIST(APPEND InjectedBundle_API_HEADERS
284     "${CMAKE_CURRENT_SOURCE_DIR}/UIProcess/API/C/WKFrame.h"
285 )
286 INSTALL(FILES ${InjectedBundle_API_HEADERS}
287     DESTINATION include/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/WebKit2)
288
289 ADD_DEFINITIONS("-DWEBKIT_TEXT_DIR=\"${CMAKE_INSTALL_PREFIX}/share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/locale/po\"")
290 ADD_DEFINITIONS("-DWEBKIT_HTML_DIR=\"${CMAKE_INSTALL_PREFIX}/share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/html\"")
291 INCLUDE_IF_EXISTS(${WEBKIT2_DIR}/UIProcess/efl/po_tizen/CMakeLists.txt)
292 SET(WEBKIT2_EFL_ERROR_PAGE_DIR share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/html)
293 INSTALL(FILES ${WEBKIT2_DIR}/UIProcess/efl/htmlfiles/errorPage.html DESTINATION ${WEBKIT2_EFL_ERROR_PAGE_DIR})
294
295 IF (ENABLE_TIZEN_SCREEN_READER)
296     SET(SCREEN_READER_FOCUS_RING_IMAGE_PATH ${CMAKE_INSTALL_PREFIX}/share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/images)
297     ADD_DEFINITIONS(-DSCREEN_READER_FOCUS_RING_IMAGE_PATH="${SCREEN_READER_FOCUS_RING_IMAGE_PATH}/screenReaderFocusRing.png")
298     INSTALL(FILES ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images/screenReaderFocusRing.png DESTINATION ${SCREEN_READER_FOCUS_RING_IMAGE_PATH})
299 ENDIF ()
300
301 IF (ENABLE_TIZEN_FOCUS_UI)
302     SET(FOCUS_UI_FOCUS_RING_IMAGE_PATH ${CMAKE_INSTALL_PREFIX}/share/${WebKit2_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/images)
303     ADD_DEFINITIONS(-DFOCUS_UI_FOCUS_RING_IMAGE_PATH="${FOCUS_UI_FOCUS_RING_IMAGE_PATH}/focusUIFocusRing.png")
304     INSTALL(FILES ${WEBKIT2_DIR}/UIProcess/API/efl/tizen/images/focusUIFocusRing.png DESTINATION ${FOCUS_UI_FOCUS_RING_IMAGE_PATH})
305 ENDIF ()