Always enable ENABLE(XPATH)
[WebKit.git] / Source / cmake / OptionsEfl.cmake
1 SET(PROJECT_VERSION_MAJOR 0)
2 SET(PROJECT_VERSION_MINOR 1)
3 SET(PROJECT_VERSION_PATCH 0)
4 SET(PROJECT_VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH})
5
6 # -----------------------------------------------------------------------------
7 # We mention Safari version because many sites check for it.
8 # Sync with Source/WebCore/Configurations/Version.xcconfig whenever Safari is
9 # version up.
10 # -----------------------------------------------------------------------------
11 SET(WEBKIT_USER_AGENT_MAJOR_VERSION 534)
12 SET(WEBKIT_USER_AGENT_MINOR_VERSION 16)
13
14 ADD_DEFINITIONS(-DWTF_PLATFORM_EFL=1)
15 SET(WTF_PLATFORM_EFL 1)
16
17 # -----------------------------------------------------------------------------
18 # Determine which network backend will be used
19 # -----------------------------------------------------------------------------
20 SET(ALL_NETWORK_BACKENDS soup curl)
21 SET(NETWORK_BACKEND "soup" CACHE STRING "choose which network backend to use (one of ${ALL_NETWORK_BACKENDS})")
22
23 # -----------------------------------------------------------------------------
24 # Determine which font backend will be used
25 # -----------------------------------------------------------------------------
26 SET(ALL_FONT_BACKENDS freetype pango)
27 SET(FONT_BACKEND "freetype" CACHE STRING "choose which network backend to use (one of ${ALL_FONT_BACKENDS})")
28
29 FIND_PACKAGE(Cairo 1.10 REQUIRED)
30 FIND_PACKAGE(EFL REQUIRED)
31 FIND_PACKAGE(Fontconfig 2.8.0 REQUIRED)
32 FIND_PACKAGE(Sqlite REQUIRED)
33 FIND_PACKAGE(LibXml2 2.6 REQUIRED)
34 FIND_PACKAGE(LibXslt 1.1.7 REQUIRED)
35 FIND_PACKAGE(ICU REQUIRED)
36 FIND_PACKAGE(Threads REQUIRED)
37 FIND_PACKAGE(JPEG REQUIRED)
38 FIND_PACKAGE(PNG REQUIRED)
39
40 ADD_DEFINITIONS(-DENABLE_CONTEXT_MENUS=0)
41
42 SET(WTF_USE_PTHREADS 1)
43 ADD_DEFINITIONS(-DWTF_USE_PTHREADS=1)
44
45 SET(WTF_USE_ICU_UNICODE 1)
46 ADD_DEFINITIONS(-DWTF_USE_ICU_UNICODE=1)
47
48 SET(WTF_USE_CAIRO 1)
49 ADD_DEFINITIONS(-DWTF_USE_CAIRO=1)
50
51 SET(JSC_EXECUTABLE_NAME jsc_efl)
52 SET(WTF_LIBRARY_NAME wtf_efl)
53 SET(JavaScriptCore_LIBRARY_NAME javascriptcore_efl)
54 SET(WebCore_LIBRARY_NAME webcore_efl)
55 SET(WebKit_LIBRARY_NAME ewebkit)
56
57 SET(DATA_DIR ${CMAKE_INSTALL_PREFIX}/share/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR})
58 ADD_DEFINITIONS(-DDATA_DIR="${DATA_DIR}")
59
60 SET(VERSION_SCRIPT "-Wl,--version-script,${CMAKE_MODULE_PATH}/eflsymbols.filter")
61
62 WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT OFF)
63 WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT ON)
64 WEBKIT_FEATURE(ENABLE_SQL_DATABASE "Enable SQL database" DEFAULT ON)
65 WEBKIT_FEATURE(ENABLE_DATAGRID "Enable datagrid" DEFAULT OFF)
66 WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT ON HTML)
67 WEBKIT_FEATURE(ENABLE_DATA_TRANSFER_ITEMS "Enable data transfer items" DEFAULT OFF)
68 WEBKIT_FEATURE(ENABLE_DEVICE_ORIENTATION "Enable device orientation" DEFAULT OFF)
69 WEBKIT_FEATURE(ENABLE_FAST_MALLOC "Enable TCmalloc instead of system's allocator" DEFAULT ON)
70 WEBKIT_FEATURE(ENABLE_FAST_MOBILE_SCROLLING "Enable fast mobile scrolling" DEFAULT ON)
71 WEBKIT_FEATURE(ENABLE_FILTERS "Enable SVG filters" DEFAULT ON SVG)
72 WEBKIT_FEATURE(ENABLE_FTPDIR "Enable FTP directory support" DEFAULT ON)
73 WEBKIT_FEATURE(ENABLE_FULLSCREEN_API "Enable Fullscreen API support" DEFAULT OFF)
74 WEBKIT_FEATURE(ENABLE_GEOLOCATION "Enable geolocation" DEFAULT OFF)
75 WEBKIT_FEATURE(ENABLE_GLIB_SUPPORT "Enable Glib support" DEFAULT ON)
76 WEBKIT_FEATURE(ENABLE_ICONDATABASE "Enable icon database" DEFAULT ON)
77 WEBKIT_FEATURE(ENABLE_INSPECTOR "Enable inspector" DEFAULT ON)
78 WEBKIT_FEATURE(ENABLE_JAVASCRIPT_DEBUGGER "Enable JavaScript debugger" DEFAULT ON)
79 WEBKIT_FEATURE(ENABLE_JIT "Enable JIT code" DEFAULT ON)
80 WEBKIT_FEATURE(ENABLE_MATHML "Enable MathML" DEFAULT ON)
81 WEBKIT_FEATURE(ENABLE_METER_TAG "Enable Meter tag" DEFAULT ON)
82 WEBKIT_FEATURE(ENABLE_MICRODATA "Enable HTML5 microdata support" DEFAULT OFF)
83 WEBKIT_FEATURE(ENABLE_NETSCAPE_PLUGIN_API "Enable Netscape plugin API" DEFAULT OFF)
84 WEBKIT_FEATURE(ENABLE_NOTIFICATIONS "Enable notifications" DEFAULT OFF)
85 WEBKIT_FEATURE(ENABLE_ORIENTATION_EVENTS "Enable orientation events" DEFAULT OFF)
86 WEBKIT_FEATURE(ENABLE_PROGRESS_TAG "Enable progress tag" DEFAULT ON)
87 WEBKIT_FEATURE(ENABLE_SHARED_WORKERS "Enable shared workers" DEFAULT ON)
88 WEBKIT_FEATURE(ENABLE_SVG "Enable SVG" DEFAULT ON)
89 WEBKIT_FEATURE(ENABLE_SVG_FONTS "Enable SVG fonts" DEFAULT ON SVG)
90 WEBKIT_FEATURE(ENABLE_TOUCH_EVENTS "Enable Touch Events" DEFAULT OFF)
91 WEBKIT_FEATURE(ENABLE_TOUCH_ICON_LOADING "Enable Touch Icon Loading" DEFAULT OFF)
92 WEBKIT_FEATURE(ENABLE_VIDEO "Enable video" DEFAULT ON HTML)
93 WEBKIT_FEATURE(ENABLE_WEB_SOCKETS "Enable web sockets" DEFAULT ON)
94 WEBKIT_FEATURE(ENABLE_WORKERS "Enable workers" DEFAULT ON)
95 WEBKIT_FEATURE(ENABLE_XSLT "Enable XSLT" DEFAULT ON)
96 WEBKIT_FEATURE(ENABLE_DFG_JIT "Enable DFG JIT" DEFAULT OFF)
97
98 OPTION(ENABLE_ECORE_X "Enable Ecore_X specific usage (cursor, bell)" ON)
99 IF (ENABLE_ECORE_X)
100     IF (ECORE_X_FOUND)
101         MESSAGE(STATUS "Using Ecore-X to provide extended support.")
102         ADD_DEFINITIONS(-DHAVE_ECORE_X)
103     ELSE ()
104         MESSAGE(ERROR "Requested Ecore-X but it was not found!")
105     ENDIF ()
106 ENDIF ()
107
108 IF (NETWORK_BACKEND STREQUAL "soup")
109   IF (NOT ENABLE_GLIB_SUPPORT)
110     SET(ENABLE_GLIB_SUPPORT 1)
111     MESSAGE("Forcing Glib support")
112   ENDIF ()
113   FIND_PACKAGE(LibSoup2 2.33.4 REQUIRED)
114   SET(WTF_USE_SOUP 1)
115   ADD_DEFINITIONS(-DWTF_USE_SOUP=1)
116 ELSE ()
117   FIND_PACKAGE(CURL REQUIRED)
118   FIND_PACKAGE(ZLIB REQUIRED)
119   SET(WTF_USE_CURL 1)
120   ADD_DEFINITIONS(-DWTF_USE_CURL=1)
121 ENDIF ()
122
123 IF (FONT_BACKEND STREQUAL "freetype")
124   FIND_PACKAGE(Freetype REQUIRED)
125   SET(WTF_USE_FREETYPE 1)
126   ADD_DEFINITIONS(-DWTF_USE_FREETYPE=1)
127 ELSE ()
128   FIND_PACKAGE(Pango REQUIRED)
129   SET(WTF_USE_PANGO 1)
130   ADD_DEFINITIONS(-DWTF_USE_PANGO=1)
131
132   IF (NOT ENABLE_GLIB_SUPPORT)
133     SET(ENABLE_GLIB_SUPPORT 1)
134     MESSAGE("Forcing Glib support")
135   ENDIF ()
136 ENDIF ()
137
138 IF (ENABLE_VIDEO)
139   SET(ENABLE_GLIB_SUPPORT 1)
140   MESSAGE("Forcing Glib support")
141 ENDIF()
142
143 IF (ENABLE_GLIB_SUPPORT)
144   FIND_PACKAGE(Glib REQUIRED)
145   FIND_PACKAGE(Gthread REQUIRED)
146 ENDIF ()
147
148 IF (ENABLE_VIDEO)
149   FIND_PACKAGE(GStreamer REQUIRED)
150   FIND_PACKAGE(GStreamer-App REQUIRED)
151   FIND_PACKAGE(GStreamer-Base REQUIRED)
152   FIND_PACKAGE(GStreamer-Pbutils REQUIRED)
153   FIND_PACKAGE(GStreamer-Interfaces REQUIRED)
154   FIND_PACKAGE(GStreamer-Plugins-Base REQUIRED)
155   FIND_PACKAGE(GStreamer-Video REQUIRED)
156   SET(WTF_USE_GSTREAMER 1)
157   ADD_DEFINITIONS(-DWTF_USE_GSTREAMER=1)
158 ENDIF()
159
160 SET(CPACK_SOURCE_GENERATOR TBZ2)