diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2017-12-19 15:06:22 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2017-12-19 15:07:48 +0000 |
commit | b7bfcc32d1b3572fd09abfa61770c8dde31bdf3c (patch) | |
tree | d97b53a767a505e63d1df45aff17baf414684bc8 /meson.build | |
parent | cd2d5c140dd8e13105c3eca589284feb3fb20827 (diff) | |
download | gstreamer-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.build | 33 |
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, |