mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 04:36:20 +00:00
gstreamer-full: Error out when ABI plugins != built plugins
This logs an error message listing all ABI plugins which are disabled (usually because of `-Dauto_features=disabled`). Those need to be scouted out and enabled manually through `-Dgst_plugins_(bad, good,base):plugin=enabled`. See #2934 Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5244>
This commit is contained in:
parent
107edc0c07
commit
a426e76d3e
1 changed files with 16 additions and 4 deletions
20
meson.build
20
meson.build
|
@ -359,18 +359,30 @@ if building_full
|
||||||
gst_c_args = ['-DHAVE_CONFIG_H']
|
gst_c_args = ['-DHAVE_CONFIG_H']
|
||||||
|
|
||||||
# Generate a .c file which declare and register all built plugins
|
# Generate a .c file which declare and register all built plugins
|
||||||
all_plugin_names = ';'.join(plugins_names)
|
|
||||||
|
|
||||||
static_plugins = get_option('gst-full-plugins')
|
static_plugins = get_option('gst-full-plugins')
|
||||||
|
plugins_to_be_initialized = []
|
||||||
if static_plugins == '*'
|
if static_plugins == '*'
|
||||||
static_plugins = all_plugin_names
|
all_plugin_names = ';'.join(plugins_names)
|
||||||
|
else
|
||||||
|
missing_plugins = []
|
||||||
|
foreach plugin : static_plugins.split(';')
|
||||||
|
if plugins_names.contains(plugin)
|
||||||
|
plugins_to_be_initialized += [plugin]
|
||||||
|
else
|
||||||
|
missing_plugins += [plugin]
|
||||||
|
endif
|
||||||
|
endforeach
|
||||||
|
if missing_plugins.length() > 0
|
||||||
|
error('Some gstreamer-full plugins enabled via the \'gst-full-plugins\' option are not available, please enable the corresponding meson options: @0@'.format(', '.join(missing_plugins)))
|
||||||
|
endif
|
||||||
|
all_plugin_names = ';'.join(plugins_to_be_initialized)
|
||||||
endif
|
endif
|
||||||
generate_init_static_plugins = find_program('scripts/generate_init_static_plugins.py')
|
generate_init_static_plugins = find_program('scripts/generate_init_static_plugins.py')
|
||||||
init_static_plugins_c = configure_file(
|
init_static_plugins_c = configure_file(
|
||||||
output: 'gstinitstaticplugins.c',
|
output: 'gstinitstaticplugins.c',
|
||||||
command : [generate_init_static_plugins,
|
command : [generate_init_static_plugins,
|
||||||
'-o ' + '@OUTPUT@',
|
'-o ' + '@OUTPUT@',
|
||||||
'-p ' + static_plugins,
|
'-p ' + all_plugin_names,
|
||||||
'-e ' + get_option('gst-full-elements'),
|
'-e ' + get_option('gst-full-elements'),
|
||||||
'-t ' + get_option('gst-full-typefind-functions'),
|
'-t ' + get_option('gst-full-typefind-functions'),
|
||||||
'-d ' + get_option('gst-full-device-providers'),
|
'-d ' + get_option('gst-full-device-providers'),
|
||||||
|
|
Loading…
Reference in a new issue