meson: tools: generate the targets dynamically
authorAntonio Ospite <ao2@ao2.it>
Thu, 3 Nov 2016 12:34:18 +0000 (13:34 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Fri, 11 Nov 2016 10:01:16 +0000 (10:01 +0000)
The three targets are the same except for input and output
files, use a loop and generate them dynamically.

https://bugzilla.gnome.org/show_bug.cgi?id=773917

tools/meson.build

index 2882c83..c8d752f 100644 (file)
@@ -1,23 +1,14 @@
-executable('gst-inspect-1.0',
-  'gst-inspect.c',
-  install: true,
-  dependencies : [glib_dep, gobject_dep, gmodule_dep, mathlib, gst_dep],
-  link_with: [printf_lib],
-  c_args: gst_c_args,
-)
+tools = [ 'gst-inspect', 'gst-launch','gst-typefind' ]
 
-executable('gst-launch-1.0',
-  'gst-launch.c',
-  install: true,
-  dependencies : [glib_dep, gobject_dep, gmodule_dep, mathlib, gst_dep],
-  link_with: [printf_lib],
-  c_args: gst_c_args,
-)
+foreach tool : tools
+  exe_name = '@0@-@1@'.format(tool, apiversion)
+  src_file = '@0@.c'.format(tool)
 
-executable('gst-typefind-1.0',
-  'gst-typefind.c',
-  install: true,
-  dependencies : [glib_dep, gobject_dep, gmodule_dep, mathlib, gst_dep],
-  link_with: [printf_lib],
-  c_args: gst_c_args,
-)
+  executable(exe_name,
+    src_file,
+    install: true,
+    dependencies : [glib_dep, gobject_dep, gmodule_dep, mathlib, gst_dep],
+    link_with: [printf_lib],
+    c_args: gst_c_args,
+  )
+endforeach