harfbuzz: security bump to version 1.4.4
[buildroot-gz.git] / package / efl / Config.in
blob5e89af602c662440eac5c4f1ac8f73150e6039d8
1 config BR2_PACKAGE_EFL
2         bool "efl"
3          # g++ issue with 4.4.5, tested with g++ 4.7.2
4         depends on BR2_HOST_GCC_AT_LEAST_4_7
5         depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
6         depends on BR2_INSTALL_LIBSTDCPP
7         depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS # luajit
8         depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads
9         depends on BR2_USE_MMU
10         depends on BR2_USE_WCHAR # use wchar_t
11         depends on !BR2_STATIC_LIBS # dlfcn.h
12         select BR2_PACKAGE_DBUS
13         select BR2_PACKAGE_FREETYPE
14         select BR2_PACKAGE_JPEG # Emile needs libjpeg
15         select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency
16         # https://phab.enlightenment.org/T2728
17         select BR2_PACKAGE_LUAJIT # Lua support broken
18         select BR2_PACKAGE_LZ4
19         select BR2_PACKAGE_ZLIB
20         help
21           Enlightenment Foundation Libraries
23           https://enlightenment.org
25 if BR2_PACKAGE_EFL
27 config BR2_PACKAGE_EFL_BULLET
28         bool "Enable bullet support (recommended)"
29         select BR2_PACKAGE_BULLET
30         default y
31         help
32           If you have chosen to disable physics support, this disables
33           lots of core functionality and is effectively never
34           tested. You are going to find features that suddenly don't
35           work and as a result cause a series of breakages. This is
36           simply not tested so you are on your own in terms of
37           ensuring everything works if you do this.
39 config BR2_PACKAGE_EFL_EEZE
40         bool "Enable eeze (udev) support (recommended)"
41         depends on BR2_PACKAGE_HAS_UDEV # libudev
42         default y
43         help
44           Eeze is EFL's hardware abstraction layer on top of udev.
45           Having it off will disable some hardware detection, such as
46           'drm' graphics engine or 'elput', as well as mounting
47           removable media.
49 comment "eeze needs udev /dev management"
50         depends on !BR2_PACKAGE_HAS_UDEV
52 config BR2_PACKAGE_EFL_FONTCONFIG
53         bool "Enable fontconfig support (recommended)"
54         select BR2_PACKAGE_FONTCONFIG
55         default y
56         help
57           If fontconfig is disabled, this is going to make general
58           font searching not work, and only some very direct 'load
59           /path/file.ttf' will work alongside some old-school ttf file
60           path searching. This is very likely not what you want, so
61           highly reconsider turning fontconfig off. Having it off will
62           lead to visual problems like missing text in many UI areas
63           etc...
65 config BR2_PACKAGE_EFL_GSTREAMER1
66         bool "Enable gstreamer1 support (recommended)"
67         select BR2_PACKAGE_GSTREAMER1
68         select BR2_PACKAGE_GST1_PLUGINS_BASE
69         default y
70         help
71           If Gstreamer 1.x support is disabled, it will heavily limit
72           your media support options and render some functionality as
73           useless, leading to visible application bugs.
75 config BR2_PACKAGE_EFL_LIBFRIBIDI
76         bool "Enable libfribidi support (recommended)"
77         select BR2_PACKAGE_LIBFRIBIDI
78         default y
79         help
80           Fribidi is used for handling right-to-left text (like
81           Arabic, Hebrew, Farsi, Persian etc.) and is very likely not
82           a feature you want to disable unless you know for absolute
83           certain you will never encounter and have to display such
84           scripts. Also note that we don't test with fribidi disabled
85           so you may also trigger code paths with bugs that are never
86           normally used.
88 config BR2_PACKAGE_EFL_LIBSNDFILE
89         bool "Enable libsndfile support (recommended)"
90         select BR2_PACKAGE_LIBSNDFILE
91         default y
92         help
93           If you disabled audio support in Ecore, this is not tested
94           and may create bugs for you due to it creating untested code
95           paths.  Reconsider disabling audio.
97 config BR2_PACKAGE_EFL_PULSEAUDIO
98         bool "Enable pulseaudio support (recommended)"
99         depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pulseaudio -> json-c
100         select BR2_PACKAGE_PULSEAUDIO
101         default y
102         help
103           The only audio output method supported by Ecore right now is
104           via Pulseaudio. You have disabled that and likely have
105           broken a whole bunch of things in the process. Reconsider
106           your configure options.
108           NOTE: multisense support is automatically enabled with
109           pulseaudio.
111 config BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT
112         bool "Enable libmount support (recommended)"
113         depends on BR2_PACKAGE_EFL_EEZE
114         select BR2_PACKAGE_UTIL_LINUX
115         select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
116         # libblkid is part of required tools, see EFL's README.
117         select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
118         default y
119         help
120           Libmount is used heavily inside Eeze for support of removable
121           devices etc... and disabling this will hurt support for
122           Enlightenment and its filemanager.
124 comment "efl's libmount support needs udev /dev management (eeze)"
125         depends on !BR2_PACKAGE_EFL_EEZE
127 config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG
128         bool
129         default y if BR2_PACKAGE_EFL_BULLET && \
130                 BR2_PACKAGE_EFL_EEZE && \
131                 BR2_PACKAGE_EFL_FONTCONFIG && \
132                 BR2_PACKAGE_EFL_GSTREAMER1 && \
133                 BR2_PACKAGE_EFL_LIBFRIBIDI && \
134                 BR2_PACKAGE_EFL_LIBSNDFILE && \
135                 BR2_PACKAGE_EFL_PULSEAUDIO && \
136                 BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT
139 comment "Warning: one of the recommended option for EFL is not enabled"
140         depends on !BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG
142 config BR2_PACKAGE_EFL_EOLIAN_CPP
143         bool "Enable Eolian C++ bindings"
144         depends on BR2_HOST_GCC_AT_LEAST_4_8 # Eolian (host) needs C++11
145         depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # Eolian needs C++11
146         help
147           Eolian is an EO object parser and code generator.
148           With this option enabled Eolian will handle automatic generation
149           of EFL bindings for the C++11 language.
151 comment "Eolian needs host and target gcc >= 4.8"
152         depends on !BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
154 comment "libecore video support"
156 config BR2_PACKAGE_EFL_FB
157         bool "FB support"
159 config BR2_PACKAGE_EFL_X_XLIB
160         bool "X11 support (xlib)"
161         depends on BR2_PACKAGE_XORG7
162         select BR2_PACKAGE_XLIB_LIBX11
163         select BR2_PACKAGE_XLIB_LIBXEXT
164         select BR2_PACKAGE_XLIB_LIBXCOMPOSITE
165         select BR2_PACKAGE_XLIB_LIBXCURSOR
166         select BR2_PACKAGE_XLIB_LIBXDAMAGE
167         select BR2_PACKAGE_XLIB_LIBXINERAMA
168         select BR2_PACKAGE_XLIB_LIBXP
169         select BR2_PACKAGE_XLIB_LIBXRANDR
170         select BR2_PACKAGE_XLIB_LIBXRENDER
171         select BR2_PACKAGE_XLIB_LIBXSCRNSAVER
172         select BR2_PACKAGE_XLIB_LIBXTST
173         select BR2_PACKAGE_XPROTO_GLPROTO
175 config BR2_PACKAGE_EFL_WAYLAND
176         bool "Wayland support"
177         depends on BR2_PACKAGE_WAYLAND
178         depends on BR2_TOOLCHAIN_HAS_THREADS # Evas DRM Engine -> libdrm
179         depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # Evas DRM Engine
180         depends on BR2_PACKAGE_EFL_EEZE # efl drm
181         depends on BR2_PACKAGE_EFL_OPENGLES # OpenGL ES with EGL support only
182         select BR2_PACKAGE_EFL_DRM
184 comment "Wayland support needs udev /dev management (eeze) and OpenGL ES w/ EGL, threads"
185         depends on BR2_PACKAGE_WAYLAND
186         depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \
187                 || !BR2_PACKAGE_EFL_OPENGLES || !BR2_PACKAGE_EFL_EEZE
189 choice
190         bool "OpenGL support"
191         help
192           libevas can be configured to use HW acceleration with OpenGL or
193           OpenGL ES.
195 config BR2_PACKAGE_EFL_OPENGL
196         bool "OpenGL"
197         depends on BR2_PACKAGE_HAS_LIBGL
198         depends on BR2_PACKAGE_XORG7
199         select BR2_PACKAGE_EFL_X_XLIB
201 comment "OpenGL support needs X11 and an OpenGL provider"
202         depends on !BR2_PACKAGE_HAS_LIBGL || !BR2_PACKAGE_XORG7
204 config BR2_PACKAGE_EFL_OPENGLES
205         bool "OpenGL ES (w/ EGL)"
206         depends on BR2_PACKAGE_HAS_LIBEGL
207         depends on BR2_PACKAGE_HAS_LIBGLES
209 comment "OpenGL ES support needs an OpenGL ES w/ EGL provider"
210         depends on !BR2_PACKAGE_HAS_LIBGLES || !BR2_PACKAGE_HAS_LIBEGL
212 config BR2_PACKAGE_EFL_OPENGL_NONE
213         bool "none"
215 endchoice # OpenGL support
217 config BR2_PACKAGE_EFL_ELPUT
218         bool "Elput"
219         depends on BR2_PACKAGE_EFL_EEZE
220         select BR2_PACKAGE_LIBINPUT
221         select BR2_PACKAGE_LIBXKBCOMMON
222         help
223           The elput library is an efl abstraction for the libinput library
224           which can be used by various other subsystems (ecore_fb,
225           ecore_drm, etc) to handle interfacing with libinput without
226           having to duplicate the code in each subsystem.
228 comment "Elput support needs udev /dev management (eeze)"
229         depends on !BR2_PACKAGE_EFL_EEZE
231 config BR2_PACKAGE_EFL_DRM
232         bool "Evas DRM Engine"
233         depends on BR2_PACKAGE_EFL_EEZE
234         depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
235         depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # require libgbm from mesa3d
236         select BR2_PACKAGE_EFL_ELPUT
237         select BR2_PACKAGE_LIBDRM
238         select BR2_PACKAGE_LIBXKBCOMMON
239         help
240           This option enable building support for the Evas DRM Engine.
242 comment "Evas DRM Engine needs udev /dev management (eeze) and mesa3d w/ EGL support, threads"
243         depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \
244                 || !BR2_PACKAGE_EFL_EEZE
246 comment "libevas loaders"
248 config BR2_PACKAGE_EFL_PNG
249         bool "libevas png loader"
250         select BR2_PACKAGE_LIBPNG
251         help
252           This enables the loader code that loads png files using
253           libpng.
255 # JP2K support require openjpeg 1.x (libopenjpeg1.pc) which is not
256 # available in Buildroot anymore.
257 config BR2_PACKAGE_EFL_JP2K
258         bool "libevas jp2k loader"
259         select BR2_PACKAGE_OPENJPEG
260         depends on BROKEN # require openjpeg 1.x
261         help
262           This enables the loader code that loads jp2k files using
263           openjpeg.
265 config BR2_PACKAGE_EFL_JPEG
266         bool "libevas jpeg loader"
267         help
268           This enables the loader code that loads jpeg files using
269           libjpeg.
271 config BR2_PACKAGE_EFL_GIF
272         bool "libevas gif loader"
273         select BR2_PACKAGE_GIFLIB
274         help
275           This enables the loader code that loads gif files using
276           giflib.
278 config BR2_PACKAGE_EFL_TIFF
279         bool "libevas tiff loader"
280         select BR2_PACKAGE_TIFF
281         help
282           This enables the loader code that loads tiff files.
284 config BR2_PACKAGE_EFL_WEBP
285         bool "libevas webp image loader"
286         select BR2_PACKAGE_WEBP
287         help
288           This enables the loader code that loads images using WebP.
290 config BR2_PACKAGE_EFL_LIBRAW
291         bool "libraw loader"
292         select BR2_PACKAGE_LIBRAW
293         help
294           This option enables the Evas generic Libraw loader
296 config BR2_PACKAGE_EFL_SVG
297         bool "SVG loader"
298         depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz
299         select BR2_PACKAGE_LIBRSVG
300         select BR2_PACKAGE_CAIRO
301         help
302           This option enables the Evas generic SVG loader
304 endif # BR2_PACKAGE_EFL
306 comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.7, threads, wchar"
307         depends on !BR2_INSTALL_LIBSTDCPP \
308                 || !BR2_HOST_GCC_AT_LEAST_4_7 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \
309                 || BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
310         depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
311         depends on BR2_USE_MMU