meson: don't use subproject fallback for gst-validate if it won't work
authorTim-Philipp Müller <tim@centricular.com>
Sat, 29 Oct 2016 15:24:53 +0000 (16:24 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Fri, 13 Jan 2017 12:16:01 +0000 (12:16 +0000)
gst-validate has a hard-dep on json-glib-1.0 so maintain optionality of
it all by only dragging it in as a fallback if we know we can satisfy
the dependencies.

meson.build

index b720a09..5eb0859 100644 (file)
@@ -64,8 +64,15 @@ if host_machine.system() != 'windows'
 endif
 gstcontroller_dep = dependency('gstreamer-controller-1.0', version : gst_req,
   fallback : ['gstreamer', 'gst_controller_dep'])
-gstvalidate_dep = dependency('gst-validate-1.0', version : gst_req, required : false,
-  fallback : ['gst-devtools', 'validate_dep'])
+
+# gst-validate has a hard-dep on json-glib-1.0 so maintain optionality of it all
+# by only dragging it in as a fallback if we know we can satisfy the dependencies
+if dependency('json-glib-1.0').found()
+  gstvalidate_dep = dependency('gst-validate-1.0', version : gst_req, required : false,
+    fallback : ['gst-devtools', 'validate_dep'])
+else
+  gstvalidate_dep = dependency('gst-validate-1.0', vesion: gst_req, required : false)
+endif
 
 gio_dep = dependency('gio-2.0', version : glib_req)
 libxml_dep = dependency('libxml-2.0')