]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - package/webkitgtk/webkitgtk.mk
142f9766e7b47092450c4b8cf7d19f5212ae0630
[coffee/buildroot.git] / package / webkitgtk / webkitgtk.mk
1 ################################################################################
2 #
3 # webkitgtk
4 #
5 ################################################################################
6
7 WEBKITGTK_VERSION = 2.18.4
8 WEBKITGTK_SITE = http://www.webkitgtk.org/releases
9 WEBKITGTK_SOURCE = webkitgtk-$(WEBKITGTK_VERSION).tar.xz
10 WEBKITGTK_INSTALL_STAGING = YES
11 WEBKITGTK_LICENSE = LGPL-2.1+, BSD-2-Clause
12 WEBKITGTK_LICENSE_FILES = \
13         Source/WebCore/LICENSE-APPLE \
14         Source/WebCore/LICENSE-LGPL-2.1
15 WEBKITGTK_DEPENDENCIES = host-ruby host-flex host-bison host-gperf \
16         enchant harfbuzz icu jpeg libgcrypt libgtk3 libsecret libsoup \
17         libxml2 libxslt sqlite webp
18 WEBKITGTK_CONF_OPTS = \
19         -DENABLE_API_TESTS=OFF \
20         -DENABLE_GEOLOCATION=OFF \
21         -DENABLE_GTKDOC=OFF \
22         -DENABLE_INTROSPECTION=OFF \
23         -DENABLE_MINIBROWSER=ON \
24         -DENABLE_SPELLCHECK=ON \
25         -DPORT=GTK \
26         -DUSE_LIBNOTIFY=OFF \
27         -DUSE_LIBHYPHEN=OFF
28
29 # ARM needs NEON for JIT
30 # i386 & x86_64 don't seem to have any special requirements
31 ifeq ($(BR2_ARM_CPU_HAS_NEON)$(BR2_i386)$(BR2_x86_64),y)
32 WEBKITGTK_CONF_OPTS += -DENABLE_JIT=ON
33 else
34 WEBKITGTK_CONF_OPTS += -DENABLE_JIT=OFF
35 endif
36
37 ifeq ($(BR2_PACKAGE_WEBKITGTK_MULTIMEDIA),y)
38 WEBKITGTK_CONF_OPTS += \
39         -DENABLE_VIDEO=ON \
40         -DENABLE_WEB_AUDIO=ON
41 WEBKITGTK_DEPENDENCIES += gstreamer1 gst1-libav gst1-plugins-base gst1-plugins-good
42 else
43 # ENABLE_MEDIA_STREAM has to be explicitly disabled because there is a missing
44 # feature dependency in the WebKitGTK+ CMake files. This can be removed once
45 # https://bugs.webkit.org/show_bug.cgi?id=174940 makes it into a release.
46 WEBKITGTK_CONF_OPTS += \
47         -DENABLE_VIDEO=OFF \
48         -DENABLE_WEB_AUDIO=OFF \
49         -DENABLE_MEDIA_STREAM=OFF
50 endif
51
52 ifeq ($(BR2_PACKAGE_WEBKITGTK_WEBDRIVER),y)
53 WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=ON
54 else
55 WEBKITGTK_CONF_OPTS += -DENABLE_WEBDRIVER=OFF
56 endif
57
58 # Only one target platform can be built, assume X11 > Wayland
59
60 # GTK3-X11 target gives OpenGL from newer libgtk3 versions
61 # Consider this better than EGL + maybe GLESv2 since both can't be built
62 # 2D CANVAS acceleration requires OpenGL proper with cairo-gl
63 ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y)
64 WEBKITGTK_CONF_OPTS += \
65         -DENABLE_ACCELERATED_2D_CANVAS=ON \
66         -DENABLE_GLES2=OFF \
67         -DENABLE_OPENGL=ON \
68         -DENABLE_X11_TARGET=ON
69 WEBKITGTK_DEPENDENCIES += libgl \
70         xlib_libXcomposite xlib_libXdamage xlib_libXrender xlib_libXt
71 # It can use libgtk2 for npapi plugins
72 ifeq ($(BR2_PACKAGE_LIBGTK2),y)
73 WEBKITGTK_CONF_OPTS += -DENABLE_PLUGIN_PROCESS_GTK2=ON
74 WEBKITGTK_DEPENDENCIES += libgtk2
75 else
76 WEBKITGTK_CONF_OPTS += -DENABLE_PLUGIN_PROCESS_GTK2=OFF
77 endif
78 else # !X11
79 # GTK3-BROADWAY/WAYLAND needs at least EGL
80 WEBKITGTK_DEPENDENCIES += libegl
81 # GLESv2 support is optional though
82 ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y)
83 WEBKITGTK_CONF_OPTS += \
84         -DENABLE_GLES2=ON \
85         -DENABLE_OPENGL=ON
86 WEBKITGTK_DEPENDENCIES += libgles
87 else
88 # Disable general OpenGL (shading) if there's no GLESv2
89 WEBKITGTK_CONF_OPTS += \
90         -DENABLE_GLES2=OFF \
91         -DENABLE_OPENGL=OFF
92 endif
93 # We must explicitly state the wayland target
94 ifeq ($(BR2_PACKAGE_LIBGTK3_WAYLAND),y)
95 WEBKITGTK_CONF_OPTS += -DENABLE_WAYLAND_TARGET=ON
96 endif
97 endif
98
99 $(eval $(cmake-package))