meson: Subprjects can define both "plugins" and "gst_plugins"
authorXavier Claessens <xavier.claessens@collabora.com>
Fri, 2 Sep 2022 14:46:45 +0000 (10:46 -0400)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Fri, 2 Sep 2022 15:01:45 +0000 (15:01 +0000)
If "gst_plugins" is defined we can ignore the value of legacy "plugins"
variable, subprojects could be using it for something else, which is the
case of gst-plugin-rs.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2976>

meson.build

index ae11416..69f7d9b 100644 (file)
@@ -174,12 +174,13 @@ foreach sp : subprojects
 
   if subproj.found()
     plugins = subproj.get_variable('gst_plugins', [])
+    legacy_plugins = subproj.get_variable('plugins', [])
     all_plugins += plugins
-    if subproj.get_variable('gst_plugins', []).length() != subproj.get_variable('plugins', plugins).length()
+    if plugins.length() == 0 and legacy_plugins.length() > 0
       warning(f'DEPRECATED use of the `plugins` variable in @project_name@.')
       warning('The variable should now be called `gst_plugins` and use:')
       warning('`declare_dependency( link_with: <plugin_target>, variable: {\'full_path\': <plugin_target>.full_path()})` instead')
-      foreach plugin: subproj.get_variable('plugins', [])
+      foreach plugin: legacy_plugins
         all_plugins += [declare_dependency(link_with: plugin, variables: {'full_path': plugin.full_path()})]
       endforeach
     endif