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