From af9229030614bc137f7364543e96aa33d4ddc58b Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Tue, 4 Oct 2022 05:39:51 +0100 Subject: [PATCH] build/gl: fix automatic dispmanx detection for rpi4 rpi4 doesn't contain dispmanx but still contains bcm_host.pc which confuses the configure detection. Add an explicit check for EGL_DISPMANX_WINDOW_T to ensure that we only build with dispmanx when the types are available. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/893 Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/952 Part-of: --- .../gst-plugins-base/gst-libs/gst/gl/meson.build | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/subprojects/gst-plugins-base/gst-libs/gst/gl/meson.build b/subprojects/gst-plugins-base/gst-libs/gst/gl/meson.build index e645223e4f..5859a85d76 100644 --- a/subprojects/gst-plugins-base/gst-libs/gst/gl/meson.build +++ b/subprojects/gst-plugins-base/gst-libs/gst/gl/meson.build @@ -689,7 +689,16 @@ if need_win_x11 != 'no' endif if need_win_dispmanx != 'no' - if bcm_host_dep.found() + have_dispmanx_window_t = cc.has_type( + 'EGL_DISPMANX_WINDOW_T', + prefix: ''' +#include +#include +''', + dependencies: [gl_lib_deps, egl_dep, bcm_host_dep], + include_directories: gl_includes) + + if have_dispmanx_window_t and bcm_host_dep.found() if not egl_dep.found() error('dispmanx requires the use of egl') endif