• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1SET(PROJECT_VERSION_MAJOR 0)
2SET(PROJECT_VERSION_MINOR 1)
3SET(PROJECT_VERSION_PATCH 0)
4SET(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# -----------------------------------------------------------------------------
11SET(USER_AGENT_VERSION_MAJOR 534)
12SET(USER_AGENT_VERSION_MINOR 16)
13
14ADD_DEFINITIONS(-DWTF_PLATFORM_EFL=1)
15SET(WTF_PLATFORM_EFL 1)
16
17# -----------------------------------------------------------------------------
18# Determine which network backend will be used
19# -----------------------------------------------------------------------------
20SET(ALL_NETWORK_BACKENDS soup curl)
21SET(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# -----------------------------------------------------------------------------
26SET(ALL_FONT_BACKENDS freetype pango)
27SET(FONT_BACKEND "freetype" CACHE STRING "choose which network backend to use (one of ${ALL_FONT_BACKENDS})")
28
29FIND_PACKAGE(Cairo 1.6 REQUIRED)
30FIND_PACKAGE(EFL REQUIRED)
31FIND_PACKAGE(Fontconfig 2.8.0 REQUIRED)
32FIND_PACKAGE(Sqlite REQUIRED)
33FIND_PACKAGE(LibXml2 2.6 REQUIRED)
34FIND_PACKAGE(LibXslt 1.1.7 REQUIRED)
35FIND_PACKAGE(ICU REQUIRED)
36FIND_PACKAGE(Threads REQUIRED)
37FIND_PACKAGE(JPEG REQUIRED)
38FIND_PACKAGE(PNG REQUIRED)
39
40ADD_DEFINITIONS(-DENABLE_CONTEXT_MENUS=0)
41
42SET(WTF_USE_PTHREADS 1)
43ADD_DEFINITIONS(-DWTF_USE_PTHREADS=1)
44
45SET(WTF_USE_ICU_UNICODE 1)
46ADD_DEFINITIONS(-DWTF_USE_ICU_UNICODE=1)
47LIST(APPEND WTF_INCLUDE_DIRECTORIES ${ICU_INCLUDE_DIRS})
48
49SET(WTF_USE_CAIRO 1)
50ADD_DEFINITIONS(-DWTF_USE_CAIRO=1)
51
52SET(JSC_EXECUTABLE_NAME jsc_efl)
53SET(WTF_LIBRARY_NAME wtf_efl)
54SET(JavaScriptCore_LIBRARY_NAME javascriptcore_efl)
55SET(WebCore_LIBRARY_NAME webcore_efl)
56SET(WebKit_LIBRARY_NAME ewebkit)
57
58SET(DATA_DIR ${CMAKE_INSTALL_PREFIX}/share/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR})
59ADD_DEFINITIONS(-DDATA_DIR="${DATA_DIR}")
60
61SET(VERSION_SCRIPT "-Wl,--version-script,${CMAKE_MODULE_PATH}/eflsymbols.filter")
62
63WEBKIT_FEATURE(ENABLE_AS_IMAGE "Enable SVG as image" DEFAULT ON SVG)
64WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT OFF)
65WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT ON)
66WEBKIT_FEATURE(ENABLE_DATABASE "Enable database" DEFAULT ON)
67WEBKIT_FEATURE(ENABLE_DATAGRID "Enable datagrid" DEFAULT OFF)
68WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT ON HTML)
69WEBKIT_FEATURE(ENABLE_DATA_TRANSFER_ITEMS "Enable data transfer items" DEFAULT OFF)
70WEBKIT_FEATURE(ENABLE_DOM_STORAGE "Enable DOM storage" DEFAULT ON)
71WEBKIT_FEATURE(ENABLE_EVENTSOURCE "Enable event source" DEFAULT ON)
72WEBKIT_FEATURE(ENABLE_FAST_MALLOC "Enable TCmalloc instead of system's allocator" DEFAULT ON)
73WEBKIT_FEATURE(ENABLE_FAST_MOBILE_SCROLLING "Enable fast mobile scrolling" DEFAULT ON)
74WEBKIT_FEATURE(ENABLE_FILTERS "Enable SVG filters" DEFAULT ON SVG)
75WEBKIT_FEATURE(ENABLE_FTPDIR "Enable FTP directory support" DEFAULT ON)
76WEBKIT_FEATURE(ENABLE_GEOLOCATION "Enable geolocation" DEFAULT OFF)
77WEBKIT_FEATURE(ENABLE_GLIB_SUPPORT "Enable Glib support" DEFAULT ON)
78WEBKIT_FEATURE(ENABLE_ICONDATABASE "Enable icon database" DEFAULT ON)
79WEBKIT_FEATURE(ENABLE_INSPECTOR "Enable inspector" DEFAULT ON)
80WEBKIT_FEATURE(ENABLE_JAVASCRIPT_DEBUGGER "Enable JavaScript debugger" DEFAULT ON)
81WEBKIT_FEATURE(ENABLE_JIT "Enable JIT code" DEFAULT ON)
82WEBKIT_FEATURE(ENABLE_MATHML "Enable MathML" DEFAULT ON)
83WEBKIT_FEATURE(ENABLE_NETSCAPE_PLUGIN_API "Enable Netscape plugin API" DEFAULT OFF)
84WEBKIT_FEATURE(ENABLE_NOTIFICATIONS "Enable notifications" DEFAULT OFF)
85WEBKIT_FEATURE(ENABLE_OFFLINE_WEB_APPLICATIONS "Enable offline web applications" DEFAULT ON)
86WEBKIT_FEATURE(ENABLE_ORIENTATION_EVENTS "Enable orientation events" DEFAULT OFF)
87WEBKIT_FEATURE(ENABLE_PROGRESS_TAG "Enable progress tag" DEFAULT OFF)
88WEBKIT_FEATURE(ENABLE_SHARED_WORKERS "Enable shared workers" DEFAULT ON)
89WEBKIT_FEATURE(ENABLE_SVG "Enable SVG" DEFAULT ON)
90WEBKIT_FEATURE(ENABLE_SVG_ANIMATION "Enable SVG animation" DEFAULT ON SVG)
91WEBKIT_FEATURE(ENABLE_SVG_FONTS "Enable SVG fonts" DEFAULT ON SVG)
92WEBKIT_FEATURE(ENABLE_SVG_FOREIGN_OBJECT "Enable SVG foreign object" DEFAULT ON SVG)
93WEBKIT_FEATURE(ENABLE_SVG_USE "Enable SVG use" DEFAULT ON SVG)
94WEBKIT_FEATURE(ENABLE_TOUCH_EVENTS "Enable Touch Events" DEFAULT OFF)
95WEBKIT_FEATURE(ENABLE_VIDEO "Enable video" DEFAULT ON HTML)
96WEBKIT_FEATURE(ENABLE_WEB_SOCKETS "Enable web sockets" DEFAULT OFF)
97WEBKIT_FEATURE(ENABLE_WML "Enable WML" DEFAULT OFF)
98WEBKIT_FEATURE(ENABLE_WORKERS "Enable workers" DEFAULT ON)
99WEBKIT_FEATURE(ENABLE_XHTMLMP "Enable XHTMLMP" DEFAULT OFF)
100WEBKIT_FEATURE(ENABLE_XPATH "Enable XPath" DEFAULT ON)
101WEBKIT_FEATURE(ENABLE_XSLT "Enable XSLT" DEFAULT ON)
102
103OPTION(ENABLE_ECORE_X "Enable Ecore_X specific usage (cursor, bell)" ON)
104IF (ENABLE_ECORE_X)
105    IF (ECORE_X_FOUND)
106        MESSAGE(STATUS "Using Ecore-X to provide extended support.")
107        ADD_DEFINITIONS(-DHAVE_ECORE_X)
108    ELSE ()
109        MESSAGE(ERROR "Requested Ecore-X but it was not found!")
110    ENDIF ()
111ENDIF ()
112
113IF (NETWORK_BACKEND STREQUAL "soup")
114  IF (NOT ENABLE_GLIB_SUPPORT)
115    SET(ENABLE_GLIB_SUPPORT 1)
116    MESSAGE("Forcing Glib support")
117  ENDIF ()
118  FIND_PACKAGE(LibSoup2 2.33.4 REQUIRED)
119  SET(WTF_USE_SOUP 1)
120  ADD_DEFINITIONS(-DWTF_USE_SOUP=1)
121ELSE ()
122  FIND_PACKAGE(CURL REQUIRED)
123  SET(WTF_USE_CURL 1)
124  ADD_DEFINITIONS(-DWTF_USE_CURL=1)
125ENDIF ()
126
127IF (FONT_BACKEND STREQUAL "freetype")
128  FIND_PACKAGE(Freetype 9.0 REQUIRED)
129  SET(WTF_USE_FREETYPE 1)
130  ADD_DEFINITIONS(-DWTF_USE_FREETYPE=1)
131ELSE ()
132  FIND_PACKAGE(Pango REQUIRED)
133  SET(WTF_USE_PANGO 1)
134  ADD_DEFINITIONS(-DWTF_USE_PANGO=1)
135
136  IF (NOT ENABLE_GLIB_SUPPORT)
137    SET(ENABLE_GLIB_SUPPORT 1)
138    MESSAGE("Forcing Glib support")
139  ENDIF ()
140ENDIF ()
141
142IF (ENABLE_VIDEO)
143  SET(ENABLE_GLIB_SUPPORT 1)
144  MESSAGE("Forcing Glib support")
145ENDIF()
146
147IF (ENABLE_GLIB_SUPPORT)
148  FIND_PACKAGE(Glib REQUIRED)
149  FIND_PACKAGE(Gthread REQUIRED)
150ENDIF ()
151
152IF (ENABLE_VIDEO)
153  FIND_PACKAGE(GStreamer REQUIRED)
154  FIND_PACKAGE(GStreamer-App REQUIRED)
155  FIND_PACKAGE(GStreamer-Base REQUIRED)
156  FIND_PACKAGE(GStreamer-Pbutils REQUIRED)
157  FIND_PACKAGE(GStreamer-Interfaces REQUIRED)
158  FIND_PACKAGE(GStreamer-Plugins-Base REQUIRED)
159  FIND_PACKAGE(GStreamer-Video REQUIRED)
160  SET(WTF_USE_GSTREAMER 1)
161  ADD_DEFINITIONS(-DWTF_USE_GSTREAMER=1)
162ENDIF()
163
164SET(CPACK_SOURCE_GENERATOR TBZ2)
165