meson: Subprjects can define both "plugins" and "gst_plugins"

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>
This commit is contained in:
Xavier Claessens 2022-09-02 10:46:45 -04:00 committed by GStreamer Marge Bot
parent 57a6e48ed1
commit ef6f157205

View 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