buildroot.busybox.net archive mirror
 help / color / mirror / Atom feed
* [Buildroot] [git commit] package/freescale-imx/imx-gpu-viv: declare as a libgbm provider
@ 2022-01-08 18:04 Thomas Petazzoni
  0 siblings, 0 replies; only message in thread
From: Thomas Petazzoni @ 2022-01-08 18:04 UTC (permalink / raw)
  To: buildroot

commit: https://git.buildroot.net/buildroot/commit/?id=627464367ea7a3ea76a25beebed9a8f069b3cfc0
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

Interestingly, only the aarch64 blobs provide libgbm support. This
will help in fixing an issue that exists today, where ARM32 +
imx-gpu-viv + wayland + qt5 fails to build, because qt5 is told that
libgbm is available, i.e the following configuration:

 BR2_arm=y
 BR2_cortex_a9=y
 BR2_ARM_ENABLE_VFP=y
 BR2_TOOLCHAIN_EXTERNAL=y
 BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
 BR2_INIT_NONE=y
 BR2_SYSTEM_BIN_SH_NONE=y
 # BR2_PACKAGE_BUSYBOX is not set
 BR2_PACKAGE_QT5=y
 BR2_PACKAGE_QT5BASE_GUI=y
 BR2_PACKAGE_QT5BASE_EGLFS=y
 BR2_PACKAGE_FREESCALE_IMX=y
 BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
 BR2_PACKAGE_IMX_GPU_VIV=y
 BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL=y
 # BR2_TARGET_ROOTFS_TAR is not set

fails to build during the qt5base configure step with:

ERROR: Feature 'gbm' was enabled, but the pre-condition 'libs.gbm' failed.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 package/freescale-imx/imx-gpu-viv/Config.in      | 11 +++++++++++
 package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk |  5 +++++
 2 files changed, 16 insertions(+)

diff --git a/package/freescale-imx/imx-gpu-viv/Config.in b/package/freescale-imx/imx-gpu-viv/Config.in
index f465167acd..9ba3d0428e 100644
--- a/package/freescale-imx/imx-gpu-viv/Config.in
+++ b/package/freescale-imx/imx-gpu-viv/Config.in
@@ -17,6 +17,10 @@ config BR2_PACKAGE_IMX_GPU_VIV
 	select BR2_PACKAGE_LIBDRM if !(BR2_arm && BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_FB)
 	select BR2_PACKAGE_HAS_LIBEGL
 	select BR2_PACKAGE_HAS_LIBGLES
+	# gbm is only available in the aarch64 blobs
+	select BR2_PACKAGE_HAS_LIBGBM if BR2_aarch64
+	select BR2_PACKAGE_LIBGBM_HAS_FEATURE_DMA_BUF if BR2_aarch64
+	select BR2_PACKAGE_LIBGBM_HAS_FEATURE_FORMAT_MODIFIER_PLANE_COUNT if BR2_aarch64
 	select BR2_PACKAGE_HAS_LIBOPENCL
 	select BR2_PACKAGE_HAS_LIBOPENVG
 	help
@@ -82,6 +86,13 @@ config BR2_PACKAGE_PROVIDES_LIBOPENCL
 config BR2_PACKAGE_PROVIDES_LIBOPENVG
 	default "imx-gpu-viv"
 
+if BR2_aarch64
+
+config BR2_PACKAGE_PROVIDES_LIBGBM
+	default "imx-gpu-viv"
+
+endif
+
 config BR2_PACKAGE_IMX_GPU_VIV_EXAMPLES
 	bool "install examples"
 	# example binaries are linked against libstdc++.so.6
diff --git a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk
index ace025c656..1d76d79e2b 100644
--- a/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk
+++ b/package/freescale-imx/imx-gpu-viv/imx-gpu-viv.mk
@@ -19,6 +19,11 @@ IMX_GPU_VIV_LICENSE_FILES = EULA COPYING
 IMX_GPU_VIV_REDISTRIBUTE = NO
 
 IMX_GPU_VIV_PROVIDES = libegl libgles libopencl libopenvg
+
+ifeq ($(BR2_aarch64),y)
+IMX_GPU_VIV_PROVIDES += libgbm
+endif
+
 IMX_GPU_VIV_LIB_TARGET = $(call qstrip,$(BR2_PACKAGE_IMX_GPU_VIV_OUTPUT))
 
 ifeq ($(IMX_GPU_VIV_LIB_TARGET),x11)
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2022-01-08 18:06 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-08 18:04 [Buildroot] [git commit] package/freescale-imx/imx-gpu-viv: declare as a libgbm provider Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).