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(USER_AGENT_VERSION_MAJOR 534) 12 SET(USER_AGENT_VERSION_MINOR 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.6 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 LIST(APPEND WTF_INCLUDE_DIRECTORIES ${ICU_INCLUDE_DIRS}) 48 49 SET(WTF_USE_CAIRO 1) 50 ADD_DEFINITIONS(-DWTF_USE_CAIRO=1) 51 52 SET(JSC_EXECUTABLE_NAME jsc_efl) 53 SET(WTF_LIBRARY_NAME wtf_efl) 54 SET(JavaScriptCore_LIBRARY_NAME javascriptcore_efl) 55 SET(WebCore_LIBRARY_NAME webcore_efl) 56 SET(WebKit_LIBRARY_NAME ewebkit) 57 58 SET(DATA_DIR ${CMAKE_INSTALL_PREFIX}/share/${WebKit_LIBRARY_NAME}-${PROJECT_VERSION_MAJOR}) 59 ADD_DEFINITIONS(-DDATA_DIR="${DATA_DIR}") 60 61 SET(VERSION_SCRIPT "-Wl,--version-script,${CMAKE_MODULE_PATH}/eflsymbols.filter") 62 63 WEBKIT_FEATURE(ENABLE_AS_IMAGE "Enable SVG as image" DEFAULT ON SVG) 64 WEBKIT_FEATURE(ENABLE_BLOB "Enable blob slice" DEFAULT OFF) 65 WEBKIT_FEATURE(ENABLE_CHANNEL_MESSAGING "Enable channel messaging" DEFAULT ON) 66 WEBKIT_FEATURE(ENABLE_DATABASE "Enable database" DEFAULT ON) 67 WEBKIT_FEATURE(ENABLE_DATAGRID "Enable datagrid" DEFAULT OFF) 68 WEBKIT_FEATURE(ENABLE_DATALIST "Enable datalist" DEFAULT ON HTML) 69 WEBKIT_FEATURE(ENABLE_DATA_TRANSFER_ITEMS "Enable data transfer items" DEFAULT OFF) 70 WEBKIT_FEATURE(ENABLE_DOM_STORAGE "Enable DOM storage" DEFAULT ON) 71 WEBKIT_FEATURE(ENABLE_EVENTSOURCE "Enable event source" DEFAULT ON) 72 WEBKIT_FEATURE(ENABLE_FAST_MALLOC "Enable TCmalloc instead of system's allocator" DEFAULT ON) 73 WEBKIT_FEATURE(ENABLE_FAST_MOBILE_SCROLLING "Enable fast mobile scrolling" DEFAULT ON) 74 WEBKIT_FEATURE(ENABLE_FILTERS "Enable SVG filters" DEFAULT ON SVG) 75 WEBKIT_FEATURE(ENABLE_FTPDIR "Enable FTP directory support" DEFAULT ON) 76 WEBKIT_FEATURE(ENABLE_GEOLOCATION "Enable geolocation" DEFAULT OFF) 77 WEBKIT_FEATURE(ENABLE_GLIB_SUPPORT "Enable Glib support" DEFAULT ON) 78 WEBKIT_FEATURE(ENABLE_ICONDATABASE "Enable icon database" DEFAULT ON) 79 WEBKIT_FEATURE(ENABLE_INSPECTOR "Enable inspector" DEFAULT ON) 80 WEBKIT_FEATURE(ENABLE_JAVASCRIPT_DEBUGGER "Enable JavaScript debugger" DEFAULT ON) 81 WEBKIT_FEATURE(ENABLE_JIT "Enable JIT code" DEFAULT ON) 82 WEBKIT_FEATURE(ENABLE_MATHML "Enable MathML" DEFAULT ON) 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_OFFLINE_WEB_APPLICATIONS "Enable offline web applications" DEFAULT ON) 86 WEBKIT_FEATURE(ENABLE_ORIENTATION_EVENTS "Enable orientation events" DEFAULT OFF) 87 WEBKIT_FEATURE(ENABLE_PROGRESS_TAG "Enable progress tag" DEFAULT OFF) 88 WEBKIT_FEATURE(ENABLE_SHARED_WORKERS "Enable shared workers" DEFAULT ON) 89 WEBKIT_FEATURE(ENABLE_SVG "Enable SVG" DEFAULT ON) 90 WEBKIT_FEATURE(ENABLE_SVG_ANIMATION "Enable SVG animation" DEFAULT ON SVG) 91 WEBKIT_FEATURE(ENABLE_SVG_FONTS "Enable SVG fonts" DEFAULT ON SVG) 92 WEBKIT_FEATURE(ENABLE_SVG_FOREIGN_OBJECT "Enable SVG foreign object" DEFAULT ON SVG) 93 WEBKIT_FEATURE(ENABLE_SVG_USE "Enable SVG use" DEFAULT ON SVG) 94 WEBKIT_FEATURE(ENABLE_TOUCH_EVENTS "Enable Touch Events" DEFAULT OFF) 95 WEBKIT_FEATURE(ENABLE_VIDEO "Enable video" DEFAULT ON HTML) 96 WEBKIT_FEATURE(ENABLE_WEB_SOCKETS "Enable web sockets" DEFAULT OFF) 97 WEBKIT_FEATURE(ENABLE_WML "Enable WML" DEFAULT OFF) 98 WEBKIT_FEATURE(ENABLE_WORKERS "Enable workers" DEFAULT ON) 99 WEBKIT_FEATURE(ENABLE_XHTMLMP "Enable XHTMLMP" DEFAULT OFF) 100 WEBKIT_FEATURE(ENABLE_XPATH "Enable XPath" DEFAULT ON) 101 WEBKIT_FEATURE(ENABLE_XSLT "Enable XSLT" DEFAULT ON) 102 103 OPTION(ENABLE_ECORE_X "Enable Ecore_X specific usage (cursor, bell)" ON) 104 IF (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 () 111 ENDIF () 112 113 IF (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) 121 ELSE () 122 FIND_PACKAGE(CURL REQUIRED) 123 SET(WTF_USE_CURL 1) 124 ADD_DEFINITIONS(-DWTF_USE_CURL=1) 125 ENDIF () 126 127 IF (FONT_BACKEND STREQUAL "freetype") 128 FIND_PACKAGE(Freetype 9.0 REQUIRED) 129 SET(WTF_USE_FREETYPE 1) 130 ADD_DEFINITIONS(-DWTF_USE_FREETYPE=1) 131 ELSE () 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 () 140 ENDIF () 141 142 IF (ENABLE_VIDEO) 143 SET(ENABLE_GLIB_SUPPORT 1) 144 MESSAGE("Forcing Glib support") 145 ENDIF() 146 147 IF (ENABLE_GLIB_SUPPORT) 148 FIND_PACKAGE(Glib REQUIRED) 149 FIND_PACKAGE(Gthread REQUIRED) 150 ENDIF () 151 152 IF (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) 162 ENDIF() 163 164 SET(CPACK_SOURCE_GENERATOR TBZ2) 165