浏览代码

package/sdl2: add wayland support

This adds a configuration option to enable the Wayland
video driver support in SDL2.

Signed-off-by: Thomas Devoogdt <thomas.devoogdt@barco.com>
[Peter: move after KMS/DRM]
Tested-by: Alexander Shiyan <eagle.alexander923@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Thomas Devoogdt 5 月之前
父节点
当前提交
4662553088
共有 2 个文件被更改,包括 24 次插入1 次删除
  1. 17 0
      package/sdl2/Config.in
  2. 7 1
      package/sdl2/sdl2.mk

+ 17 - 0
package/sdl2/Config.in

@@ -38,6 +38,23 @@ comment "KMS/DRM video driver needs a GBM provider, and OpenGL or OpenGLES+EGL"
 		!BR2_PACKAGE_HAS_LIBEGL || \
 		!BR2_PACKAGE_HAS_LIBEGL || \
 		!(BR2_PACKAGE_SDL2_OPENGL || BR2_PACKAGE_SDL2_OPENGLES)
 		!(BR2_PACKAGE_SDL2_OPENGL || BR2_PACKAGE_SDL2_OPENGLES)
 
 
+config BR2_PACKAGE_SDL2_WAYLAND
+	bool "Wayland video driver"
+	depends on BR2_TOOLCHAIN_HAS_THREADS # wayland
+	depends on BR2_PACKAGE_WAYLAND
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	depends on BR2_PACKAGE_SDL2_OPENGLES
+	select BR2_PACKAGE_LIBXKBCOMMON
+	select BR2_PACKAGE_WAYLAND_PROTOCOLS
+
+comment "Wayland video driver needs a toolchain w/ threads"
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
+
+comment "Wayland video driver needs wayland with an OpenGLES+EGL backend"
+	depends on !BR2_PACKAGE_WAYLAND || \
+		!BR2_PACKAGE_HAS_LIBEGL || \
+		!BR2_PACKAGE_SDL2_OPENGLES
+
 config BR2_PACKAGE_SDL2_OPENGL
 config BR2_PACKAGE_SDL2_OPENGL
 	bool "OpenGL (GLX)"
 	bool "OpenGL (GLX)"
 	depends on BR2_PACKAGE_HAS_LIBGL
 	depends on BR2_PACKAGE_HAS_LIBGL

+ 7 - 1
package/sdl2/sdl2.mk

@@ -23,7 +23,6 @@ SDL2_CONF_OPTS += \
 	--disable-video-vivante \
 	--disable-video-vivante \
 	--disable-video-cocoa \
 	--disable-video-cocoa \
 	--disable-video-metal \
 	--disable-video-metal \
-	--disable-video-wayland \
 	--disable-video-dummy \
 	--disable-video-dummy \
 	--disable-video-offscreen \
 	--disable-video-offscreen \
 	--disable-video-vulkan \
 	--disable-video-vulkan \
@@ -105,6 +104,13 @@ else
 SDL2_CONF_OPTS += --disable-video-x11-xcursor
 SDL2_CONF_OPTS += --disable-video-x11-xcursor
 endif
 endif
 
 
+ifeq ($(BR2_PACKAGE_SDL2_WAYLAND),y)
+SDL2_DEPENDENCIES += libegl libxkbcommon wayland wayland-protocols
+SDL2_CONF_OPTS += --enable-video-wayland
+else
+SDL2_CONF_OPTS += --disable-video-wayland
+endif
+
 ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y)
 ifeq ($(BR2_PACKAGE_XLIB_LIBXI),y)
 SDL2_DEPENDENCIES += xlib_libXi
 SDL2_DEPENDENCIES += xlib_libXi
 SDL2_CONF_OPTS += --enable-video-x11-xinput
 SDL2_CONF_OPTS += --enable-video-x11-xinput