2010-09-04 Lucas De Marchi <lucas.demarchi@profusion.mobi>
[WebKit-https.git] / WebKit / efl / CMakeListsEfl.txt
1 INCLUDE(WebKitEfl)
2
3 LIST(APPEND WebKit_LINK_FLAGS
4     ${ECORE_X_LDFLAGS}
5     ${EDJE_LDFLAGS}
6     ${EFLDEPS_LDFLAGS}
7     ${EVAS_LDFLAGS}
8 )
9
10 LIST(APPEND WebKit_INCLUDE_DIRECTORIES
11     "${WEBKIT_DIR}/efl/ewk"
12     "${WEBKIT_DIR}/efl/WebCoreSupport"
13     "${WEBCORE_DIR}/platform/efl"
14     ${Cairo_INCLUDE_DIRS}
15     ${ECORE_X_INCLUDE_DIRS}
16     ${EDJE_INCLUDE_DIRS}
17     ${EFLDEPS_INCLUDE_DIRS}
18     ${EVAS_INCLUDE_DIRS}
19     ${LIBXML2_INCLUDE_DIRS}
20     ${LIBXSLT_INCLUDE_DIRS}
21     ${SQLITE_INCLUDE_DIRS}
22 )
23
24 IF (ENABLE_VIDEO)
25 LIST(APPEND WebKit_INCLUDE_DIRECTORIES
26     "${WEBCORE_DIR}/platform/graphics/gstreamer"
27     ${Gstreamer-App_INCLUDE_DIRS}
28     ${Gstreamer-Interfaces_INCLUDE_DIRS}
29     ${Gstreamer-Pbutils_INCLUDE_DIRS}
30     ${Gstreamer-Video_INCLUDE_DIRS}
31 )
32 ENDIF()
33
34 LIST(APPEND WebKit_SOURCES
35     efl/WebCoreSupport/ChromeClientEfl.cpp
36     efl/WebCoreSupport/ContextMenuClientEfl.cpp
37     efl/WebCoreSupport/DragClientEfl.cpp
38     efl/WebCoreSupport/EditorClientEfl.cpp
39     efl/WebCoreSupport/FrameLoaderClientEfl.cpp
40     efl/WebCoreSupport/FullscreenVideoControllerEfl.cpp
41     efl/WebCoreSupport/InspectorClientEfl.cpp
42
43     efl/ewk/ewk_contextmenu.cpp
44     efl/ewk/ewk_cookies.cpp
45     efl/ewk/ewk_frame.cpp
46     efl/ewk/ewk_history.cpp
47     efl/ewk/ewk_main.cpp
48     efl/ewk/ewk_settings.cpp
49     efl/ewk/ewk_util.cpp
50     efl/ewk/ewk_view.cpp
51     efl/ewk/ewk_view_single.c
52     efl/ewk/ewk_window_features.cpp
53 )
54
55 LIST(APPEND WebKit_LIBRARIES
56     ${Cairo_LIBRARIES}
57     ${ECORE_X_LIBRARIES}
58     ${EFLDEPS_LIBRARIES}
59     ${Freetype_LIBRARIES}
60     ${LIBXML2_LIBRARIES}
61     ${Pango_LIBRARIES}
62     ${SQLITE_LIBRARIES}
63     ${FONTCONFIG_LIBRARIES}
64     ${PNG_LIBRARY}
65     ${JPEG_LIBRARY}
66     ${CMAKE_DL_LIBS}
67 )
68
69 IF (ENABLE_GLIB_SUPPORT)
70   LIST(APPEND WebKit_INCLUDE_DIRECTORIES
71     ${Gdk_INCLUDE_DIRS}
72     ${Glib_INCLUDE_DIRS}
73     ${JAVASCRIPTCORE_DIR}/wtf/gobject
74   )
75   LIST(APPEND WebKit_LIBRARIES
76     ${Glib_LIBRARIES}
77     ${Gdk_LIBRARIES}
78   )
79 ENDIF ()
80
81 IF (WTF_USE_SOUP)
82   LIST(APPEND WebKit_INCLUDE_DIRECTORIES ${LIBSOUP24_INCLUDE_DIRS})
83   LIST(APPEND WebKit_LIBRARIES ${LIBSOUP24_LIBRARIES})
84 ENDIF ()
85
86 IF (WTF_USE_CURL)
87   LIST(APPEND WebKit_INCLUDE_DIRECTORIES ${CURL_INCLUDE_DIRS})
88   LIST(APPEND WebKit_LIBRARIES ${CURL_LIBRARIES})
89 ENDIF ()
90
91 FILE(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/WebKit/efl/DefaultTheme)
92 SET(WebKit_THEME ${CMAKE_BINARY_DIR}/WebKit/efl/DefaultTheme/default.edj)
93 ADD_CUSTOM_COMMAND(
94   OUTPUT ${WebKit_THEME}
95   COMMAND ${EDJE_CC_EXECUTABLE} -v -id ${WEBKIT_DIR}/efl/DefaultTheme ${WEBKIT_DIR}/efl/DefaultTheme/default.edc ${WebKit_THEME}
96   DEPENDS
97     ${WEBKIT_DIR}/efl/DefaultTheme/default.edc
98     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_v.png
99     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_press_v.png
100     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_v.png
101     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider.edc
102     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_press_h.png
103     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_knob_h.png
104     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_fill_v.png
105     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_fill_h.png
106     ${WEBKIT_DIR}/efl/DefaultTheme/widget/slider/slider_h.png
107     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_focus_button.png
108     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_press.png
109     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/icon.png
110     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_normal.png
111     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_hover.png
112     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_normal_button.png
113     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_focus.png
114     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_hover_button.png
115     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo.edc
116     ${WEBKIT_DIR}/efl/DefaultTheme/widget/combo/combo_press_button.png
117     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/decoration/search_decoration.edc
118     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/decoration/decoration_normal_button.png
119     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_hovered.png
120     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/search_field.edc
121     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_normal.png
122     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/field/field_focused.png
123     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/cancel_normal_button.png
124     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/cancel_normal_button2.png
125     ${WEBKIT_DIR}/efl/DefaultTheme/widget/search/cancel/search_cancel.edc
126     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off_focus.png
127     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/check.edc
128     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on_focus.png
129     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on_hover.png
130     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off_hover.png
131     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_off.png
132     ${WEBKIT_DIR}/efl/DefaultTheme/widget/check/img_check_on.png
133     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on.png
134     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off_focus.png
135     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off_hover.png
136     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on_focus.png
137     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/radio.edc
138     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_off.png
139     ${WEBKIT_DIR}/efl/DefaultTheme/widget/radio/img_radio_on_hover.png
140     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_normal.png
141     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_press.png
142     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_focus.png
143     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/img_button_hover.png
144     ${WEBKIT_DIR}/efl/DefaultTheme/widget/button/button.edc
145     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/entry.edc
146     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_normal.png
147     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_focused.png
148     ${WEBKIT_DIR}/efl/DefaultTheme/widget/entry/img_hovered.png
149     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_h.png
150     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_v.png
151     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_knob_v.png
152     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar_knob_h.png
153     ${WEBKIT_DIR}/efl/DefaultTheme/widget/scrollbar/scrollbar.edc
154     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_normal.png
155     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_press.png
156     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_hover.png
157     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file_focus.png
158     ${WEBKIT_DIR}/efl/DefaultTheme/widget/file/file.edc
159   VERBATIM
160 )
161
162 IF (SHARED_CORE)
163     SET(LIBS_PRIVATE "-l${WTF_LIBRARY_NAME} -l${JavaScriptCore_LIBRARY_NAME} -l${WebCore_LIBRARY_NAME}")
164 ELSE ()
165     SET(LIBS_PRIVATE "")
166 ENDIF ()
167
168 CONFIGURE_FILE(
169     efl/ewebkit.pc.in
170     ${CMAKE_BINARY_DIR}/WebKit/efl/ewebkit.pc
171     @ONLY)
172 INSTALL(FILES ${CMAKE_BINARY_DIR}/WebKit/efl/ewebkit.pc
173     DESTINATION lib/pkgconfig)
174
175 UNSET(LIBS_PRIVATE)
176
177 FILE(GLOB EWebKit_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/*.h")
178 LIST(REMOVE_ITEM EWebKit_HEADERS "${CMAKE_CURRENT_SOURCE_DIR}/efl/ewk/ewk_private.h")
179
180 INSTALL(FILES ${EWebKit_HEADERS}
181         DESTINATION include/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR})
182
183 INSTALL(FILES ${WebKit_THEME}
184         DESTINATION share/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}/themes)