Config.in 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. config BR2_PACKAGE_EFL
  2. bool "efl"
  3. depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
  4. depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-efl
  5. depends on BR2_INSTALL_LIBSTDCPP
  6. depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads
  7. depends on BR2_USE_MMU
  8. depends on BR2_USE_WCHAR # use wchar_t
  9. depends on !BR2_STATIC_LIBS # dlfcn.h
  10. # https://phab.enlightenment.org/T2728
  11. depends on BR2_PACKAGE_LUAJIT
  12. select BR2_PACKAGE_DBUS
  13. select BR2_PACKAGE_FREETYPE
  14. select BR2_PACKAGE_GIFLIB
  15. select BR2_PACKAGE_JPEG # Emile needs libjpeg
  16. select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency
  17. select BR2_PACKAGE_LIBPNG
  18. select BR2_PACKAGE_OPENSSL if !(BR2_PACKAGE_GNUTLS && BR2_PACKAGE_LIBGCRYPT)
  19. select BR2_PACKAGE_LZ4
  20. select BR2_PACKAGE_ZLIB
  21. help
  22. Enlightenment Foundation Libraries
  23. https://www.enlightenment.org/
  24. if BR2_PACKAGE_EFL
  25. config BR2_PACKAGE_EFL_BULLET
  26. bool "Enable bullet support"
  27. select BR2_PACKAGE_BULLET
  28. help
  29. If you have chosen to disable physics support, this disables
  30. lots of core functionality and is effectively never
  31. tested. You are going to find features that suddenly don't
  32. work and as a result cause a series of breakages. This is
  33. simply not tested so you are on your own in terms of
  34. ensuring everything works if you do this.
  35. config BR2_PACKAGE_EFL_EEZE
  36. bool "Enable eeze (udev) support (recommended)"
  37. default y
  38. depends on BR2_PACKAGE_HAS_UDEV # libudev
  39. help
  40. Eeze is EFL's hardware abstraction layer on top of udev.
  41. Having it off will disable some hardware detection, such as
  42. 'drm' graphics engine or 'elput', as well as mounting
  43. removable media.
  44. comment "eeze needs udev /dev management"
  45. depends on !BR2_PACKAGE_HAS_UDEV
  46. config BR2_PACKAGE_EFL_FONTCONFIG
  47. bool "Enable fontconfig support (recommended)"
  48. default y
  49. select BR2_PACKAGE_FONTCONFIG
  50. help
  51. If fontconfig is disabled, this is going to make general
  52. font searching not work, and only some very direct 'load
  53. /path/file.ttf' will work alongside some old-school ttf file
  54. path searching. This is very likely not what you want, so
  55. highly reconsider turning fontconfig off. Having it off will
  56. lead to visual problems like missing text in many UI areas
  57. etc...
  58. config BR2_PACKAGE_EFL_GSTREAMER1
  59. bool "Enable gstreamer1 support (recommended)"
  60. default y
  61. select BR2_PACKAGE_GSTREAMER1
  62. select BR2_PACKAGE_GST1_PLUGINS_BASE
  63. help
  64. If Gstreamer 1.x support is disabled, it will heavily limit
  65. your media support options and render some functionality as
  66. useless, leading to visible application bugs.
  67. config BR2_PACKAGE_EFL_LIBFRIBIDI
  68. bool "Enable libfribidi support (recommended)"
  69. default y
  70. select BR2_PACKAGE_LIBFRIBIDI
  71. help
  72. Fribidi is used for handling right-to-left text (like
  73. Arabic, Hebrew, Farsi, Persian etc.) and is very likely not
  74. a feature you want to disable unless you know for absolute
  75. certain you will never encounter and have to display such
  76. scripts. Also note that we don't test with fribidi disabled
  77. so you may also trigger code paths with bugs that are never
  78. normally used.
  79. config BR2_PACKAGE_EFL_ELPUT
  80. bool "Enable elput support (recommended)"
  81. default y
  82. depends on BR2_PACKAGE_HAS_UDEV # libinput, efl-eeze
  83. select BR2_PACKAGE_EFL_EEZE
  84. select BR2_PACKAGE_LIBINPUT
  85. select BR2_PACKAGE_LIBXKBCOMMON
  86. help
  87. Eplut is used to support gesture recognition.
  88. comment "elput needs udev /dev management"
  89. depends on !BR2_PACKAGE_HAS_UDEV
  90. config BR2_PACKAGE_EFL_LIBSNDFILE
  91. bool "Enable libsndfile support (recommended)"
  92. default y
  93. select BR2_PACKAGE_LIBSNDFILE
  94. help
  95. If you disabled audio support in Ecore, this is not tested
  96. and may create bugs for you due to it creating untested code
  97. paths. Reconsider disabling audio.
  98. config BR2_PACKAGE_EFL_PULSEAUDIO
  99. bool "Enable pulseaudio support (recommended)"
  100. default y
  101. depends on BR2_PACKAGE_PULSEAUDIO_HAS_ATOMIC
  102. depends on BR2_USE_WCHAR
  103. depends on BR2_TOOLCHAIN_HAS_THREADS
  104. depends on !BR2_STATIC_LIBS
  105. depends on BR2_USE_MMU
  106. select BR2_PACKAGE_PULSEAUDIO
  107. help
  108. The only audio output method supported by Ecore right now is
  109. via Pulseaudio. You have disabled that and likely have
  110. broken a whole bunch of things in the process. Reconsider
  111. your configure options.
  112. NOTE: multisense support is automatically enabled with
  113. pulseaudio.
  114. config BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT
  115. bool "Enable libmount support (recommended)"
  116. default y
  117. depends on BR2_PACKAGE_HAS_UDEV # efl-eeze
  118. select BR2_PACKAGE_EFL_EEZE
  119. select BR2_PACKAGE_UTIL_LINUX
  120. select BR2_PACKAGE_UTIL_LINUX_LIBMOUNT
  121. # libblkid is part of required tools, see EFL's README.
  122. select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
  123. help
  124. Libmount is used heavily inside Eeze for support of removable
  125. devices etc... and disabling this will hurt support for
  126. Enlightenment and its filemanager.
  127. comment "efl's libmount support needs udev /dev management "
  128. depends on !BR2_PACKAGE_HAS_UDEV
  129. config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG
  130. bool
  131. default y if BR2_PACKAGE_EFL_EEZE && \
  132. BR2_PACKAGE_EFL_FONTCONFIG && \
  133. BR2_PACKAGE_EFL_GSTREAMER1 && \
  134. BR2_PACKAGE_EFL_LIBFRIBIDI && \
  135. BR2_PACKAGE_EFL_LIBSNDFILE && \
  136. BR2_PACKAGE_EFL_PULSEAUDIO && \
  137. BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT
  138. comment "Warning: one of the recommended option for EFL is not enabled"
  139. depends on !BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG
  140. config BR2_PACKAGE_EFL_EOLIAN_CPP
  141. bool "Enable Eolian C++ bindings"
  142. help
  143. Eolian is an EO object parser and code generator.
  144. With this option enabled Eolian will handle automatic
  145. generation of EFL bindings for the C++11 language.
  146. comment "libecore video support"
  147. config BR2_PACKAGE_EFL_FB
  148. bool "FB support"
  149. config BR2_PACKAGE_EFL_X_XLIB
  150. bool "X11 support (xlib)"
  151. depends on BR2_PACKAGE_XORG7
  152. select BR2_PACKAGE_XLIB_LIBX11
  153. select BR2_PACKAGE_XLIB_LIBXEXT
  154. select BR2_PACKAGE_XLIB_LIBXCOMPOSITE
  155. select BR2_PACKAGE_XLIB_LIBXCURSOR
  156. select BR2_PACKAGE_XLIB_LIBXDAMAGE
  157. select BR2_PACKAGE_XLIB_LIBXINERAMA
  158. select BR2_PACKAGE_XLIB_LIBXRANDR
  159. select BR2_PACKAGE_XLIB_LIBXRENDER
  160. select BR2_PACKAGE_XLIB_LIBXSCRNSAVER
  161. select BR2_PACKAGE_XLIB_LIBXTST
  162. select BR2_PACKAGE_XORGPROTO
  163. config BR2_PACKAGE_EFL_WAYLAND
  164. bool "Wayland support"
  165. depends on BR2_PACKAGE_WAYLAND
  166. depends on BR2_TOOLCHAIN_HAS_THREADS # Evas DRM Engine -> libdrm
  167. depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # Evas DRM Engine
  168. depends on BR2_PACKAGE_HAS_UDEV # efl drm, efl-eeze
  169. depends on BR2_PACKAGE_EFL_OPENGLES # OpenGL ES with EGL support only
  170. depends on BR2_ENABLE_LOCALE # efl-drm <- efl-elput <- linput
  171. select BR2_PACKAGE_EFL_DRM
  172. select BR2_PACKAGE_WAYLAND_PROTOCOLS
  173. comment "Wayland support needs udev /dev management, OpenGL ES w/ EGL, threads, locales"
  174. depends on BR2_PACKAGE_WAYLAND
  175. depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \
  176. || !BR2_PACKAGE_EFL_OPENGLES || !BR2_PACKAGE_HAS_UDEV \
  177. || !BR2_ENABLE_LOCALE
  178. choice
  179. bool "OpenGL support"
  180. help
  181. libevas can be configured to use HW acceleration with OpenGL
  182. or OpenGL ES.
  183. config BR2_PACKAGE_EFL_OPENGL
  184. bool "OpenGL"
  185. depends on BR2_PACKAGE_HAS_LIBGL
  186. depends on BR2_PACKAGE_XORG7
  187. select BR2_PACKAGE_EFL_X_XLIB
  188. comment "OpenGL support needs X11 and an OpenGL provider"
  189. depends on !BR2_PACKAGE_HAS_LIBGL || !BR2_PACKAGE_XORG7
  190. config BR2_PACKAGE_EFL_OPENGLES
  191. bool "OpenGL ES (w/ EGL)"
  192. depends on BR2_PACKAGE_HAS_LIBEGL
  193. depends on BR2_PACKAGE_HAS_LIBGLES
  194. comment "OpenGL ES support needs an OpenGL ES w/ EGL provider"
  195. depends on !BR2_PACKAGE_HAS_LIBGLES || !BR2_PACKAGE_HAS_LIBEGL
  196. config BR2_PACKAGE_EFL_OPENGL_NONE
  197. bool "none"
  198. endchoice # OpenGL support
  199. config BR2_PACKAGE_EFL_DRM
  200. bool "Evas DRM Engine"
  201. depends on BR2_PACKAGE_HAS_UDEV # efl-elput, efl-eeze
  202. depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
  203. depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # require libgbm from mesa3d
  204. select BR2_PACKAGE_EFL_ELPUT
  205. select BR2_PACKAGE_LIBDRM
  206. help
  207. This option enable building support for the Evas DRM Engine.
  208. Since efl 1.23.x, the drm option enable the elput library
  209. which is an efl abstraction for the libinput library which
  210. can be used by various other subsystems (ecore_fb, ecore_drm,
  211. etc) to handle interfacing with libinput without having to
  212. duplicate the code in each subsystem.
  213. comment "Evas DRM Engine needs udev /dev management, mesa3d w/ EGL support, threads"
  214. depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \
  215. || !BR2_PACKAGE_HAS_UDEV
  216. comment "libevas loaders"
  217. config BR2_PACKAGE_EFL_JPEG
  218. bool "libevas jpeg loader"
  219. select BR2_PACKAGE_OPENJPEG
  220. help
  221. This enables the loader code that loads jpeg files using
  222. libjpeg.
  223. config BR2_PACKAGE_EFL_TIFF
  224. bool "libevas tiff loader"
  225. select BR2_PACKAGE_TIFF
  226. help
  227. This enables the loader code that loads tiff files.
  228. config BR2_PACKAGE_EFL_WEBP
  229. bool "libevas webp image loader"
  230. select BR2_PACKAGE_WEBP
  231. select BR2_PACKAGE_WEBP_DEMUX
  232. help
  233. This enables the loader code that loads images using WebP.
  234. config BR2_PACKAGE_EFL_LIBRAW
  235. bool "libraw loader"
  236. depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libraw
  237. select BR2_PACKAGE_LIBRAW
  238. help
  239. This option enables the Evas generic Libraw loader
  240. config BR2_PACKAGE_EFL_SVG
  241. bool "SVG loader"
  242. depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # librsvg
  243. depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz
  244. select BR2_PACKAGE_LIBRSVG
  245. select BR2_PACKAGE_CAIRO
  246. help
  247. This option enables the Evas generic SVG loader
  248. endif # BR2_PACKAGE_EFL
  249. comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.9, host gcc >= 4.9, threads, wchar"
  250. depends on !BR2_INSTALL_LIBSTDCPP \
  251. || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
  252. || !BR2_HOST_GCC_AT_LEAST_4_9 || BR2_STATIC_LIBS \
  253. || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
  254. depends on BR2_USE_MMU