.: Support for Battery Status API.
[WebKit-https.git] / Source / WebKit / PlatformEfl.cmake
1 LIST(APPEND WebKit_LINK_FLAGS
2     ${ECORE_X_LDFLAGS}
3     ${EDJE_LDFLAGS}
4     ${EFLDEPS_LDFLAGS}
5     ${EVAS_LDFLAGS}
6 )
7
8 LIST(APPEND WebKit_INCLUDE_DIRECTORIES
9     "${CMAKE_SOURCE_DIR}/Source"
10     "${WEBKIT_DIR}/efl/ewk"
11     "${WEBKIT_DIR}/efl/WebCoreSupport"
12     "${JAVASCRIPTCORE_DIR}/ForwardingHeaders"
13     "${JAVASCRIPTCORE_DIR}/wtf/gobject"
14     "${WEBCORE_DIR}/platform/efl"
15     "${WEBCORE_DIR}/platform/graphics/cairo"
16     ${Cairo_INCLUDE_DIRS}
17     ${ECORE_X_INCLUDE_DIRS}
18     ${EDJE_INCLUDE_DIRS}
19     ${EFLDEPS_INCLUDE_DIRS}
20     ${EVAS_INCLUDE_DIRS}
21     ${LIBXML2_INCLUDE_DIR}
22     ${LIBXSLT_INCLUDE_DIR}
23     ${SQLITE_INCLUDE_DIR}
24     ${Glib_INCLUDE_DIRS}
25     ${LIBSOUP24_INCLUDE_DIRS}
26 )
27
28 IF (ENABLE_SVG)
29   LIST(APPEND WebKit_INCLUDE_DIRECTORIES
30     "${WEBCORE_DIR}/svg"
31     "${WEBCORE_DIR}/svg/animation"
32     "${WEBCORE_DIR}/rendering/svg"
33   )
34 ENDIF ()
35
36 IF (ENABLE_VIDEO)
37 LIST(APPEND WebKit_INCLUDE_DIRECTORIES
38     "${WEBCORE_DIR}/platform/graphics/gstreamer"
39     ${GStreamer-App_INCLUDE_DIRS}
40     ${GStreamer-Interfaces_INCLUDE_DIRS}
41     ${GStreamer-Pbutils_INCLUDE_DIRS}
42     ${GStreamer-Video_INCLUDE_DIRS}
43 )
44 ENDIF()
45
46 IF (WTF_USE_FREETYPE)
47   LIST(APPEND WebKit_INCLUDE_DIRECTORIES
48     "${WEBCORE_DIR}/platform/graphics/freetype"
49   )
50 ENDIF ()
51
52 IF (WTF_USE_PANGO)
53   LIST(APPEND WebKit_INCLUDE_DIRECTORIES
54     "${WEBCORE_DIR}/platform/graphics/pango"
55     ${Pango_INCLUDE_DIRS}
56   )
57   LIST(APPEND WebKit_LIBRARIES
58     ${Pango_LIBRARIES}
59   )
60 ENDIF ()
61
62 IF (ENABLE_NOTIFICATIONS)
63   LIST(APPEND WebKit_INCLUDE_DIRECTORIES
64     "${WEBCORE_DIR}/notifications"
65   )
66 ENDIF ()
67
68 LIST(APPEND WebKit_SOURCES
69     efl/WebCoreSupport/AssertMatchingEnums.cpp
70     efl/WebCoreSupport/ChromeClientEfl.cpp
71     efl/WebCoreSupport/DeviceOrientationClientEfl.cpp
72     efl/WebCoreSupport/DeviceMotionClientEfl.cpp
73     efl/WebCoreSupport/DragClientEfl.cpp
74     efl/WebCoreSupport/DumpRenderTreeSupportEfl.cpp
75     efl/WebCoreSupport/EditorClientEfl.cpp
76     efl/WebCoreSupport/FrameLoaderClientEfl.cpp
77     efl/WebCoreSupport/FrameNetworkingContextEfl.cpp
78     efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp
79     efl/WebCoreSupport/IconDatabaseClientEfl.cpp
80     efl/WebCoreSupport/StorageTrackerClientEfl.cpp
81     efl/WebCoreSupport/InspectorClientEfl.cpp
82     efl/WebCoreSupport/NotificationPresenterClientEfl.cpp
83
84     efl/ewk/ewk_auth.cpp
85     efl/ewk/ewk_auth_soup.cpp
86     efl/ewk/ewk_contextmenu.cpp
87     efl/ewk/ewk_cookies.cpp
88     efl/ewk/ewk_frame.cpp
89     efl/ewk/ewk_history.cpp
90     efl/ewk/ewk_js.cpp
91     efl/ewk/ewk_main.cpp
92     efl/ewk/ewk_network.cpp
93     efl/ewk/ewk_security_policy.cpp
94     efl/ewk/ewk_settings.cpp
95     efl/ewk/ewk_tiled_backing_store.cpp
96     efl/ewk/ewk_tiled_matrix.cpp
97     efl/ewk/ewk_tiled_model.cpp
98     efl/ewk/ewk_util.cpp
99     efl/ewk/ewk_view.cpp
100     efl/ewk/ewk_view_single.cpp
101     efl/ewk/ewk_view_tiled.cpp
102     efl/ewk/ewk_window_features.cpp
103 )
104
105 LIST(APPEND WebKit_LIBRARIES
106     ${Cairo_LIBRARIES}
107     ${ECORE_X_LIBRARIES}
108     ${EFLDEPS_LIBRARIES}
109     ${FREETYPE_LIBRARIES}
110     ${LIBXML2_LIBRARIES}
111     ${SQLITE_LIBRARIES}
112     ${FONTCONFIG_LIBRARIES}
113     ${PNG_LIBRARY}
114     ${JPEG_LIBRARY}
115     ${CMAKE_DL_LIBS}
116     ${Glib_LIBRARIES}
117     ${LIBSOUP24_LIBRARIES}
118 )
119
120 IF (ENABLE_VIBRATION)
121     LIST(APPEND WebKit_INCLUDE_DIRECTORIES
122         ${WEBCORE_DIR}/Modules/vibration
123     )
124     LIST(APPEND WebKit_SOURCES
125         efl/WebCoreSupport/VibrationClientEfl.cpp
126     )
127 ENDIF ()
128
129 IF (ENABLE_BATTERY_STATUS)
130     LIST(APPEND WebKit_INCLUDE_DIRECTORIES ${WEBCORE_DIR}/Modules/battery)
131     LIST(APPEND WebKit_SOURCES efl/WebCoreSupport/BatteryClientEfl.cpp)
132 ENDIF ()
133
134 SET(WebKit_THEME_DEFINITION "")
135 IF (ENABLE_PROGRESS_TAG)
136   LIST(APPEND WebKit_THEME_DEFINITION "-DENABLE_PROGRESS_TAG")
137 ENDIF ()
138
139 FILE(MAKE_DIRECTORY ${THEME_BINARY_DIR})
140 SET(WebKit_THEME ${THEME_BINARY_DIR}/default.edj)
141 ADD_CUSTOM_COMMAND(
142   OUTPUT ${WebKit_THEME}
143   COMMAND ${EDJE_CC_EXECUTABLE} -v -id ${WEBKIT_DIR}/efl/DefaultTheme ${WebKit_THEME_DEFINITION} ${WEBKIT_DIR}/efl/DefaultTheme/default.edc ${WebKit_THEME}
144   DEPENDS
145     ${WEBKIT_DIR}/efl/DefaultTheme/default.edc
146     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_v.png
147     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_press_v.png
148     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_v.png
149     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider.edc
150     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_press_h.png
151     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_h.png
152     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_fill_v.png
153     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_fill_h.png
154     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_h.png
155     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_focus_button.png
156     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_press.png
157     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/icon.png
158     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_normal.png
159     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_hover.png
160     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_normal_button.png
161     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_focus.png
162     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_hover_button.png
163     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo.edc
164     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_press_button.png
165     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/decoration/search_decoration.edc
166     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/decoration/decoration_normal_button.png
167     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_hovered.png
168     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/search_field.edc
169     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_normal.png
170     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_focused.png
171     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/cancel_normal_button.png
172     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/cancel_normal_button2.png
173     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/search_cancel.edc
174     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off_focus.png
175     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/check.edc
176     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on_focus.png
177     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on_hover.png
178     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off_hover.png
179     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off.png
180     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on.png
181     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on.png
182     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off_focus.png
183     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off_hover.png
184     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on_focus.png
185     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/radio.edc
186     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off.png
187     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on_hover.png
188     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_normal.png
189     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_press.png
190     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_focus.png
191     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_hover.png
192     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/button.edc
193     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/entry.edc
194     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_normal.png
195     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_focused.png
196     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_hovered.png
197     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_h.png
198     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_v.png
199     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_knob_v.png
200     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_knob_h.png
201     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar.edc
202     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_normal.png
203     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_press.png
204     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_hover.png
205     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_focus.png
206     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file.edc
207     ${WEBKIT_DIR}/efl/DefaultTheme/widget/progressbar/progressbar.edc
208     ${WEBKIT_DIR}/efl/DefaultTheme/widget/progressbar/shelf_inset.png
209     ${WEBKIT_DIR}/efl/DefaultTheme/widget/progressbar/bt_base.png
210   VERBATIM
211 )
212
213 LIST(APPEND WebKit_SOURCES
214      ${WebKit_THEME}
215 )
216
217 IF (SHARED_CORE)
218     SET(LIBS_PRIVATE "-l${WTF_LIBRARY_NAME} -l${JavaScriptCore_LIBRARY_NAME} -l${WebCore_LIBRARY_NAME}")
219 ELSE ()
220     SET(LIBS_PRIVATE "")
221 ENDIF ()
222
223 CONFIGURE_FILE(
224     efl/ewebkit.pc.in
225     ${CMAKE_BINARY_DIR}/WebKit/efl/ewebkit.pc
226     @ONLY)
227 INSTALL(FILES ${CMAKE_BINARY_DIR}/WebKit/efl/ewebkit.pc
228     DESTINATION lib/pkgconfig)
229
230 UNSET(LIBS_PRIVATE)
231
232 SET(EWebKit_HEADERS
233     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/EWebKit.h
234     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_auth.h
235     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_auth_soup.h
236     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_contextmenu.h
237     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_cookies.h
238     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_frame.h
239     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_history.h
240     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_js.h
241     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_logging.h
242     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_main.h
243     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_network.h
244     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_security_policy.h
245     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_settings.h
246     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_view.h
247     ${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_window_features.h
248 )
249
250 INSTALL(FILES ${EWebKit_HEADERS}
251         DESTINATION include/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR})
252
253 INSTALL(FILES ${WebKit_THEME}
254         DESTINATION ${DATA_INSTALL_DIR}/themes)