mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-22 17:51:16 +00:00
meson: fix GstPluginsPath.json generation
The refactored code was only adding paths to plugins in projects that build hotdoc, which is not the case of gst-python for example
This commit is contained in:
parent
4c6b301fa0
commit
227c35b5d3
1 changed files with 29 additions and 18 deletions
45
meson.build
45
meson.build
|
@ -33,22 +33,22 @@ endif
|
||||||
|
|
||||||
# Ordered list of subprojects (dict has no ordering guarantees)
|
# Ordered list of subprojects (dict has no ordering guarantees)
|
||||||
subprojects = [
|
subprojects = [
|
||||||
['gstreamer', {'build-hotdoc': true}],
|
['gstreamer', {'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-plugins-base', {'build-hotdoc': true}],
|
['gst-plugins-base', {'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-plugins-good', {'build-hotdoc': true}],
|
['gst-plugins-good', {'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['libnice', { 'option': get_option('libnice'), 'match_gst_version': false}],
|
['libnice', { 'option': get_option('libnice'), 'match_gst_version': false}],
|
||||||
['gst-plugins-bad', { 'option': get_option('bad'), 'build-hotdoc': true }],
|
['gst-plugins-bad', { 'option': get_option('bad'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-plugins-ugly', { 'option': get_option('ugly'), 'build-hotdoc': true }],
|
['gst-plugins-ugly', { 'option': get_option('ugly'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-libav', { 'option': get_option('libav'), 'build-hotdoc': true }],
|
['gst-libav', { 'option': get_option('libav'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-rtsp-server', { 'option': get_option('rtsp_server'), 'build-hotdoc': true }],
|
['gst-rtsp-server', { 'option': get_option('rtsp_server'), 'build-hotdoc': true }],
|
||||||
['gst-devtools', { 'option': get_option('devtools'), 'build-hotdoc': true }],
|
['gst-devtools', { 'option': get_option('devtools'), 'build-hotdoc': true }],
|
||||||
['gst-integration-testsuites', { 'option': get_option('devtools') }],
|
['gst-integration-testsuites', { 'option': get_option('devtools') }],
|
||||||
['gst-editing-services', { 'option': get_option('ges'), 'build-hotdoc': true }],
|
['gst-editing-services', { 'option': get_option('ges'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gstreamer-vaapi', { 'option': get_option('vaapi'), 'build-hotdoc': true }],
|
['gstreamer-vaapi', { 'option': get_option('vaapi'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gst-omx', { 'option': get_option('omx'), 'build-hotdoc': true, }],
|
['gst-omx', { 'option': get_option('omx'), 'build-hotdoc': true, 'has-plugins': true}],
|
||||||
['gstreamer-sharp', { 'option': get_option('sharp') }],
|
['gstreamer-sharp', { 'option': get_option('sharp') }],
|
||||||
['pygobject', { 'option': get_option('python'), 'match_gst_version': false }],
|
['pygobject', { 'option': get_option('python'), 'match_gst_version': false }],
|
||||||
['gst-python', { 'option': get_option('python') }],
|
['gst-python', { 'option': get_option('python'), 'has-plugins': true}],
|
||||||
]
|
]
|
||||||
|
|
||||||
python3 = import('python').find_installation()
|
python3 = import('python').find_installation()
|
||||||
|
@ -83,24 +83,35 @@ foreach sp : subprojects
|
||||||
subproj = subproject(project_name, required: is_required)
|
subproj = subproject(project_name, required: is_required)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if subproj.found() and build_infos.has_key('build-hotdoc', default: false)
|
if subproj.found()
|
||||||
|
# Replace by using subproject.get_variable('plugins', [])
|
||||||
|
# when https://github.com/mesonbuild/meson/pull/5426/files
|
||||||
|
# is merged and released
|
||||||
|
if build_infos.has_key('has-plugins', default: false)
|
||||||
plugins = subproj.get_variable('plugins')
|
plugins = subproj.get_variable('plugins')
|
||||||
if plugins.length() > 0
|
else
|
||||||
plugins_doc_caches += [subproj.get_variable('plugins_doc_dep')]
|
plugins = []
|
||||||
endif
|
endif
|
||||||
|
|
||||||
foreach plugin: plugins
|
foreach plugin: plugins
|
||||||
all_plugins += pathsep + plugin.full_path()
|
all_plugins += pathsep + plugin.full_path()
|
||||||
endforeach
|
endforeach
|
||||||
if documented_projects != ''
|
|
||||||
documented_projects += ','
|
|
||||||
endif
|
|
||||||
documented_projects += project_name
|
|
||||||
|
|
||||||
subprojects_names += [project_name]
|
subprojects_names += [project_name]
|
||||||
cmdres = run_command(python3, '-c', symlink.format(project_name, meson.current_source_dir()))
|
cmdres = run_command(python3, '-c', symlink.format(project_name, meson.current_source_dir()))
|
||||||
if cmdres.returncode() == 0
|
if cmdres.returncode() == 0
|
||||||
message('Created symlink to ' + project_name)
|
message('Created symlink to ' + project_name)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if build_infos.has_key('build-hotdoc', default: false)
|
||||||
|
if plugins.length() > 0
|
||||||
|
plugins_doc_caches += [subproj.get_variable('plugins_doc_dep')]
|
||||||
|
endif
|
||||||
|
if documented_projects != ''
|
||||||
|
documented_projects += ','
|
||||||
|
endif
|
||||||
|
documented_projects += project_name
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
endforeach
|
endforeach
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue