package/efl: enable libdrm support
authorRomain Naour <romain.naour@gmail.com>
Thu, 8 Dec 2016 22:24:16 +0000 (23:24 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Fri, 9 Dec 2016 19:10:38 +0000 (20:10 +0100)
drm can be used without compositor, just like it was with
the framebuffer for standalone applications

As stated in configure.ac, libdrm support needs libdrm, elput,
libxkbcommon and libgbm.

libgbm is only provided by mesa3d package when OpenGL EGL support is
enabled, so add a direct dependency on mesa3d.

Rework the libxkbcommon dependency since it's now required for
elput and libdrm support.

[1] https://www.enlightenment.org/about-wayland

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Pierre Floury <devpfl@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/efl/Config.in
package/efl/efl.mk

index 5d687e85bd4833b2340c89680bc16219398e99d2..0692d80b23f337a9d24a2ace67bd1d5b81452040 100644 (file)
@@ -193,6 +193,19 @@ config BR2_PACKAGE_EFL_ELPUT
          ecore_drm, etc) to handle interfacing with libinput without
          having to duplicate the code in each subsystem.
 
+config BR2_PACKAGE_EFL_DRM
+       bool "Evas DRM Engine"
+       depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
+       depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # require libgbm from mesa3d
+       select BR2_PACKAGE_EFL_ELPUT
+       select BR2_PACKAGE_LIBDRM
+       select BR2_PACKAGE_LIBXKBCOMMON
+       help
+         This option enable building support for the Evas DRM Engine.
+
+comment "Evas DRM Engine needs mesa3d w/ EGL support, threads"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL
+
 comment "libevas loaders"
 
 config BR2_PACKAGE_EFL_PNG
index e08f252a608854a83e7bad1a94a81bb4b62d0ca8..d823af2d1aefa7b3ed63c3ab7ac51631e97e96cc 100644 (file)
@@ -150,7 +150,7 @@ endif # BR2_PACKAGE_OPENSSL
 
 ifeq ($(BR2_PACKAGE_EFL_ELPUT),y)
 EFL_CONF_OPTS += --enable-elput
-EFL_DEPENDENCIES += libinput libxkbcommon
+EFL_DEPENDENCIES += libinput
 else
 EFL_CONF_OPTS += --disable-elput
 endif
@@ -194,6 +194,15 @@ else ifeq ($(BR2_PACKAGE_EFL_OPENGL_NONE),y)
 EFL_CONF_OPTS += --with-opengl=none
 endif
 
+ifeq ($(BR2_PACKAGE_EFL_DRM),y)
+EFL_CONF_OPTS += --enable-drm
+EFL_DEPENDENCIES += libdrm libegl mesa3d
+else
+EFL_CONF_OPTS += --disable-drm
+endif
+
+EFL_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBXKBCOMMON),libxkbcommon)
+
 # Loaders that need external dependencies needs to be --enable-XXX=yes
 # otherwise the default is '=static'.
 # All other loaders are statically built-in