summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2017-12-19 15:06:22 +0000
committerTim-Philipp Müller <tim@centricular.com>2017-12-19 15:07:48 +0000
commitb7bfcc32d1b3572fd09abfa61770c8dde31bdf3c (patch)
treed97b53a767a505e63d1df45aff17baf414684bc8 /meson.build
parentcd2d5c140dd8e13105c3eca589284feb3fb20827 (diff)
downloadgstreamer-plugins-bad-b7bfcc32d1b3572fd09abfa61770c8dde31bdf3c.tar.gz
meson: fix build with GstGL from gst-plugins-base as subproject
- use right fallback variable - get platform/winsys variables from subproject instead of pkg-config With contributions from Thibault Saunier.
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build33
1 files changed, 22 insertions, 11 deletions
diff --git a/meson.build b/meson.build
index 1fef56885..3edc7272b 100644
--- a/meson.build
+++ b/meson.build
@@ -325,20 +325,31 @@ endif
# GStreamer OpenGL
gstgl_dep = dependency('gstreamer-gl-1.0', version : gst_req,
- fallback : ['gst-plugins-base', 'gl_dep'], required: false)
+ fallback : ['gst-plugins-base', 'gstgl_dep'], required: false)
+
build_gstgl = gstgl_dep.found() # FIXME: add option?
-gst_gl_winsys = gstgl_dep.get_pkgconfig_variable('gl_winsys')
-message('GStreamer OpenGL window systems: ' + gst_gl_winsys)
-foreach ws : ['x11', 'wayland', 'android', 'cocoa', 'eagl']
- set_variable('gst_gl_have_window_@0@'.format(ws), gst_gl_winsys.contains(ws))
-endforeach
+if build_gstgl
+ if gstgl_dep.type_name() == 'pkg'
+ gst_gl_winsys = gstgl_dep.get_pkgconfig_variable('gl_winsys')
+ gst_gl_platforms = gstgl_dep.get_pkgconfig_variable('gl_platforms')
+ else
+ gstbase = subproject('gst-plugins-base')
+ gst_gl_winsys = ' '.join(gstbase.get_variable('enabled_gl_winsys'))
+ gst_gl_platforms = ' '.join(gstbase.get_variable('enabled_gl_platforms'))
+ endif
-gst_gl_platforms = gstgl_dep.get_pkgconfig_variable('gl_platforms')
-message('GStreamer OpenGL platforms: ' + gst_gl_platforms)
-foreach p : ['glx', 'egl', 'cgl', 'eagl']
- set_variable('gst_gl_have_platform_@0@'.format(p), gst_gl_platforms.contains(p))
-endforeach
+ message('GStreamer OpenGL window systems: ' + gst_gl_winsys)
+ message('GStreamer OpenGL platforms: ' + gst_gl_platforms)
+
+ foreach ws : ['x11', 'wayland', 'android', 'cocoa', 'eagl', 'win32', 'dispmanx', 'viv_fb']
+ set_variable('gst_gl_have_window_@0@'.format(ws), gst_gl_winsys.contains(ws))
+ endforeach
+
+ foreach p : ['glx', 'egl', 'cgl', 'eagl', 'wgl']
+ set_variable('gst_gl_have_platform_@0@'.format(p), gst_gl_platforms.contains(p))
+ endforeach
+endif
libm = cc.find_library('m', required : false)
glib_dep = dependency('glib-2.0', version : glib_req,