diff mbox series

[v3,6/7] package/kmscube: use libgbm virtual package

Message ID 20211007095147.688449-6-kamel.bouhara@bootlin.com
State Accepted
Headers show
Series [v3,1/7] package/opengl/libgbm: new virtual package | expand

Commit Message

Kamel Bouhara Oct. 7, 2021, 9:51 a.m. UTC
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>

kmscube requires a libgbm implementation, which until now, only Mesa3D
was providing, so kmscube had a direct dependency on Mesa3D.

However, now that we have a proper libgbm virtual package, so this
commit converts the kmscube package to use the libegl, libgbm and
libgles virtual packages.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com>
[ Kamel : add dependency on recent libgbm ]
---
Changes v2 -> v3:
 - Fixed comment suggestions

 package/kmscube/Config.in  | 16 ++++++++++++----
 package/kmscube/kmscube.mk |  2 +-
 2 files changed, 13 insertions(+), 5 deletions(-)

Comments

Arnout Vandecappelle Oct. 27, 2021, 7:28 p.m. UTC | #1
Hi Kamal,

On 07/10/2021 11:51, Kamel Bouhara wrote:
> From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> 
> kmscube requires a libgbm implementation, which until now, only Mesa3D
> was providing, so kmscube had a direct dependency on Mesa3D.
> 
> However, now that we have a proper libgbm virtual package, so this
> commit converts the kmscube package to use the libegl, libgbm and
> libgles virtual packages.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
> Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com>
> [ Kamel : add dependency on recent libgbm ]
> ---
> Changes v2 -> v3:
>   - Fixed comment suggestions
> 
>   package/kmscube/Config.in  | 16 ++++++++++++----
>   package/kmscube/kmscube.mk |  2 +-
>   2 files changed, 13 insertions(+), 5 deletions(-)
> 
> diff --git a/package/kmscube/Config.in b/package/kmscube/Config.in
> index b6ad305bfb..8c5fe9b7b0 100644
> --- a/package/kmscube/Config.in
> +++ b/package/kmscube/Config.in
> @@ -1,9 +1,17 @@
>   config BR2_PACKAGE_KMSCUBE
>   	bool "kmscube"
> -	# requires libgbm from mesa3d
> -	depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
> -	depends on BR2_PACKAGE_MESA3D_OPENGL_ES
> +	depends on BR2_PACKAGE_HAS_LIBEGL
> +	depends on BR2_PACKAGE_HAS_LIBGBM
> +	depends on BR2_PACKAGE_LIBGBM_HAS_FEATURE_FORMAT_MODIFIER_PLANE_COUNT
> +	depends on BR2_PACKAGE_HAS_LIBGLES
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
> +	select BR2_PACKAGE_LIBDRM
>   	help
>   	  kmscube is an application to test kms/drm drivers.
>   
> -	  https://gitlab.freedesktop.org/mesa/kmscube
> +	  https://cgit.freedesktop.org/mesa/kmscube/
> +
> +comment "kmscube needs EGL, GBM and OpenGL ES, and a toolchain w/ thread support"
> +	depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGBM ||
> +	!BR2_PACKAGE_LIBGBM_HAS_FEATURE_FORMAT_MODIFIER_PLANE_COUNT ||
> +	!depends on BR2_PACKAGE_HAS_LIBGLES || !BR2_TOOLCHAIN_HAS_THREADS

  This syntax is invalid, kconfig can't parse it. Please do minimal testing of 
your patches before sending :-)

> diff --git a/package/kmscube/kmscube.mk b/package/kmscube/kmscube.mk
> index 7b458376dc..5719f72ba3 100644
> --- a/package/kmscube/kmscube.mk
> +++ b/package/kmscube/kmscube.mk
> @@ -8,6 +8,6 @@ KMSCUBE_VERSION = 4660a7dca6512b6e658759d00cff7d4ad2a2059d
>   KMSCUBE_SITE = https://gitlab.freedesktop.org/mesa/kmscube/-/archive/$(KMSCUBE_VERSION)
>   KMSCUBE_LICENSE = MIT
>   KMSCUBE_LICENSE_FILES = COPYING
> -KMSCUBE_DEPENDENCIES = host-pkgconf mesa3d libdrm
> +KMSCUBE_DEPENDENCIES = host-pkgconf libgles libegl libgbm libdrm

  Since I was anyway editing this patch, I took the opportunity to order these 
dependencies alphabetically.

  Regards,
  Arnout

>   
>   $(eval $(meson-package))
>
diff mbox series

Patch

diff --git a/package/kmscube/Config.in b/package/kmscube/Config.in
index b6ad305bfb..8c5fe9b7b0 100644
--- a/package/kmscube/Config.in
+++ b/package/kmscube/Config.in
@@ -1,9 +1,17 @@ 
 config BR2_PACKAGE_KMSCUBE
 	bool "kmscube"
-	# requires libgbm from mesa3d
-	depends on BR2_PACKAGE_MESA3D_OPENGL_EGL
-	depends on BR2_PACKAGE_MESA3D_OPENGL_ES
+	depends on BR2_PACKAGE_HAS_LIBEGL
+	depends on BR2_PACKAGE_HAS_LIBGBM
+	depends on BR2_PACKAGE_LIBGBM_HAS_FEATURE_FORMAT_MODIFIER_PLANE_COUNT
+	depends on BR2_PACKAGE_HAS_LIBGLES
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
+	select BR2_PACKAGE_LIBDRM
 	help
 	  kmscube is an application to test kms/drm drivers.
 
-	  https://gitlab.freedesktop.org/mesa/kmscube
+	  https://cgit.freedesktop.org/mesa/kmscube/
+
+comment "kmscube needs EGL, GBM and OpenGL ES, and a toolchain w/ thread support"
+	depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGBM ||
+	!BR2_PACKAGE_LIBGBM_HAS_FEATURE_FORMAT_MODIFIER_PLANE_COUNT ||
+	!depends on BR2_PACKAGE_HAS_LIBGLES || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/kmscube/kmscube.mk b/package/kmscube/kmscube.mk
index 7b458376dc..5719f72ba3 100644
--- a/package/kmscube/kmscube.mk
+++ b/package/kmscube/kmscube.mk
@@ -8,6 +8,6 @@  KMSCUBE_VERSION = 4660a7dca6512b6e658759d00cff7d4ad2a2059d
 KMSCUBE_SITE = https://gitlab.freedesktop.org/mesa/kmscube/-/archive/$(KMSCUBE_VERSION)
 KMSCUBE_LICENSE = MIT
 KMSCUBE_LICENSE_FILES = COPYING
-KMSCUBE_DEPENDENCIES = host-pkgconf mesa3d libdrm
+KMSCUBE_DEPENDENCIES = host-pkgconf libgles libegl libgbm libdrm
 
 $(eval $(meson-package))