diff --git a/subprojects/gst-devtools/docs/meson.build b/subprojects/gst-devtools/docs/meson.build index ff2f4723e5..33bb0660e9 100644 --- a/subprojects/gst-devtools/docs/meson.build +++ b/subprojects/gst-devtools/docs/meson.build @@ -64,7 +64,6 @@ endforeach validate_sources = gstvalidate_headers + gstvalidate_sources hotdoc = import('hotdoc') -plugins_doc = [] libs_doc = [hotdoc.generate_doc('gst-devtools', project_version: api_version, sitemap: 'sitemap.txt', diff --git a/subprojects/gst-devtools/meson.build b/subprojects/gst-devtools/meson.build index 4c53c83cae..5fa2b2895f 100644 --- a/subprojects/gst-devtools/meson.build +++ b/subprojects/gst-devtools/meson.build @@ -167,11 +167,18 @@ pkgconfig_subdirs = ['gstreamer-1.0'] gst_plugins_doc_dep = [] plugins = [] +plugin_sources = {} i18n = import('i18n') static_build = get_option('default_library') == 'static' gst_libraries = [] +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + python_mod = import('python') python3 = python_mod.find_installation() if not get_option('validate').disabled() diff --git a/subprojects/gst-devtools/validate/gst/validate/meson.build b/subprojects/gst-devtools/validate/gst/validate/meson.build index 7d2aa4e89f..2829f4cc0c 100644 --- a/subprojects/gst-devtools/validate/gst/validate/meson.build +++ b/subprojects/gst-devtools/validate/gst/validate/meson.build @@ -90,6 +90,14 @@ else warning('Statically building GstValidate as a tracer is not supported yet.') endif +doc_sources = [] +foreach s: gstvalidate_headers + doc_sources += meson.current_source_dir() / s.full_path() +endforeach + +plugin_sources += { + 'validatetracer': pathsep.join(doc_sources) +} pkg_name = 'gstreamer-validate-1.0' library_def = {'lib': gstvalidate} diff --git a/subprojects/gst-editing-services/docs/meson.build b/subprojects/gst-editing-services/docs/meson.build index acdb7db6b4..37ad658a7f 100644 --- a/subprojects/gst-editing-services/docs/meson.build +++ b/subprojects/gst-editing-services/docs/meson.build @@ -116,13 +116,28 @@ libs_doc = [hotdoc.generate_doc('gst-editing-services', depends: ges_gir[0], )] -if host_system == 'windows' - pathsep = ';' -else - pathsep = ':' -endif +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') + cdir = meson.current_source_dir() -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--builddir', meson.current_build_dir(), @@ -130,7 +145,11 @@ gst_plugins_doc = run_command( '--sitemap', cdir / 'plugins/sitemap.txt', '--index', cdir / 'plugins/index.md', '--gst_index', cdir / 'plugins/index.md', - '--gst_c_sources', cdir / '../plugins/*/*.[ch]', - '--gst_cache_file', plugins_cache, - check: true, -).stdout().split(pathsep) + '--gst_cache_file', '@INPUT@', + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) diff --git a/subprojects/gst-editing-services/meson.build b/subprojects/gst-editing-services/meson.build index 4de1a7ed00..1e1928b2b4 100644 --- a/subprojects/gst-editing-services/meson.build +++ b/subprojects/gst-editing-services/meson.build @@ -312,6 +312,12 @@ pkgconfig_subdirs = ['gstreamer-1.0'] configinc = include_directories('.') gst_libraries = [] +if host_system == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + subdir('ges') subdir('plugins') subdir('tools') diff --git a/subprojects/gst-editing-services/plugins/ges/meson.build b/subprojects/gst-editing-services/plugins/ges/meson.build index 71095a7b92..dadc8f6586 100644 --- a/subprojects/gst-editing-services/plugins/ges/meson.build +++ b/subprojects/gst-editing-services/plugins/ges/meson.build @@ -1,5 +1,9 @@ gstges_sources = ['gesplugin.c', 'gessrc.c', 'gesdemux.c', 'gesbasebin.c'] +gstges_headers = [ + 'gesbasebin.h', +] + gstges = library('gstges', gstges_sources, dependencies : [gst_dep, ges_dep], include_directories: [configinc], @@ -7,4 +11,13 @@ gstges = library('gstges', gstges_sources, install : true, install_dir : plugins_install_dir, ) -plugins += [gstges] \ No newline at end of file +plugins += [gstges] + +doc_sources = [] +foreach s: gstges_sources + gstges_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ges': pathsep.join(doc_sources) +} \ No newline at end of file diff --git a/subprojects/gst-editing-services/plugins/meson.build b/subprojects/gst-editing-services/plugins/meson.build index 7190450136..a041d83b12 100644 --- a/subprojects/gst-editing-services/plugins/meson.build +++ b/subprojects/gst-editing-services/plugins/meson.build @@ -1,3 +1,4 @@ plugins = [] +plugin_sources = {} subdir('nle') -subdir('ges') \ No newline at end of file +subdir('ges') diff --git a/subprojects/gst-editing-services/plugins/nle/meson.build b/subprojects/gst-editing-services/plugins/nle/meson.build index 13cbd45dd8..fd298fa78e 100644 --- a/subprojects/gst-editing-services/plugins/nle/meson.build +++ b/subprojects/gst-editing-services/plugins/nle/meson.build @@ -7,6 +7,17 @@ nle_sources = ['nleobject.c', 'gstnle.c' ] +nle_headers = [ + 'nlesource.h', + 'nle.h', + 'nleurisource.h', + 'nletypes.h', + 'nlecomposition.h', + 'nleghostpad.h', + 'nleobject.h', + 'nleoperation.h', +] + deps = [gst_dep, gstbase_dep] c_args = ges_c_args if gstvalidate_dep.found() @@ -23,3 +34,12 @@ nle = library('gstnle', nle_sources, install_dir : plugins_install_dir, ) plugins += [nle] + +doc_sources = [] +foreach s: nle_sources + nle_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'nle': pathsep.join(doc_sources) +} \ No newline at end of file diff --git a/subprojects/gst-libav/docs/meson.build b/subprojects/gst-libav/docs/meson.build index da50ad9b89..c4f337282a 100644 --- a/subprojects/gst-libav/docs/meson.build +++ b/subprojects/gst-libav/docs/meson.build @@ -78,15 +78,28 @@ foreach extension: required_hotdoc_extensions endif endforeach +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') -libs_doc = [] cdir = meson.current_source_dir() -if host_machine.system() == 'windows' - pathsep = ';' -else - pathsep = ':' -endif -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--project_version', api_version, @@ -94,8 +107,12 @@ gst_plugins_doc = run_command( '--sitemap', cdir / 'sitemap.txt', '--index', cdir / 'index.md', '--gst_index', cdir / 'index.md', - '--gst_c_sources', cdir / '../ext/*/*.[ch]', - '--gst_cache_file', plugins_cache, - check: true, -).stdout().split(pathsep) + '--gst_cache_file', '@INPUT@', + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) diff --git a/subprojects/gst-libav/ext/libav/meson.build b/subprojects/gst-libav/ext/libav/meson.build index 70b6532b5a..85e334e62b 100644 --- a/subprojects/gst-libav/ext/libav/meson.build +++ b/subprojects/gst-libav/ext/libav/meson.build @@ -1,4 +1,4 @@ -sources = [ +libav_sources = [ 'gstav.c', 'gstavprotocol.c', 'gstavcodecmap.c', @@ -14,8 +14,20 @@ sources = [ 'gstavvidcmp.c', ] +libav_headers = [ + 'gstavviddec.h', + 'gstavvidenc.h', + 'gstavcfg.h', + 'gstavprotocol.h', + 'gstavutils.h', + 'gstavaudenc.h', + 'gstav.h', + 'gstavcodecmap.h', + 'gstavauddec.h', +] + gstlibav_plugin = library('gstlibav', - sources, + libav_sources, c_args : gst_libav_args, include_directories : [configinc], dependencies : libav_deps + [gst_dep, gstbase_dep, gstvideo_dep, @@ -24,3 +36,12 @@ gstlibav_plugin = library('gstlibav', install_dir : plugins_install_dir, ) plugins += [gstlibav_plugin] + +doc_sources = [] +foreach s: libav_sources + libav_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'libav': pathsep.join(doc_sources) +} diff --git a/subprojects/gst-libav/meson.build b/subprojects/gst-libav/meson.build index cd6c092a39..c452a17199 100644 --- a/subprojects/gst-libav/meson.build +++ b/subprojects/gst-libav/meson.build @@ -237,6 +237,12 @@ if get_option('default_library') == 'shared' endif plugins = [] +plugin_sources = {} +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif subdir('ext/libav') subdir('docs') subdir('tests') diff --git a/subprojects/gst-plugins-bad/docs/meson.build b/subprojects/gst-plugins-bad/docs/meson.build index 7ab5ad6cfd..17a16a6722 100644 --- a/subprojects/gst-plugins-bad/docs/meson.build +++ b/subprojects/gst-plugins-bad/docs/meson.build @@ -244,13 +244,28 @@ foreach lib_def: libs endif endforeach +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') + cdir = meson.current_source_dir() -if host_machine.system() == 'windows' - pathsep = ';' -else - pathsep = ':' -endif -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--builddir', meson.current_build_dir(), @@ -259,20 +274,13 @@ gst_plugins_doc = run_command( '--index', cdir / 'plugins/index.md', '--c_flags', '\-DGST_USE_UNSTABLE_API', '--gst_index', 'plugins/index.md', - '--gst_c_sources', - cdir / '../sys/*/*.[cmh]', - cdir / '../sys/*/*.cpp', - cdir / '../sys/*/*.cc', - cdir / '../sys/*/*.mm', - cdir / '../sys/*/*.hh', - cdir / '../ext/*/*.[ch]', - cdir / '../ext/*/*.cpp', - cdir / '../ext/*/*.cc', - cdir / '../ext/*/*.hh', - cdir / '../gst/*/*.[ch]', - cdir / '../gst/rtmp2/*/*.[ch]', - '--gst_cache_file', plugins_cache, '--gst_c_source_filters', excludes, - '--include_paths', join_paths(meson.current_source_dir(), '..'), - check: true, -).stdout().split(pathsep) + '--gst_cache_file', '@INPUT@', + '--include_paths', cdir / '..', + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) diff --git a/subprojects/gst-plugins-bad/ext/aes/meson.build b/subprojects/gst-plugins-bad/ext/aes/meson.build index 169fb83c49..71fa524415 100644 --- a/subprojects/gst-plugins-bad/ext/aes/meson.build +++ b/subprojects/gst-plugins-bad/ext/aes/meson.build @@ -5,23 +5,36 @@ aes_sources = [ 'gstaesdec.c', ] +aes_headers = [ + 'gstaesenc.h', + 'gstaeshelper.h', + 'gstaesdec.h', +] + +doc_sources = [] +foreach s: aes_sources + aes_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'aes': pathsep.join(doc_sources) +} + aes_cargs = [] aes_dep = dependency('openssl', version : '>= 1.1.0', required : get_option('aes')) if aes_dep.found() aes_cargs += ['-DHAVE_OPENSSL'] -else - subdir_done() -endif -gstaes = library('gstaes', - aes_sources, - c_args : gst_plugins_bad_args + aes_cargs, - link_args : noseh_link_args, - include_directories : [configinc], - dependencies : [gstpbutils_dep, gstvideo_dep, - aes_dep, gio_dep, libm], - install : true, - install_dir : plugins_install_dir, -) -plugins += [gstaes] + gstaes = library('gstaes', + aes_sources, + c_args : gst_plugins_bad_args + aes_cargs, + link_args : noseh_link_args, + include_directories : [configinc], + dependencies : [gstpbutils_dep, gstvideo_dep, + aes_dep, gio_dep, libm], + install : true, + install_dir : plugins_install_dir, + ) + plugins += [gstaes] +endif aes_dep = declare_dependency(include_directories : include_directories('.')) diff --git a/subprojects/gst-plugins-bad/ext/analyticsoverlay/meson.build b/subprojects/gst-plugins-bad/ext/analyticsoverlay/meson.build index 824b382da8..7c43e2160e 100644 --- a/subprojects/gst-plugins-bad/ext/analyticsoverlay/meson.build +++ b/subprojects/gst-plugins-bad/ext/analyticsoverlay/meson.build @@ -3,6 +3,19 @@ analyticsoverlay_sources = [ 'gstobjectdetectionoverlay.c', ] +analyticsoverlay_headers = [ + 'gstobjectdetectionoverlay.h', +] + +doc_sources = [] +foreach s: analyticsoverlay_sources + analyticsoverlay_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'analyticsoverlay': pathsep.join(doc_sources) +} + gstanalyticsoverlay_ext_dep = dependency('pangocairo', version : '>=1.22.0', required : get_option('analyticsoverlay'), fallback: ['pango', 'libpangocairo_dep'], @@ -20,4 +33,5 @@ if gstanalyticsoverlay_ext_dep.found() install_dir : plugins_install_dir, ) plugins += [gstanalyticsoverlay] + endif diff --git a/subprojects/gst-plugins-bad/ext/aom/meson.build b/subprojects/gst-plugins-bad/ext/aom/meson.build index 48fb18228f..b367e7826d 100644 --- a/subprojects/gst-plugins-bad/ext/aom/meson.build +++ b/subprojects/gst-plugins-bad/ext/aom/meson.build @@ -1,6 +1,30 @@ aom_dep = dependency('aom', required: get_option('aom')) aom3_dep = dependency('aom', version: '>= 3', required: get_option('aom')) aom3_2_dep = dependency('aom', version: '>= 3.2', required: get_option('aom')) + +aom_sources = [ + 'gstaom.c', + 'gstav1enc.c', + 'gstav1dec.c', + 'gstav1utils.c', +] + +aom_headers = [ + 'gstav1utils.h', + 'gstav1dec.h', + 'gstav1enc.h', + 'gstaom.h', +] + +doc_sources = [] +foreach s: aom_sources + aom_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'aom': pathsep.join(doc_sources) +} + if aom_dep.found() aom_defines = [] if aom3_dep.found() @@ -10,8 +34,9 @@ if aom_dep.found() aom_defines += ['-DHAVE_LIBAOM_3_2'] endif + gstaom = library('gstaom', - ['gstaom.c', 'gstav1enc.c', 'gstav1dec.c', 'gstav1utils.c'], + aom_sources, c_args : gst_plugins_bad_args + aom_defines, include_directories : [configinc], dependencies : [gstpbutils_dep, gstvideo_dep, aom_dep], diff --git a/subprojects/gst-plugins-bad/ext/assrender/meson.build b/subprojects/gst-plugins-bad/ext/assrender/meson.build index a51a755a1c..4ab59d8bc8 100644 --- a/subprojects/gst-plugins-bad/ext/assrender/meson.build +++ b/subprojects/gst-plugins-bad/ext/assrender/meson.build @@ -1,7 +1,25 @@ ass_dep = dependency('libass', version : '>= 0.10.2', required : get_option('assrender')) + +assrender_sources = [ + 'gstassrender.c', +] + +assrender_headers = [ + 'gstassrender.h', +] + +doc_sources = [] +foreach s: assrender_sources + assrender_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'assrender': pathsep.join(doc_sources) +} + if ass_dep.found() gstassrender = library('gstassrender', - 'gstassrender.c', + assrender_sources, c_args : gst_plugins_bad_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/ext/avtp/meson.build b/subprojects/gst-plugins-bad/ext/avtp/meson.build index bc359fd21b..ad049a710b 100644 --- a/subprojects/gst-plugins-bad/ext/avtp/meson.build +++ b/subprojects/gst-plugins-bad/ext/avtp/meson.build @@ -18,6 +18,34 @@ avtp_sources = [ 'gstavtpcrfcheck.c', ] +avtp_headers = [ + 'gstavtpvfpaybase.h', + 'gstavtpcrfutil.h', + 'gstavtpsink.h', + 'gstavtprvfpay.h', + 'gstavtpcrfsync.h', + 'gstavtpcrfbase.h', + 'gstavtpcrfcheck.h', + 'gstavtprvfdepay.h', + 'gstavtpvfdepaybase.h', + 'gstavtpcvfpay.h', + 'gstavtpaafpay.h', + 'gstavtpsrc.h', + 'gstavtpbasedepayload.h', + 'gstavtpaafdepay.h', + 'gstavtpbasepayload.h', + 'gstavtpcvfdepay.h', +] + +doc_sources = [] +foreach s: avtp_sources + avtp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'avtp': pathsep.join(doc_sources) +} + avtp_dep = dependency('', required: false) avtp_option = get_option('avtp') diff --git a/subprojects/gst-plugins-bad/ext/bs2b/meson.build b/subprojects/gst-plugins-bad/ext/bs2b/meson.build index a7f00577e2..3d7d3fdeef 100644 --- a/subprojects/gst-plugins-bad/ext/bs2b/meson.build +++ b/subprojects/gst-plugins-bad/ext/bs2b/meson.build @@ -1,5 +1,18 @@ bs2b_sources = [ 'gstbs2b.c', ] +bs2b_headers = [ + 'gstbs2b.h', +] + +doc_sources = [] +foreach s: bs2b_sources + bs2b_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'bs2b': pathsep.join(doc_sources) +} + bs2b_dep = dependency('libbs2b', version : '>=3.1.0', required : get_option('bs2b')) if bs2b_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/bz2/meson.build b/subprojects/gst-plugins-bad/ext/bz2/meson.build index 9ce8a8c05a..e7d8feb962 100644 --- a/subprojects/gst-plugins-bad/ext/bz2/meson.build +++ b/subprojects/gst-plugins-bad/ext/bz2/meson.build @@ -4,6 +4,20 @@ bz2_sources = [ 'gstbz2enc.c', ] +bz2_headers = [ + 'gstbz2enc.h', + 'gstbz2dec.h', +] + +doc_sources = [] +foreach s: bz2_sources + bz2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'bz2': pathsep.join(doc_sources) +} + bz2_dep = cc.find_library('bz2', required : get_option('bz2')) if bz2_dep.found() and cc.has_header_symbol('bzlib.h', 'BZ2_bzlibVersion') diff --git a/subprojects/gst-plugins-bad/ext/chromaprint/meson.build b/subprojects/gst-plugins-bad/ext/chromaprint/meson.build index c2f5a4b63c..3dbfee6940 100644 --- a/subprojects/gst-plugins-bad/ext/chromaprint/meson.build +++ b/subprojects/gst-plugins-bad/ext/chromaprint/meson.build @@ -1,8 +1,25 @@ chromaprint_dep = dependency('libchromaprint', required : get_option('chromaprint')) +chromaprint_sources = [ + 'gstchromaprint.c', +] + +chromaprint_headers = [ + 'gstchromaprint.h', +] + +doc_sources = [] +foreach s: chromaprint_sources + chromaprint_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'chromaprint': pathsep.join(doc_sources) +} + if chromaprint_dep.found() gstchromaprint = library('gstchromaprint', - 'gstchromaprint.c', + chromaprint_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstaudio_dep, chromaprint_dep], diff --git a/subprojects/gst-plugins-bad/ext/closedcaption/meson.build b/subprojects/gst-plugins-bad/ext/closedcaption/meson.build index 6b7df1c0cb..4cffa6a7e0 100644 --- a/subprojects/gst-plugins-bad/ext/closedcaption/meson.build +++ b/subprojects/gst-plugins-bad/ext/closedcaption/meson.build @@ -1,6 +1,31 @@ closedcaption_dep = dependency('pangocairo', version : '>= 1.32.6', required : get_option('closedcaption')) +closedcaption_sources = [ + 'gstcccombiner.c', + 'gstccextractor.c', + 'gstccconverter.c', + 'gstcea608mux.c', + 'gstclosedcaption.c', + 'gstline21dec.c', + 'gstcea708decoder.c', + 'gstceaccoverlay.c', + 'gstline21enc.c', + 'ccutils.c', +] + +closedcaption_headers = [ + 'gstline21dec.h', + 'gstcea708decoder.h', + 'gstcccombiner.h', + 'gstcea608mux.h', + 'gstccconverter.h', + 'gstceaccoverlay.h', + 'gstccextractor.h', + 'ccutils.h', + 'gstline21enc.h', +] + zvbi_sources = [ 'bit_slicer.c', 'decoder.c', @@ -9,10 +34,18 @@ zvbi_sources = [ 'io-sim.c', ] +doc_sources = [] +foreach s: closedcaption_sources + closedcaption_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'closedcaption': pathsep.join(doc_sources) +} + if closedcaption_dep.found() gstclosedcaption = library('gstclosedcaption', - 'gstcccombiner.c', 'gstccextractor.c', 'gstccconverter.c', 'gstcea608mux.c', 'gstclosedcaption.c', - 'gstline21dec.c', 'gstcea708decoder.c', 'gstceaccoverlay.c', 'gstline21enc.c', 'ccutils.c', + closedcaption_sources, zvbi_sources, c_args : gst_plugins_bad_args, link_args : noseh_link_args, diff --git a/subprojects/gst-plugins-bad/ext/codec2json/meson.build b/subprojects/gst-plugins-bad/ext/codec2json/meson.build index 96e4b7e719..2089606a0f 100644 --- a/subprojects/gst-plugins-bad/ext/codec2json/meson.build +++ b/subprojects/gst-plugins-bad/ext/codec2json/meson.build @@ -1,15 +1,31 @@ -codec2json_sources = files([ +codec2json_sources = [ 'gstav12json.c', 'gsth2642json.c', 'gsth2652json.c', 'gstvp82json.c', 'plugin.c', -]) +] cp_args = [ '-DGST_USE_UNSTABLE_API', ] +codec2json_headers = [ + 'gsth2652json.h', + 'gsth2642json.h', + 'gstvp82json.h', + 'gstav12json.h', +] + +doc_sources = [] +foreach s: codec2json_sources + codec2json_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'codec2json': pathsep.join(doc_sources) +} + json_dep = dependency('json-glib-1.0', version : '>=1.6.6', fallback : ['json-glib', 'json_glib_dep'], required: get_option('codec2json')) if json_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/colormanagement/meson.build b/subprojects/gst-plugins-bad/ext/colormanagement/meson.build index 187d089f5f..44bc2963cb 100644 --- a/subprojects/gst-plugins-bad/ext/colormanagement/meson.build +++ b/subprojects/gst-plugins-bad/ext/colormanagement/meson.build @@ -1,7 +1,26 @@ lcms2_dep = dependency('lcms2', version : '>= 2.7', required : get_option('colormanagement')) + +colormanagement_sources = [ + 'gstcolormanagement.c', + 'gstlcms.c', +] + +colormanagement_headers = [ + 'gstlcms.h', +] + +doc_sources = [] +foreach s: colormanagement_sources + colormanagement_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'colormanagement': pathsep.join(doc_sources) +} + if lcms2_dep.found() gstcolormanagement = library('gstcolormanagement', - 'gstcolormanagement.c', 'gstlcms.c', + colormanagement_sources, c_args : gst_plugins_bad_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/ext/curl/meson.build b/subprojects/gst-plugins-bad/ext/curl/meson.build index eb8d286d6c..fb30cf6dbf 100644 --- a/subprojects/gst-plugins-bad/ext/curl/meson.build +++ b/subprojects/gst-plugins-bad/ext/curl/meson.build @@ -13,6 +13,31 @@ curl_sources = [ 'gstcurlqueue.c', ] +curl_headers = [ + 'gstcurltlssink.h', + 'gstcurlsshsink.h', + 'gstcurlelements.h', + 'gstcurlftpsink.h', + 'gstcurlfilesink.h', + 'gstcurlsmtpsink.h', + 'gstcurlhttpsink.h', + 'gstcurlqueue.h', + 'gstcurlsftpsink.h', + 'gstcurlbasesink.h', + 'gstcurlhttpsrc.h', + 'gstcurldefaults.h', + 'curltask.h', +] + +doc_sources = [] +foreach s: curl_sources + curl_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'curl': pathsep.join(doc_sources) +} + curl_dep = dependency('libcurl', version : '>= 7.55.0', required : get_option('curl')) if curl_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/dash/meson.build b/subprojects/gst-plugins-bad/ext/dash/meson.build index dbaf99e5e5..5ab28773bd 100644 --- a/subprojects/gst-plugins-bad/ext/dash/meson.build +++ b/subprojects/gst-plugins-bad/ext/dash/meson.build @@ -33,6 +33,50 @@ dash_sources = [ 'gstdashsink.c', ] +dash_headers = [ + 'gstdashsink.h', + 'gstmpdsegmenttemplatenode.h', + 'gstdashdemux.h', + 'gstmpdsubsetnode.h', + 'gstmpdhelper.h', + 'gstmpdrootnode.h', + 'gstmpdrepresentationnode.h', + 'gstmpdmultsegmentbasenode.h', + 'gstmpdsubrepresentationnode.h', + 'gstmpdsegmentlistnode.h', + 'gstmpdclient.h', + 'gstxmlhelper.h', + 'gstmpdmetricsrangenode.h', + 'gstmpdnode.h', + 'gstmpdlocationnode.h', + 'gstmpdutctimingnode.h', + 'gstmpdsegmenturlnode.h', + 'gstmpdrepresentationbasenode.h', + 'gstmpdsnode.h', + 'gstmpdurltypenode.h', + 'gstmpdprograminformationnode.h', + 'gstmpdsegmenttimelinenode.h', + 'gstmpdsegmentbasenode.h', + 'gstmpdadaptationsetnode.h', + 'gstmpdmetricsnode.h', + 'gstmpdreportingnode.h', + 'gstmpdcontentcomponentnode.h', + 'gstmpddescriptortypenode.h', + 'gstmpdparser.h', + 'gstmpdbaseurlnode.h', + 'gstdash_debug.h', + 'gstmpdperiodnode.h', +] + +doc_sources = [] +foreach s: dash_sources + dash_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dash': pathsep.join(doc_sources) +} + xml2_dep = dependency('libxml-2.0', version : '>= 2.8', fallback : 'libxml2', diff --git a/subprojects/gst-plugins-bad/ext/dc1394/meson.build b/subprojects/gst-plugins-bad/ext/dc1394/meson.build index 7255e64ed2..8152533e8c 100644 --- a/subprojects/gst-plugins-bad/ext/dc1394/meson.build +++ b/subprojects/gst-plugins-bad/ext/dc1394/meson.build @@ -1,7 +1,25 @@ dc1394_dep = dependency('libdc1394-2', version: '>= 2.2.5', required: get_option('dc1394')) + +dc1394_sources = [ + 'gstdc1394src.c', +] + +dc1394_headers = [ + 'gstdc1394src.h', +] + +doc_sources = [] +foreach s: dc1394_sources + dc1394_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dc1394': pathsep.join(doc_sources) +} + if dc1394_dep.found() gstdc1394 = library('gstdc1394', - 'gstdc1394src.c', + dc1394_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies: [gstvideo_dep, dc1394_dep], diff --git a/subprojects/gst-plugins-bad/ext/directfb/meson.build b/subprojects/gst-plugins-bad/ext/directfb/meson.build index e3023c5e4c..be2c70bc06 100644 --- a/subprojects/gst-plugins-bad/ext/directfb/meson.build +++ b/subprojects/gst-plugins-bad/ext/directfb/meson.build @@ -1,8 +1,25 @@ directfb_dep = dependency('directfb', version : '>= 0.9.24', required : get_option('directfb')) +directfb_sources = [ + 'dfbvideosink.c', +] + +directfb_headers = [ + 'dfbvideosink.h', +] + +doc_sources = [] +foreach s: directfb_sources + directfb_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'directfb': pathsep.join(doc_sources) +} + if directfb_dep.found() gstdirectfb = library('gstdirectfb', - 'dfbvideosink.c', + directfb_sources, c_args : gst_plugins_bad_args + cc.get_supported_arguments('-Wno-redundant-decls'), include_directories : [configinc], dependencies : [gstvideo_dep, directfb_dep], diff --git a/subprojects/gst-plugins-bad/ext/dtls/meson.build b/subprojects/gst-plugins-bad/ext/dtls/meson.build index ca07da01e4..303fb54254 100644 --- a/subprojects/gst-plugins-bad/ext/dtls/meson.build +++ b/subprojects/gst-plugins-bad/ext/dtls/meson.build @@ -12,6 +12,28 @@ dtls_sources = [ 'gstdtlselement.c', ] +dtls_headers = [ + 'gstdtlscertificate.h', + 'gstdtlsenc.h', + 'gstdtlssrtpenc.h', + 'gstdtlselements.h', + 'gstdtlssrtpdec.h', + 'gstdtlsconnection.h', + 'gstdtlsdec.h', + 'gstdtlssrtpbin.h', + 'gstdtlssrtpdemux.h', + 'gstdtlsagent.h', +] + +doc_sources = [] +foreach s: dtls_sources + dtls_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dtls': pathsep.join(doc_sources) +} + dtls_option = get_option('dtls').enable_if(get_option('webrtc').enabled(), error_message: 'webrtc option is enabled') openssl_dep = dependency('openssl', version: '>= 1.0.1', required: dtls_option) libcrypto_dep = dependency('libcrypto', required: dtls_option) diff --git a/subprojects/gst-plugins-bad/ext/dts/meson.build b/subprojects/gst-plugins-bad/ext/dts/meson.build index c4868a4e44..dc884e03ab 100644 --- a/subprojects/gst-plugins-bad/ext/dts/meson.build +++ b/subprojects/gst-plugins-bad/ext/dts/meson.build @@ -3,6 +3,23 @@ dts_opt = get_option('dts').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +dtsdec_sources = [ + 'gstdtsdec.c', +] + +dtsdec_headers = [ + 'gstdtsdec.h', +] + +doc_sources = [] +foreach s: dtsdec_sources + dtsdec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dtsdec': pathsep.join(doc_sources) +} + # Don't do any dependency checks if disabled if dts_opt.disabled() subdir_done() @@ -28,7 +45,7 @@ endif if dca_dep.found() gstdtsdec = library('gstdtsdec', - 'gstdtsdec.c', + dtsdec_sources, c_args : gst_plugins_bad_args + no_warn_c_args, link_args : noseh_link_args, include_directories : [configinc, libsinc], diff --git a/subprojects/gst-plugins-bad/ext/faac/meson.build b/subprojects/gst-plugins-bad/ext/faac/meson.build index 4b1e54c4c8..cd689416eb 100644 --- a/subprojects/gst-plugins-bad/ext/faac/meson.build +++ b/subprojects/gst-plugins-bad/ext/faac/meson.build @@ -1,3 +1,20 @@ +faac_sources = [ + 'gstfaac.c', +] + +faac_headers = [ + 'gstfaac.h', +] + +doc_sources = [] +foreach s: faac_sources + faac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'faac': pathsep.join(doc_sources) +} + faac_dep = cc.find_library('faac', required : get_option('faac')) have_faac_h = cc.has_header_symbol('faac.h', 'faacEncOpen') if not have_faac_h and get_option('faac').enabled() @@ -6,7 +23,7 @@ endif if faac_dep.found() and have_faac_h gstfaac = library('gstfaac', - 'gstfaac.c', + faac_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstaudio_dep, gstpbutils_dep, gsttag_dep, faac_dep], diff --git a/subprojects/gst-plugins-bad/ext/faad/meson.build b/subprojects/gst-plugins-bad/ext/faad/meson.build index e7ba28c45f..cfe8328783 100644 --- a/subprojects/gst-plugins-bad/ext/faad/meson.build +++ b/subprojects/gst-plugins-bad/ext/faad/meson.build @@ -1,3 +1,20 @@ +faad_sources = [ + 'gstfaad.c', +] + +faad_headers = [ + 'gstfaad.h', +] + +doc_sources = [] +foreach s: faad_sources + faad_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'faad': pathsep.join(doc_sources) +} + faad_opt = get_option('faad').require(gpl_allowed, error_message: ''' Plugin faad explicitly required via options but GPL-licensed plugins disabled via options. Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. @@ -20,7 +37,7 @@ faad_dep = cc.find_library('faad', required : faad_opt) if faad_dep.found() and have_faad_2_7 gstfaad = library('gstfaad', - 'gstfaad.c', + faad_sources, c_args : gst_plugins_bad_args + [ '-DFAAD2_MINOR_VERSION=7', '-DFAAD_IS_NEAAC' ], link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/ext/fdkaac/meson.build b/subprojects/gst-plugins-bad/ext/fdkaac/meson.build index 834596ad82..a51dfc07f0 100644 --- a/subprojects/gst-plugins-bad/ext/fdkaac/meson.build +++ b/subprojects/gst-plugins-bad/ext/fdkaac/meson.build @@ -1,5 +1,27 @@ fdkaac_dep = dependency('fdk-aac', allow_fallback: true, required : get_option('fdkaac'), include_type: 'system') +fdkaac_sources = [ + 'gstfdkaac.c', + 'gstfdkaacenc.c', + 'gstfdkaacdec.c', + 'gstfdkaacplugin.c', +] + +fdkaac_headers = [ + 'gstfdkaacdec.h', + 'gstfdkaacenc.h', + 'gstfdkaac.h', +] + +doc_sources = [] +foreach s: fdkaac_sources + fdkaac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'fdkaac': pathsep.join(doc_sources) +} + if fdkaac_dep.found() fdkaac_defines = [] @@ -14,7 +36,7 @@ if fdkaac_dep.found() endif gstfdkaac = library('gstfdkaac', - ['gstfdkaac.c', 'gstfdkaacenc.c', 'gstfdkaacdec.c','gstfdkaacplugin.c'], + fdkaac_sources, c_args : gst_plugins_bad_args + fdkaac_defines, include_directories : [configinc], dependencies : [gstaudio_dep, gstpbutils_dep, fdkaac_dep], diff --git a/subprojects/gst-plugins-bad/ext/flite/meson.build b/subprojects/gst-plugins-bad/ext/flite/meson.build index 8e8a654a8b..29adaabac2 100644 --- a/subprojects/gst-plugins-bad/ext/flite/meson.build +++ b/subprojects/gst-plugins-bad/ext/flite/meson.build @@ -3,6 +3,9 @@ flite_sources = [ 'gstflitetestsrc.c', ] +flite_headers = [ +] + flite_libs = [ 'flite', 'flite_cmu_us_kal', @@ -10,6 +13,15 @@ flite_libs = [ 'flite_cmulex' ] +doc_sources = [] +foreach s: flite_sources + flite_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'flite': pathsep.join(doc_sources) +} + if get_option('flite').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/ext/fluidsynth/meson.build b/subprojects/gst-plugins-bad/ext/fluidsynth/meson.build index 20da6d8cd1..c4fa208a1e 100644 --- a/subprojects/gst-plugins-bad/ext/fluidsynth/meson.build +++ b/subprojects/gst-plugins-bad/ext/fluidsynth/meson.build @@ -1,8 +1,25 @@ fluidsynth_dep = dependency('fluidsynth', version : '>= 2.1', required : get_option('fluidsynth')) +fluidsynthmidi_sources = [ + 'gstfluiddec.c', +] + +fluidsynthmidi_headers = [ + 'gstfluiddec.h', +] + +doc_sources = [] +foreach s: fluidsynthmidi_sources + fluidsynthmidi_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'fluidsynthmidi': pathsep.join(doc_sources) +} + if fluidsynth_dep.found() gstfluidsynth = library('gstfluidsynthmidi', - 'gstfluiddec.c', + fluidsynthmidi_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstaudio_dep, gst_dep, fluidsynth_dep], diff --git a/subprojects/gst-plugins-bad/ext/gme/meson.build b/subprojects/gst-plugins-bad/ext/gme/meson.build index 3f31e9cbea..4bac6e64cf 100644 --- a/subprojects/gst-plugins-bad/ext/gme/meson.build +++ b/subprojects/gst-plugins-bad/ext/gme/meson.build @@ -1,3 +1,20 @@ +gme_sources = [ + 'gstgme.c', +] + +gme_headers = [ + 'gstgme.h', +] + +doc_sources = [] +foreach s: gme_sources + gme_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gme': pathsep.join(doc_sources) +} + if get_option('gme').disabled() subdir_done() endif @@ -10,7 +27,9 @@ endif if have_gme cdata.set('HAVE_LIBGME_ACCURACY', cc.has_function('gme_enable_accuracy', dependencies: gme_dep)) - gstgme = library('gstgme', 'gstgme.c', + + gstgme = library('gstgme', + gme_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies: [gstaudio_dep, gme_dep], diff --git a/subprojects/gst-plugins-bad/ext/gs/meson.build b/subprojects/gst-plugins-bad/ext/gs/meson.build index 07429e40d7..3773b8633a 100644 --- a/subprojects/gst-plugins-bad/ext/gs/meson.build +++ b/subprojects/gst-plugins-bad/ext/gs/meson.build @@ -5,6 +5,21 @@ gs_sources = [ 'gstgs.cpp', ] +gs_headers = [ + 'gstgscommon.h', + 'gstgssink.h', + 'gstgssrc.h', +] + +doc_sources = [] +foreach s: gs_sources + gs_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gs': pathsep.join(doc_sources) +} + gs_dep = dependency('google_cloud_cpp_storage', version : '>= 1.25.0', required : get_option('gs')) if gs_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/gsm/meson.build b/subprojects/gst-plugins-bad/ext/gsm/meson.build index 5961cd0659..ee5d6d2976 100644 --- a/subprojects/gst-plugins-bad/ext/gsm/meson.build +++ b/subprojects/gst-plugins-bad/ext/gsm/meson.build @@ -1,3 +1,23 @@ +gsm_sources = [ + 'gstgsm.c', + 'gstgsmenc.c', + 'gstgsmdec.c', +] + +gsm_headers = [ + 'gstgsmenc.h', + 'gstgsmdec.h', +] + +doc_sources = [] +foreach s: gsm_sources + gsm_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gsm': pathsep.join(doc_sources) +} + if get_option('gsm').disabled() subdir_done() endif @@ -17,7 +37,7 @@ endif if gsm_dep.found() and have_gsm_create gstgsm = library('gstgsm', - ['gstgsm.c', 'gstgsmenc.c', 'gstgsmdec.c'], + gsm_sources, c_args : gst_plugins_bad_args + gsm_cargs, include_directories : [configinc], dependencies : [gstaudio_dep, gsm_dep], diff --git a/subprojects/gst-plugins-bad/ext/gtk/meson.build b/subprojects/gst-plugins-bad/ext/gtk/meson.build index 70a45b8c0b..f954490d14 100644 --- a/subprojects/gst-plugins-bad/ext/gtk/meson.build +++ b/subprojects/gst-plugins-bad/ext/gtk/meson.build @@ -1,7 +1,3 @@ -if not use_wayland - subdir_done() -endif - gtkwayland_sources = [ 'gstplugin.c', 'gstgtkutils.c', @@ -10,6 +6,26 @@ gtkwayland_sources = [ 'gtkgstwaylandwidget.c', ] +gtkwayland_headers = [ + 'gstgtkwaylandsink.h', + 'gtkgstwaylandwidget.h', + 'gtkgstbasewidget.h', + 'gstgtkutils.h', +] + +doc_sources = [] +foreach s: gtkwayland_sources + gtkwayland_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gtkwayland': pathsep.join(doc_sources) +} + +if not use_wayland + subdir_done() +endif + gtk_dep = dependency('gtk+-3.0', required : get_option('gtk3')) gtk_wayland_dep = dependency('gtk+-wayland-3.0', required : get_option('gtk3')) diff --git a/subprojects/gst-plugins-bad/ext/hls/meson.build b/subprojects/gst-plugins-bad/ext/hls/meson.build index bfd370bca9..e4340881d4 100644 --- a/subprojects/gst-plugins-bad/ext/hls/meson.build +++ b/subprojects/gst-plugins-bad/ext/hls/meson.build @@ -9,6 +9,26 @@ hls_sources = [ 'm3u8.c', ] +hls_headers = [ + 'gstm3u8playlist.h', + 'm3u8.h', + 'gsthlsdemux.h', + 'gsthlssink.h', + 'gsthlselements.h', + 'gsthlssink2.h', +] + +doc_sources = [] +foreach s: hls_sources + hls_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'hls': pathsep.join(doc_sources) +} + +hls_dep = declare_dependency(include_directories : include_directories('.')) + hls_cargs = ['-DGST_USE_UNSTABLE_API'] hls_crypto = get_option('hls-crypto') @@ -64,4 +84,3 @@ gsthls = library('gsthls', install_dir : plugins_install_dir, ) plugins += [gsthls] -hls_dep = declare_dependency(include_directories : include_directories('.')) diff --git a/subprojects/gst-plugins-bad/ext/iqa/meson.build b/subprojects/gst-plugins-bad/ext/iqa/meson.build index c9c8d7ce06..3899d84b82 100644 --- a/subprojects/gst-plugins-bad/ext/iqa/meson.build +++ b/subprojects/gst-plugins-bad/ext/iqa/meson.build @@ -6,9 +6,26 @@ iqa_opt = get_option('iqa').require(gpl_allowed, error_message: ''' dssim_dep = dependency('dssim', required: iqa_opt, fallback: ['dssim', 'dssim_dep']) +iqa_sources = [ + 'iqa.c', +] + +iqa_headers = [ + 'iqa.h', +] + +doc_sources = [] +foreach s: iqa_sources + iqa_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'iqa': pathsep.join(doc_sources) +} + if dssim_dep.found() gstiqa = library('gstiqa', - 'iqa.c', + iqa_sources, c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API', '-DHAVE_DSSIM'] + cc.get_supported_arguments('-Wno-aggregate-return'), @@ -19,4 +36,3 @@ if dssim_dep.found() ) plugins += [gstiqa] endif - diff --git a/subprojects/gst-plugins-bad/ext/isac/meson.build b/subprojects/gst-plugins-bad/ext/isac/meson.build index 68e9e4f5fe..4834b46520 100644 --- a/subprojects/gst-plugins-bad/ext/isac/meson.build +++ b/subprojects/gst-plugins-bad/ext/isac/meson.build @@ -4,15 +4,29 @@ else webrtc_audio_coding_dep = dependency('webrtc-audio-coding-1', required: get_option('isac')) endif +isac_sources = [ + 'gstisac.c', + 'gstisacenc.c', + 'gstisacdec.c', + 'gstisacutils.c', +] + +isac_headers = [ + 'gstisacenc.h', + 'gstisacdec.h', + 'gstisacutils.h', +] + +doc_sources = [] +foreach s: isac_sources + isac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'isac': pathsep.join(doc_sources) +} if webrtc_audio_coding_dep.found() - isac_sources = [ - 'gstisac.c', - 'gstisacenc.c', - 'gstisacdec.c', - 'gstisacutils.c', - ] - gstisac = library('gstisac', isac_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/ext/ladspa/meson.build b/subprojects/gst-plugins-bad/ext/ladspa/meson.build index 946ef9b2d6..dd8f854a09 100644 --- a/subprojects/gst-plugins-bad/ext/ladspa/meson.build +++ b/subprojects/gst-plugins-bad/ext/ladspa/meson.build @@ -6,6 +6,23 @@ ladspa_sources = [ 'gstladspautils.c', ] +ladspa_headers = [ + 'gstladspasink.h', + 'gstladspa.h', + 'gstladspautils.h', + 'gstladspafilter.h', + 'gstladspasource.h', +] + +doc_sources = [] +foreach s: ladspa_sources + ladspa_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ladspa': pathsep.join(doc_sources) +} + ladspa_cargs = [] if get_option('ladspa').disabled() diff --git a/subprojects/gst-plugins-bad/ext/lc3/meson.build b/subprojects/gst-plugins-bad/ext/lc3/meson.build index 89c24fd4a3..fd708cbe7e 100644 --- a/subprojects/gst-plugins-bad/ext/lc3/meson.build +++ b/subprojects/gst-plugins-bad/ext/lc3/meson.build @@ -4,6 +4,21 @@ lc3_sources = [ 'gstlc3enc.c', ] +lc3_headers = [ + 'gstlc3dec.h', + 'gstlc3common.h', + 'gstlc3enc.h', +] + +doc_sources = [] +foreach s: lc3_sources + lc3_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'lc3': pathsep.join(doc_sources) +} + lc3_dep = dependency('lc3', required:get_option ('lc3')) if lc3_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/lcevcdecoder/meson.build b/subprojects/gst-plugins-bad/ext/lcevcdecoder/meson.build index f95c83c2bb..667adabec5 100644 --- a/subprojects/gst-plugins-bad/ext/lcevcdecoder/meson.build +++ b/subprojects/gst-plugins-bad/ext/lcevcdecoder/meson.build @@ -6,6 +6,22 @@ lcevcdecoder_sources = [ 'gstlcevch264decodebin.c', ] +lcevcdecoder_headers = [ + 'gstlcevcdec.h', + 'gstlcevch264decodebin.h', + 'gstlcevcdecutils.h', + 'gstlcevcdecodebin.h', +] + +doc_sources = [] +foreach s: lcevcdecoder_sources + lcevcdecoder_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'lcevcdecoder': pathsep.join(doc_sources) +} + lcevc_dec_dep = dependency ('lcevc_dec', required: get_option('lcevcdecoder')) if lcevc_dec_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/lcevcencoder/meson.build b/subprojects/gst-plugins-bad/ext/lcevcencoder/meson.build index 81ceffb85b..6898994d41 100644 --- a/subprojects/gst-plugins-bad/ext/lcevcencoder/meson.build +++ b/subprojects/gst-plugins-bad/ext/lcevcencoder/meson.build @@ -5,6 +5,21 @@ lcevcencoder_sources = [ 'gstlcevch264enc.c', ] +lcevcencoder_headers = [ + 'gstlcevcencoder.h', + 'gstlcevcencoderutils.h', + 'gstlcevch264enc.h', +] + +doc_sources = [] +foreach s: lcevcencoder_sources + lcevcencoder_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'lcevcencoder': pathsep.join(doc_sources) +} + lcevc_eil_dep = dependency ('lcevc_eil', required: get_option('lcevcencoder')) if lcevc_eil_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/ldac/meson.build b/subprojects/gst-plugins-bad/ext/ldac/meson.build index 389af653e8..620a50b224 100644 --- a/subprojects/gst-plugins-bad/ext/ldac/meson.build +++ b/subprojects/gst-plugins-bad/ext/ldac/meson.build @@ -3,6 +3,19 @@ ldac_sources = [ 'gstldacenc.c', ] +ldac_headers = [ + 'gstldacenc.h', +] + +doc_sources = [] +foreach s: ldac_sources + ldac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ldac': pathsep.join(doc_sources) +} + ldac_dep = dependency('ldacBT-enc', required : get_option('ldac')) if ldac_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/libde265/meson.build b/subprojects/gst-plugins-bad/ext/libde265/meson.build index 1cd7dd6aa1..bacbe20551 100644 --- a/subprojects/gst-plugins-bad/ext/libde265/meson.build +++ b/subprojects/gst-plugins-bad/ext/libde265/meson.build @@ -3,6 +3,19 @@ de265_sources = [ 'libde265-dec.c', ] +de265_headers = [ + 'libde265-dec.h', +] + +doc_sources = [] +foreach s: de265_sources + de265_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'de265': pathsep.join(doc_sources) +} + de265_dep = dependency('libde265', version : '>= 0.9', required : get_option('libde265')) if de265_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/lv2/meson.build b/subprojects/gst-plugins-bad/ext/lv2/meson.build index c6ad91f70c..fce49f374b 100644 --- a/subprojects/gst-plugins-bad/ext/lv2/meson.build +++ b/subprojects/gst-plugins-bad/ext/lv2/meson.build @@ -5,6 +5,20 @@ lv2_sources = [ 'gstlv2utils.c', ] +lv2_headers = [ + 'gstlv2.h', + 'gstlv2utils.h', +] + +doc_sources = [] +foreach s: lv2_sources + lv2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'lv2': pathsep.join(doc_sources) +} + lv2_dep = dependency('lilv-0', version : '>= 0.22', required : get_option('lv2')) if lv2_dep.found() gstlv2 = library('gstlv2', diff --git a/subprojects/gst-plugins-bad/ext/mdns/meson.build b/subprojects/gst-plugins-bad/ext/mdns/meson.build index ffa7493d31..e2759b1d8e 100644 --- a/subprojects/gst-plugins-bad/ext/mdns/meson.build +++ b/subprojects/gst-plugins-bad/ext/mdns/meson.build @@ -1,11 +1,29 @@ microdns_dep = dependency('microdns', required: get_option('microdns'), fallback: ['libmicrodns', 'mdns_dep']) +microdns_sources = [ + 'gstmicrodns.c', + 'gstmicrodnsdevice.c', +] + +microdns_headers = [ + 'gstmicrodnsdevice.h', +] + +doc_sources = [] +foreach s: microdns_sources + microdns_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'microdns': pathsep.join(doc_sources) +} + if microdns_dep.found() incdirs = [configinc] gstmicrodns = library('gstmicrodns', - ['gstmicrodns.c', 'gstmicrodnsdevice.c'], + microdns_sources, c_args : gst_plugins_bad_args, include_directories : incdirs, dependencies : [gst_dep, microdns_dep], diff --git a/subprojects/gst-plugins-bad/ext/modplug/meson.build b/subprojects/gst-plugins-bad/ext/modplug/meson.build index 0cd30252fa..aac5d14a7a 100644 --- a/subprojects/gst-plugins-bad/ext/modplug/meson.build +++ b/subprojects/gst-plugins-bad/ext/modplug/meson.build @@ -1,3 +1,20 @@ +modplug_sources = [ + 'gstmodplug.cc', +] + +modplug_headers = [ + 'gstmodplug.h', +] + +doc_sources = [] +foreach s: modplug_sources + modplug_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'modplug': pathsep.join(doc_sources) +} + if not add_languages('cpp', native: false, required: get_option('modplug')) subdir_done() endif @@ -6,7 +23,7 @@ modplug_dep = dependency('libmodplug', required: get_option('modplug')) if modplug_dep.found() gstmodplug = library('gstmodplug', - 'gstmodplug.cc', + modplug_sources, cpp_args: gst_plugins_bad_args, include_directories: [configinc], dependencies: [gstaudio_dep, modplug_dep, libm], diff --git a/subprojects/gst-plugins-bad/ext/mpeg2enc/meson.build b/subprojects/gst-plugins-bad/ext/mpeg2enc/meson.build index baa0a62745..6222b13059 100644 --- a/subprojects/gst-plugins-bad/ext/mpeg2enc/meson.build +++ b/subprojects/gst-plugins-bad/ext/mpeg2enc/meson.build @@ -10,6 +10,31 @@ mpeg2enc_opt = get_option('mpeg2enc').require(gpl_allowed, error_message: ''' mjpegtools_dep = dependency('mjpegtools', version : '>=2.0.0', required : mpeg2enc_opt) mpeg2enc_dep = cxx.find_library('mpeg2encpp', required : mpeg2enc_opt) +mpeg2enc_sources = [ + 'gstmpeg2enc.cc', + 'gstmpeg2encoptions.cc', + 'gstmpeg2encoder.cc', + 'gstmpeg2encstreamwriter.cc', + 'gstmpeg2encpicturereader.cc', +] + +mpeg2enc_headers = [ + 'gstmpeg2enc.hh', + 'gstmpeg2encoptions.hh', + 'gstmpeg2encpicturereader.hh', + 'gstmpeg2encoder.hh', + 'gstmpeg2encstreamwriter.hh', +] + +doc_sources = [] +foreach s: mpeg2enc_sources + mpeg2enc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpeg2enc': pathsep.join(doc_sources) +} + if mjpegtools_dep.found() and mpeg2enc_dep.found() no_warn_args = [] foreach arg : [ @@ -22,11 +47,7 @@ if mjpegtools_dep.found() and mpeg2enc_dep.found() endforeach gstmpeg2enc = library('gstmpeg2enc', - 'gstmpeg2enc.cc', - 'gstmpeg2encoptions.cc', - 'gstmpeg2encoder.cc', - 'gstmpeg2encstreamwriter.cc', - 'gstmpeg2encpicturereader.cc', + mpeg2enc_sources, cpp_args : gst_plugins_bad_args + ['-DGST_MJPEGTOOLS_API=20000'] + no_warn_args, link_args : noseh_link_args, include_directories : [configinc, libsinc], diff --git a/subprojects/gst-plugins-bad/ext/mplex/meson.build b/subprojects/gst-plugins-bad/ext/mplex/meson.build index 024293b267..1241732816 100644 --- a/subprojects/gst-plugins-bad/ext/mplex/meson.build +++ b/subprojects/gst-plugins-bad/ext/mplex/meson.build @@ -7,12 +7,32 @@ mplex_opt = get_option('mplex').require(gpl_allowed, error_message: ''' mjpegtools_dep = dependency('mjpegtools', version : '>=2.0.0', required : mplex_opt) mplex2_dep = cxx.find_library('mplex2', required : mplex_opt) +mplex_sources = [ + 'gstmplex.cc', + 'gstmplexibitstream.cc', + 'gstmplexjob.cc', + 'gstmplexoutputstream.cc', +] + +mplex_headers = [ + 'gstmplex.hh', + 'gstmplexibitstream.hh', + 'gstmplexoutputstream.hh', + 'gstmplexjob.hh', +] + +doc_sources = [] +foreach s: mplex_sources + mplex_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mplex': pathsep.join(doc_sources) +} + if mjpegtools_dep.found() and mplex2_dep.found() gstmplex2 = library('gstmplex', - 'gstmplex.cc', - 'gstmplexibitstream.cc', - 'gstmplexjob.cc', - 'gstmplexoutputstream.cc', + mplex_sources, cpp_args : gst_plugins_bad_args + ['-DGST_MJPEGTOOLS_API=20000'], link_args : noseh_link_args, include_directories : [configinc, libsinc], diff --git a/subprojects/gst-plugins-bad/ext/musepack/meson.build b/subprojects/gst-plugins-bad/ext/musepack/meson.build index 1cec04dd5a..f946078efb 100644 --- a/subprojects/gst-plugins-bad/ext/musepack/meson.build +++ b/subprojects/gst-plugins-bad/ext/musepack/meson.build @@ -1,8 +1,27 @@ mpcdec_dep = cc.find_library('mpcdec', required: get_option('musepack')) +musepack_sources = [ + 'gstmusepackdec.c', + 'gstmusepackreader.c', +] + +musepack_headers = [ + 'gstmusepackreader.h', + 'gstmusepackdec.h', +] + +doc_sources = [] +foreach s: musepack_sources + musepack_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'musepack': pathsep.join(doc_sources) +} + if mpcdec_dep.found() and cc.has_header_symbol('mpc/mpcdec.h', 'mpc_demux_init', dependencies: mpcdec_dep) gstmusepack = library('gstmusepack', - 'gstmusepackdec.c', 'gstmusepackreader.c', + musepack_sources, c_args : gst_plugins_bad_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/ext/neon/meson.build b/subprojects/gst-plugins-bad/ext/neon/meson.build index 7c2696cfa1..05e7776341 100644 --- a/subprojects/gst-plugins-bad/ext/neon/meson.build +++ b/subprojects/gst-plugins-bad/ext/neon/meson.build @@ -1,8 +1,25 @@ neon_dep = dependency('neon', version: '>= 0.27', required: get_option('neon')) +neonhttpsrc_sources = [ + 'gstneonhttpsrc.c', +] + +neonhttpsrc_headers = [ + 'gstneonhttpsrc.h', +] + +doc_sources = [] +foreach s: neonhttpsrc_sources + neonhttpsrc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'neonhttpsrc': pathsep.join(doc_sources) +} + if neon_dep.found() gstneon = library('gstneonhttpsrc', - 'gstneonhttpsrc.c', + neonhttpsrc_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstbase_dep, neon_dep], diff --git a/subprojects/gst-plugins-bad/ext/nvcomp/meson.build b/subprojects/gst-plugins-bad/ext/nvcomp/meson.build index ffb40867b2..b267c92338 100644 --- a/subprojects/gst-plugins-bad/ext/nvcomp/meson.build +++ b/subprojects/gst-plugins-bad/ext/nvcomp/meson.build @@ -4,6 +4,22 @@ nvcomp_sources = [ 'gstnvcompvideoenc.cpp', 'plugin.cpp', ] + +nvcomp_headers = [ + 'gstnvcomp.h', + 'gstnvcompvideoenc.h', + 'gstnvcompvideodec.h', +] + +doc_sources = [] +foreach s: nvcomp_sources + nvcomp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'nvcomp': pathsep.join(doc_sources) +} + extra_args = ['-DGST_USE_UNSTABLE_API'] nvcomp_opt = get_option('nvcomp') diff --git a/subprojects/gst-plugins-bad/ext/nvdswrapper/meson.build b/subprojects/gst-plugins-bad/ext/nvdswrapper/meson.build index b8501ff95a..a740a713f2 100644 --- a/subprojects/gst-plugins-bad/ext/nvdswrapper/meson.build +++ b/subprojects/gst-plugins-bad/ext/nvdswrapper/meson.build @@ -2,6 +2,20 @@ nvdswrapper_sources = [ 'plugin.cpp', 'gstnvdsdewarp.cpp', ] + +nvdswrapper_headers = [ + 'gstnvdsdewarp.h', +] + +doc_sources = [] +foreach s: nvdswrapper_sources + nvdswrapper_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'nvdswrapper': pathsep.join(doc_sources) +} + extra_args = ['-DGST_USE_UNSTABLE_API'] nvdswrapper_opt = get_option('nvdswrapper') diff --git a/subprojects/gst-plugins-bad/ext/onnx/meson.build b/subprojects/gst-plugins-bad/ext/onnx/meson.build index 001d3f4648..8c7ee27704 100644 --- a/subprojects/gst-plugins-bad/ext/onnx/meson.build +++ b/subprojects/gst-plugins-bad/ext/onnx/meson.build @@ -1,8 +1,28 @@ +onnx_sources = [ + 'gstonnx.c', + 'gstonnxinference.cpp', + 'gstonnxclient.cpp', +] + +onnx_headers = [ + 'gstonnxinference.h', + 'gstml.h', + 'gstonnxclient.h', +] + +doc_sources = [] +foreach s: onnx_sources + onnx_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'onnx': pathsep.join(doc_sources) +} + if get_option('onnx').disabled() subdir_done() endif - onnxrt_dep = dependency('libonnxruntime', version : '>= 1.16.1', required : get_option('onnx')) extra_args = [] @@ -13,10 +33,8 @@ if gstcuda_dep.found() endif if onnxrt_dep.found() - gstonnx = library('gstonnx', - 'gstonnx.c', - 'gstonnxinference.cpp', - 'gstonnxclient.cpp', + gstonnx = library('gstonnx', + onnx_sources, c_args : gst_plugins_bad_args + extra_args, cpp_args : gst_plugins_bad_args + extra_args, link_args : noseh_link_args, @@ -27,4 +45,4 @@ if onnxrt_dep.found() install_dir : plugins_install_dir, ) plugins += [gstonnx] - endif +endif diff --git a/subprojects/gst-plugins-bad/ext/openal/meson.build b/subprojects/gst-plugins-bad/ext/openal/meson.build index 8a2f43006b..94cb5ce047 100644 --- a/subprojects/gst-plugins-bad/ext/openal/meson.build +++ b/subprojects/gst-plugins-bad/ext/openal/meson.build @@ -1,8 +1,30 @@ openal_dep = dependency('openal', method: 'pkg-config', version: '>= 1.14', required: get_option('openal')) +openal_sources = [ + 'gstopenal.c', + 'gstopenalelement.c', + 'gstopenalsink.c', + 'gstopenalsrc.c', +] + +openal_headers = [ + 'gstopenalelements.h', + 'gstopenalsink.h', + 'gstopenalsrc.h', +] + +doc_sources = [] +foreach s: openal_sources + openal_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openal': pathsep.join(doc_sources) +} + if openal_dep.found() gstopenal = library('gstopenal', - 'gstopenal.c', 'gstopenalelement.c', 'gstopenalsink.c', 'gstopenalsrc.c', + openal_sources, c_args: gst_plugins_bad_args, include_directories: [configinc, libsinc], dependencies: [gstaudio_dep, openal_dep], diff --git a/subprojects/gst-plugins-bad/ext/openaptx/meson.build b/subprojects/gst-plugins-bad/ext/openaptx/meson.build index ee434ca44e..fddae33b15 100644 --- a/subprojects/gst-plugins-bad/ext/openaptx/meson.build +++ b/subprojects/gst-plugins-bad/ext/openaptx/meson.build @@ -4,6 +4,21 @@ openaptx_sources = [ 'gstopenaptxenc.c', ] +openaptx_headers = [ + 'gstopenaptxenc.h', + 'openaptx-plugin.h', + 'gstopenaptxdec.h', +] + +doc_sources = [] +foreach s: openaptx_sources + openaptx_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openaptx': pathsep.join(doc_sources) +} + if not get_option('openaptx').allowed() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/ext/opencv/meson.build b/subprojects/gst-plugins-bad/ext/opencv/meson.build index bd3a07d7b0..e2676f354b 100644 --- a/subprojects/gst-plugins-bad/ext/opencv/meson.build +++ b/subprojects/gst-plugins-bad/ext/opencv/meson.build @@ -1,8 +1,3 @@ -if get_option('opencv').disabled() - opencv_dep = disabler() - subdir_done() -endif - gstopencv_sources = [ 'gstcvdilate.cpp', 'gstcvdilateerode.cpp', @@ -34,6 +29,48 @@ gstopencv_sources = [ 'gstcvtracker.cpp' ] +gstopencv_headers = [ + 'gstcvlaplace.h', + 'gstcameracalibrate.h', + 'gstcverode.h', + 'gstsegmentation.h', + 'gsttextoverlay.h', + 'gstcvequalizehist.h', + 'gstdisparity.h', + 'gstgrabcut.h', + 'gstedgedetect.h', + 'gstskindetect.h', + 'gsttemplatematch.h', + 'gstfacedetect.h', + 'gstretinex.h', + 'MotionCells.h', + 'gstcvdilateerode.h', + 'gstdewarp.h', + 'motioncells_wrapper.h', + 'gstcvdilate.h', + 'gstcvsobel.h', + 'gstfaceblur.h', + 'gstmotioncells.h', + 'gstcvsmooth.h', + 'gsthanddetect.h', + 'gstcameraundistort.h', + 'gstcvtracker.h', +] + +doc_sources = [] +foreach s: gstopencv_sources + gstopencv_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'opencv': pathsep.join(doc_sources) +} + +if get_option('opencv').disabled() + opencv_dep = disabler() + subdir_done() +endif + if opencv_found gstopencv = library('gstopencv', gstopencv_sources, diff --git a/subprojects/gst-plugins-bad/ext/openexr/meson.build b/subprojects/gst-plugins-bad/ext/openexr/meson.build index 66f8d87828..cb80645212 100644 --- a/subprojects/gst-plugins-bad/ext/openexr/meson.build +++ b/subprojects/gst-plugins-bad/ext/openexr/meson.build @@ -1,5 +1,24 @@ openexr_dep = dependency('OpenEXR', modules: ['OpenEXR::IlmImf'], required: get_option('openexr')) +openexr_sources = [ + 'gstopenexr.c', + 'gstopenexrdec.cpp', +] + +openexr_headers = [ + 'gstopenexr.h', + 'gstopenexrdec.h', +] + +doc_sources = [] +foreach s: openexr_sources + openexr_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openexr': pathsep.join(doc_sources) +} + if openexr_dep.found() openexr_override_options = [] # Older versions of openexr fail to build with -Werror when using GCC >= 9.2 @@ -22,8 +41,7 @@ if openexr_dep.found() endif gstopenexr = library('gstopenexr', - 'gstopenexr.c', - 'gstopenexrdec.cpp', + openexr_sources, c_args: gst_plugins_bad_args, cpp_args: gst_plugins_bad_args, link_args: noseh_link_args, diff --git a/subprojects/gst-plugins-bad/ext/openh264/meson.build b/subprojects/gst-plugins-bad/ext/openh264/meson.build index c6f247e1cd..4b2fc5d071 100644 --- a/subprojects/gst-plugins-bad/ext/openh264/meson.build +++ b/subprojects/gst-plugins-bad/ext/openh264/meson.build @@ -4,6 +4,21 @@ openh264_sources = [ 'gstopenh264plugin.c', ] +openh264_headers = [ + 'gstopenh264enc.h', + 'gstopenh264elements.h', + 'gstopenh264dec.h', +] + +doc_sources = [] +foreach s: openh264_sources + openh264_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openh264': pathsep.join(doc_sources) +} + openh264_dep = dependency('openh264', version : '>= 1.3.0', required : get_option('openh264'), fallback: ['openh264', 'openh264_dep']) diff --git a/subprojects/gst-plugins-bad/ext/openjpeg/meson.build b/subprojects/gst-plugins-bad/ext/openjpeg/meson.build index 05a895e952..a9968b7266 100644 --- a/subprojects/gst-plugins-bad/ext/openjpeg/meson.build +++ b/subprojects/gst-plugins-bad/ext/openjpeg/meson.build @@ -4,6 +4,21 @@ openjpeg_sources = [ 'gstopenjpegenc.c', ] +openjpeg_headers = [ + 'gstopenjpegenc.h', + 'gstopenjpeg.h', + 'gstopenjpegdec.h', +] + +doc_sources = [] +foreach s: openjpeg_sources + openjpeg_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openjpeg': pathsep.join(doc_sources) +} + openjpeg_cargs = [] openjpeg_dep = dependency('libopenjp2', version : '>=2.2', diff --git a/subprojects/gst-plugins-bad/ext/openmpt/meson.build b/subprojects/gst-plugins-bad/ext/openmpt/meson.build index 3ef0860552..2210f15c2e 100644 --- a/subprojects/gst-plugins-bad/ext/openmpt/meson.build +++ b/subprojects/gst-plugins-bad/ext/openmpt/meson.build @@ -1,7 +1,26 @@ openmpt_dep = dependency('libopenmpt', required: get_option('openmpt')) + +openmpt_sources = [ + 'gstopenmptdec.c', + 'plugin.c', +] + +openmpt_headers = [ + 'gstopenmptdec.h', +] + +doc_sources = [] +foreach s: openmpt_sources + openmpt_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openmpt': pathsep.join(doc_sources) +} + if openmpt_dep.found() gstopenmpt = library('gstopenmpt', - 'gstopenmptdec.c', 'plugin.c', + openmpt_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies: [gstbadaudio_dep, gstaudio_dep, openmpt_dep], diff --git a/subprojects/gst-plugins-bad/ext/openni2/meson.build b/subprojects/gst-plugins-bad/ext/openni2/meson.build index 4d0a26a044..552b2d99a3 100644 --- a/subprojects/gst-plugins-bad/ext/openni2/meson.build +++ b/subprojects/gst-plugins-bad/ext/openni2/meson.build @@ -1,11 +1,30 @@ +openni2_sources = [ + 'gstopenni2.cpp', + 'gstopenni2src.cpp', +] + +openni2_headers = [ + 'gstopenni2src.h', +] + +doc_sources = [] +foreach s: openni2_sources + openni2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'openni2': pathsep.join(doc_sources) +} + if not add_languages('cpp', native: false, required: get_option('openni2')) subdir_done() endif openni2_dep = dependency('libopenni2', version: '>= 0.26', required: get_option('openni2')) + if openni2_dep.found() gstopenni2 = library('gstopenni2', - 'gstopenni2.cpp', 'gstopenni2src.cpp', + openni2_sources, cpp_args: gst_plugins_bad_args + cc.get_supported_arguments(['-Wno-undef']), link_args: noseh_link_args, include_directories: [configinc], diff --git a/subprojects/gst-plugins-bad/ext/opus/meson.build b/subprojects/gst-plugins-bad/ext/opus/meson.build index 5b20200bff..f6e07e5683 100644 --- a/subprojects/gst-plugins-bad/ext/opus/meson.build +++ b/subprojects/gst-plugins-bad/ext/opus/meson.build @@ -4,6 +4,20 @@ opus_sources = [ 'gstopusparse.c', ] +opus_headers = [ + 'gstopusheader.h', + 'gstopusparse.h', +] + +doc_sources = [] +foreach s: opus_sources + opus_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'opusparse': pathsep.join(doc_sources) +} + opus_dep = dependency('opus', version : '>= 0.9.4', required : get_option('opus')) if opus_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/qroverlay/meson.build b/subprojects/gst-plugins-bad/ext/qroverlay/meson.build index 42fbed99df..a6980dd259 100644 --- a/subprojects/gst-plugins-bad/ext/qroverlay/meson.build +++ b/subprojects/gst-plugins-bad/ext/qroverlay/meson.build @@ -1,8 +1,34 @@ qrencode_dep = dependency('libqrencode', required: get_option('qroverlay')) + +qroverlay_sources = [ + 'gstqroverlay.c', + 'gstdebugqroverlay.c', + 'gstbaseqroverlay.c', + 'gstqroverlayelement.c', + 'gstqroverlayplugin.c', +] + +qroverlay_headers = [ + 'gstbaseqroverlay.h', + 'gstdebugqroverlay.h', + 'gstqroverlayelements.h', + 'gstqroverlay.h', +] + +doc_sources = [] +foreach s: qroverlay_sources + qroverlay_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'qroverlay': pathsep.join(doc_sources) +} + if qrencode_dep.found() json_dep = dependency('json-glib-1.0', fallback : ['json-glib', 'json_glib_dep'], required: get_option('qroverlay')) if json_dep.found() - gstqroverlay = library('gstqroverlay', ['gstqroverlay.c', 'gstdebugqroverlay.c', 'gstbaseqroverlay.c', 'gstqroverlayelement.c', 'gstqroverlayplugin.c'], + gstqroverlay = library('gstqroverlay', + qroverlay_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstvideo_dep, qrencode_dep, json_dep], @@ -12,4 +38,3 @@ if qrencode_dep.found() plugins += [gstqroverlay] endif endif - diff --git a/subprojects/gst-plugins-bad/ext/qt6d3d11/meson.build b/subprojects/gst-plugins-bad/ext/qt6d3d11/meson.build index d94bfdf522..85ab08e18e 100644 --- a/subprojects/gst-plugins-bad/ext/qt6d3d11/meson.build +++ b/subprojects/gst-plugins-bad/ext/qt6d3d11/meson.build @@ -5,6 +5,21 @@ gstqt6d3d11_sources = [ 'plugin.cpp', ] +gstqt6d3d11_headers = [ + 'gstqml6d3d11sink.h', + 'gstqsg6d3d11node.h', + 'gstqt6d3d11videoitem.h', +] + +doc_sources = [] +foreach s: gstqt6d3d11_sources + gstqt6d3d11_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'qt6d3d11': pathsep.join(doc_sources) +} + moc_headers = [ 'gstqsg6d3d11node.h', 'gstqt6d3d11videoitem.h' diff --git a/subprojects/gst-plugins-bad/ext/resindvd/meson.build b/subprojects/gst-plugins-bad/ext/resindvd/meson.build index 3f3c8f2e5e..ecada7ba82 100644 --- a/subprojects/gst-plugins-bad/ext/resindvd/meson.build +++ b/subprojects/gst-plugins-bad/ext/resindvd/meson.build @@ -15,6 +15,27 @@ resindvd_sources = [ 'rsnparsetter.c', ] +resindvd_headers = [ + 'gstpesfilter.h', + 'rsnparsetter.h', + 'resindvdsrc.h', + 'gstmpegdemux.h', + 'gstmpegdesc.h', + 'rsninputselector.h', + 'resindvdbin.h', + 'rsndec.h', + 'gstmpegdefs.h', +] + +doc_sources = [] +foreach s: resindvd_sources + resindvd_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'resindvd': pathsep.join(doc_sources) +} + dvdnav_dep = dependency('dvdnav', version : '>= 4.1.2', required : resindvd_opt) dvdread_dep = dependency('dvdread', version : '>= 4.1.2', required : resindvd_opt) diff --git a/subprojects/gst-plugins-bad/ext/rsvg/meson.build b/subprojects/gst-plugins-bad/ext/rsvg/meson.build index 1b95d2ae2c..4399d4a110 100644 --- a/subprojects/gst-plugins-bad/ext/rsvg/meson.build +++ b/subprojects/gst-plugins-bad/ext/rsvg/meson.build @@ -4,6 +4,20 @@ rsvg_sources = [ 'gstrsvgoverlay.c', ] +rsvg_headers = [ + 'gstrsvgdec.h', + 'gstrsvgoverlay.h', +] + +doc_sources = [] +foreach s: rsvg_sources + rsvg_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rsvg': pathsep.join(doc_sources) +} + cairo_dep = dependency('cairo', version: '>= 1.16.0', allow_fallback: true, required : get_option('rsvg')) rsvg_dep = dependency('librsvg-2.0', version : '>= 2.36.2', required : get_option('rsvg')) if cairo_dep.found() and rsvg_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/rtmp/meson.build b/subprojects/gst-plugins-bad/ext/rtmp/meson.build index b2970551ad..2e3c76ff07 100644 --- a/subprojects/gst-plugins-bad/ext/rtmp/meson.build +++ b/subprojects/gst-plugins-bad/ext/rtmp/meson.build @@ -5,6 +5,21 @@ rtmp_sources = [ 'gstrtmpsrc.c', ] +rtmp_headers = [ + 'gstrtmpelements.h', + 'gstrtmpsrc.h', + 'gstrtmpsink.h', +] + +doc_sources = [] +foreach s: rtmp_sources + rtmp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtmp': pathsep.join(doc_sources) +} + rtmp_dep = dependency('librtmp', required : get_option('rtmp')) if rtmp_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/sbc/meson.build b/subprojects/gst-plugins-bad/ext/sbc/meson.build index 32247ac07d..8ff81b2c1f 100644 --- a/subprojects/gst-plugins-bad/ext/sbc/meson.build +++ b/subprojects/gst-plugins-bad/ext/sbc/meson.build @@ -4,6 +4,20 @@ sbc_sources = [ 'gstsbcenc.c', ] +sbc_headers = [ + 'gstsbcdec.h', + 'gstsbcenc.h', +] + +doc_sources = [] +foreach s: sbc_sources + sbc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'sbc': pathsep.join(doc_sources) +} + sbc_dep = dependency('sbc', version : '>= 1.0', required : get_option('sbc')) if sbc_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/sctp/meson.build b/subprojects/gst-plugins-bad/ext/sctp/meson.build index 2b4f88a86d..9ca55091de 100644 --- a/subprojects/gst-plugins-bad/ext/sctp/meson.build +++ b/subprojects/gst-plugins-bad/ext/sctp/meson.build @@ -5,6 +5,21 @@ sctp_sources = [ 'sctpassociation.c' ] +sctp_headers = [ + 'gstsctpdec.h', + 'gstsctpenc.h', + 'sctpassociation.h', +] + +doc_sources = [] +foreach s: sctp_sources + sctp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'sctp': pathsep.join(doc_sources) +} + sctp_option = get_option('sctp').enable_if(get_option('webrtc').enabled(), error_message: 'webrtc option is enabled') if sctp_option.disabled() subdir_done() diff --git a/subprojects/gst-plugins-bad/ext/smoothstreaming/meson.build b/subprojects/gst-plugins-bad/ext/smoothstreaming/meson.build index 4a5372145d..e9ee60d632 100644 --- a/subprojects/gst-plugins-bad/ext/smoothstreaming/meson.build +++ b/subprojects/gst-plugins-bad/ext/smoothstreaming/meson.build @@ -5,6 +5,21 @@ smoothstreaming_sources = [ 'gstsmoothstreaming-plugin.c', ] +smoothstreaming_headers = [ + 'gstmssmanifest.h', + 'gstmssdemux.h', + 'gstmssfragmentparser.h', +] + +doc_sources = [] +foreach s: smoothstreaming_sources + smoothstreaming_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'smoothstreaming': pathsep.join(doc_sources) +} + xml28_dep = dependency('libxml-2.0', version : '>= 2.8', required : get_option('smoothstreaming')) if xml28_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/sndfile/meson.build b/subprojects/gst-plugins-bad/ext/sndfile/meson.build index 70233169b9..3fff440ed2 100644 --- a/subprojects/gst-plugins-bad/ext/sndfile/meson.build +++ b/subprojects/gst-plugins-bad/ext/sndfile/meson.build @@ -1,8 +1,32 @@ sndfile_dep = dependency('sndfile', version: '>= 1.0.16', required: get_option('sndfile')) +sndfile_sources = [ + 'gstsf.c', + 'gstsfelement.c', + 'gstsfdec.c', + # 'gstsfsink.c', + # 'gstsfsrc.c', +] + +sndfile_headers = [ + 'gstsfelements.h', + 'gstsfdec.h', + 'gstsfsrc.h', + 'gstsfsink.h', +] + +doc_sources = [] +foreach s: sndfile_sources + sndfile_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'sndfile': pathsep.join(doc_sources) +} + if sndfile_dep.found() gstsndfile = library('gstsndfile', - 'gstsf.c', 'gstsfelement.c', 'gstsfdec.c', # 'gstsfsink.c', 'gstsfsrc.c', + sndfile_sources, c_args: gst_plugins_bad_args, include_directories: [configinc, libsinc], dependencies: [gstaudio_dep, gst_dep, sndfile_dep], diff --git a/subprojects/gst-plugins-bad/ext/soundtouch/meson.build b/subprojects/gst-plugins-bad/ext/soundtouch/meson.build index d3eec79bd8..8ea3f26576 100644 --- a/subprojects/gst-plugins-bad/ext/soundtouch/meson.build +++ b/subprojects/gst-plugins-bad/ext/soundtouch/meson.build @@ -4,6 +4,20 @@ soundtouch_sources = [ 'gstbpmdetect.cc', ] +soundtouch_headers = [ + 'gstbpmdetect.hh', + 'gstpitch.hh', +] + +doc_sources = [] +foreach s: soundtouch_sources + soundtouch_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'soundtouch': pathsep.join(doc_sources) +} + soundtouch_cargs = ['-DHAVE_SOUNDTOUCH'] if get_option('soundtouch').disabled() subdir_done() diff --git a/subprojects/gst-plugins-bad/ext/spandsp/meson.build b/subprojects/gst-plugins-bad/ext/spandsp/meson.build index a378b52244..6a0e4a60fc 100644 --- a/subprojects/gst-plugins-bad/ext/spandsp/meson.build +++ b/subprojects/gst-plugins-bad/ext/spandsp/meson.build @@ -8,6 +8,21 @@ spandsp_sources = [ 'gsttonegeneratesrc.h', ] +spandsp_headers = [ + 'gstspanplc.h', + 'gstdtmfdetect.h', + 'gsttonegeneratesrc.h', +] + +doc_sources = [] +foreach s: spandsp_sources + spandsp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'spandsp': pathsep.join(doc_sources) +} + spandsp_dep = dependency('spandsp', version : '>= 0.0.6', required : get_option('spandsp')) if spandsp_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/srt/meson.build b/subprojects/gst-plugins-bad/ext/srt/meson.build index ce4dee0a58..944ef986e0 100644 --- a/subprojects/gst-plugins-bad/ext/srt/meson.build +++ b/subprojects/gst-plugins-bad/ext/srt/meson.build @@ -6,6 +6,24 @@ srt_sources = [ 'gstsrtsink.c', 'gstsrtsrc.c' ] + +srt_headers = [ + 'gstsrtelements.h', + 'gstsrtsrc.h', + 'gstsrtsink.h', + 'gstsrtobject.h', + 'gstsrt-enums.h', +] + +doc_sources = [] +foreach s: srt_sources + srt_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'srt': pathsep.join(doc_sources) +} + srt_option = get_option('srt') if srt_option.disabled() srt_dep = dependency('', required : false) diff --git a/subprojects/gst-plugins-bad/ext/srtp/meson.build b/subprojects/gst-plugins-bad/ext/srtp/meson.build index d15d58c132..e50afd8418 100644 --- a/subprojects/gst-plugins-bad/ext/srtp/meson.build +++ b/subprojects/gst-plugins-bad/ext/srtp/meson.build @@ -6,6 +6,23 @@ srtp_sources = [ 'gstsrtpenc.c', ] +srtp_headers = [ + 'gstsrtp.h', + 'gstsrtpenums.h', + 'gstsrtpenc.h', + 'gstsrtpdec.h', + 'gstsrtpelements.h', +] + +doc_sources = [] +foreach s: srtp_sources + srtp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'srtp': pathsep.join(doc_sources) +} + srtp_cargs = [] srtp_option = get_option('srtp').enable_if(get_option('webrtc').enabled(), error_message: 'webrtc option is enabled') if srtp_option.disabled() diff --git a/subprojects/gst-plugins-bad/ext/svtav1/meson.build b/subprojects/gst-plugins-bad/ext/svtav1/meson.build index 202720c911..a33eeab847 100644 --- a/subprojects/gst-plugins-bad/ext/svtav1/meson.build +++ b/subprojects/gst-plugins-bad/ext/svtav1/meson.build @@ -2,6 +2,19 @@ svtav1_sources = [ 'gstsvtav1enc.c', ] +svtav1_headers = [ + 'gstsvtav1enc.h', +] + +doc_sources = [] +foreach s: svtav1_sources + svtav1_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'svtav1': pathsep.join(doc_sources) +} + svtav1_dep = dependency('SvtAv1Enc', version : '>= 1.1', required: get_option('svtav1')) if svtav1_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/svthevcenc/meson.build b/subprojects/gst-plugins-bad/ext/svthevcenc/meson.build index bdefed8b60..2ffae25b26 100644 --- a/subprojects/gst-plugins-bad/ext/svthevcenc/meson.build +++ b/subprojects/gst-plugins-bad/ext/svthevcenc/meson.build @@ -2,6 +2,19 @@ svthevcenc_sources = [ 'gstsvthevcenc.c', ] +svthevcenc_headers = [ + 'gstsvthevcenc.h', +] + +doc_sources = [] +foreach s: svthevcenc_sources + svthevcenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'svthevcenc': pathsep.join(doc_sources) +} + svthevcenc_dep = dependency('SvtHevcEnc', version : '>= 1.4.1', required: get_option('svthevcenc')) if svthevcenc_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/svtjpegxs/meson.build b/subprojects/gst-plugins-bad/ext/svtjpegxs/meson.build index 741065d0fa..e76262e982 100644 --- a/subprojects/gst-plugins-bad/ext/svtjpegxs/meson.build +++ b/subprojects/gst-plugins-bad/ext/svtjpegxs/meson.build @@ -4,6 +4,20 @@ svtjpegxs_sources = [ 'gstsvtjpegxsenc.c', ] +svtjpegxs_headers = [ + 'gstsvtjpegxsdec.h', + 'gstsvtjpegxsenc.h', +] + +doc_sources = [] +foreach s: svtjpegxs_sources + svtjpegxs_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'svtjpegxs': pathsep.join(doc_sources) +} + svtjpegxs_dep = dependency('SvtJpegxs', version: '>= 0.9', required: get_option('svtjpegxs')) if svtjpegxs_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/teletextdec/meson.build b/subprojects/gst-plugins-bad/ext/teletextdec/meson.build index 9f06fc01b6..9598f284a3 100644 --- a/subprojects/gst-plugins-bad/ext/teletextdec/meson.build +++ b/subprojects/gst-plugins-bad/ext/teletextdec/meson.build @@ -1,8 +1,25 @@ zvbi_dep = dependency('zvbi-0.2', required: get_option('teletext')) +teletext_sources = [ + 'gstteletextdec.c', +] + +teletext_headers = [ + 'gstteletextdec.h', +] + +doc_sources = [] +foreach s: teletext_sources + teletext_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'teletext': pathsep.join(doc_sources) +} + if zvbi_dep.found() gstteletext = library('gstteletext', - 'gstteletextdec.c', + teletext_sources, c_args: gst_plugins_bad_args, link_args: noseh_link_args, include_directories: [configinc], diff --git a/subprojects/gst-plugins-bad/ext/ttml/meson.build b/subprojects/gst-plugins-bad/ext/ttml/meson.build index 63a12a4fd0..34d7a5c790 100644 --- a/subprojects/gst-plugins-bad/ext/ttml/meson.build +++ b/subprojects/gst-plugins-bad/ext/ttml/meson.build @@ -3,15 +3,37 @@ pango_dep = dependency('pango', required : get_option('ttml')) cairo_dep = dependency('cairo', required : get_option('ttml')) pangocairo_dep = dependency('pangocairo', required : get_option('ttml')) +ttmlsubs_sources = [ + 'subtitle.c', + 'subtitlemeta.c', + 'gstttmlparse.c', + 'ttmlparse.c', + 'gstttmlrender.c', + 'gstttmlelement.c', + 'gstttmlplugin.c', +] + +ttmlsubs_headers = [ + 'gstttmlelements.h', + 'subtitlemeta.h', + 'gstttmlparse.h', + 'subtitle.h', + 'gstttmlrender.h', + 'ttmlparse.h', +] + +doc_sources = [] +foreach s: ttmlsubs_sources + ttmlsubs_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ttmlsubs': pathsep.join(doc_sources) +} + if libxml_dep.found() and pango_dep.found() and cairo_dep.found() and pangocairo_dep.found() gstttmlsubs = library('gstttmlsubs', - ['subtitle.c', - 'subtitlemeta.c', - 'gstttmlparse.c', - 'ttmlparse.c', - 'gstttmlrender.c', - 'gstttmlelement.c', - 'gstttmlplugin.c'], + ttmlsubs_sources, c_args : gst_plugins_bad_args + cc.get_supported_arguments(['-Wno-aggregate-return']), include_directories : [configinc], dependencies : [gstvideo_dep, libxml_dep, pango_dep, cairo_dep, pangocairo_dep, libm], diff --git a/subprojects/gst-plugins-bad/ext/voaacenc/meson.build b/subprojects/gst-plugins-bad/ext/voaacenc/meson.build index 748f08b944..9aa50e98a3 100644 --- a/subprojects/gst-plugins-bad/ext/voaacenc/meson.build +++ b/subprojects/gst-plugins-bad/ext/voaacenc/meson.build @@ -1,5 +1,18 @@ voaac_sources = ['gstvoaac.c', 'gstvoaacenc.c'] +voaac_headers = [ + 'gstvoaacenc.h', +] + +doc_sources = [] +foreach s: voaac_sources + voaac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'voaacenc': pathsep.join(doc_sources) +} + voaac_dep = dependency('vo-aacenc', required : get_option('voaacenc')) if voaac_dep.found() diff --git a/subprojects/gst-plugins-bad/ext/voamrwbenc/meson.build b/subprojects/gst-plugins-bad/ext/voamrwbenc/meson.build index 4399c3ff15..f593b8c43f 100644 --- a/subprojects/gst-plugins-bad/ext/voamrwbenc/meson.build +++ b/subprojects/gst-plugins-bad/ext/voamrwbenc/meson.build @@ -1,8 +1,26 @@ voamrwbenc_dep = dependency('vo-amrwbenc', version: '>= 0.1.0', required: get_option('voamrwbenc')) +voamrwbenc_sources = [ + 'gstvoamrwb.c', + 'gstvoamrwbenc.c', +] + +voamrwbenc_headers = [ + 'gstvoamrwbenc.h', +] + +doc_sources = [] +foreach s: voamrwbenc_sources + voamrwbenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'voamrwbenc': pathsep.join(doc_sources) +} + if voamrwbenc_dep.found() gstvoamrwbenc = library('gstvoamrwbenc', - 'gstvoamrwb.c', 'gstvoamrwbenc.c', + voamrwbenc_sources, c_args: gst_plugins_bad_args, link_args: noseh_link_args, include_directories: [configinc], @@ -11,9 +29,9 @@ if voamrwbenc_dep.found() install_dir: plugins_install_dir, ) plugins += [gstvoamrwbenc] - - install_data('GstVoAmrwbEnc.prs', install_dir: presetdir) - env = environment() - env.prepend('GST_PRESET_PATH', meson.current_source_dir()) - meson.add_devenv(env) endif + +install_data('GstVoAmrwbEnc.prs', install_dir: presetdir) +env = environment() +env.prepend('GST_PRESET_PATH', meson.current_source_dir()) +meson.add_devenv(env) diff --git a/subprojects/gst-plugins-bad/ext/vulkan/meson.build b/subprojects/gst-plugins-bad/ext/vulkan/meson.build index 9a3319a3af..e6914239e1 100644 --- a/subprojects/gst-plugins-bad/ext/vulkan/meson.build +++ b/subprojects/gst-plugins-bad/ext/vulkan/meson.build @@ -1,3 +1,49 @@ +vulkan_sources = [ + 'gstvulkan.c', + 'gstvulkanelement.c', + 'vkdownload.c', + 'vkdeviceprovider.c', + 'vksink.c', + 'vkupload.c', +] + +vulkan_headers = [ + 'gstvulkanelements.h', + 'vkcolorconvert.h', + 'vkdeviceprovider.h', + 'vkdownload.h', + 'vkh264dec.h', + 'vkh265dec.h', + 'vkimageidentity.h', + 'vkoverlaycompositor.h', + 'vkshaderspv.h', + 'vksink.h', + 'vkupload.h', + 'vkviewconvert.h', +] + +glsc_sources = [ + 'vkcolorconvert.c', + 'vkimageidentity.c', + 'vkshaderspv.c', + 'vkviewconvert.c', + 'vkoverlaycompositor.c', +] + +video_sources = [ + 'vkh264dec.c', + 'vkh265dec.c', +] + +doc_sources = [] +foreach s: vulkan_sources + glsc_sources + video_sources + vulkan_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'vulkan': pathsep.join(doc_sources) +} + if get_option('vulkan').disabled() subdir_done() endif @@ -13,14 +59,6 @@ endif extra_deps = [] extra_args = [] -vulkan_sources = files( - 'gstvulkan.c', - 'gstvulkanelement.c', - 'vkdownload.c', - 'vkdeviceprovider.c', - 'vksink.c', - 'vkupload.c', -) vulkan_plugin_enums = [] glslc = find_program('glslc', required: false) @@ -36,13 +74,7 @@ else extra_args += ['-DHAVE_GLSLC'] subdir('shaders') - vulkan_sources += files( - 'vkcolorconvert.c', - 'vkimageidentity.c', - 'vkshaderspv.c', - 'vkviewconvert.c', - 'vkoverlaycompositor.c', - ) + vulkan_sources += glsc_sources vulkan_plugin_enum_headers = files( 'vkviewconvert.h', ) @@ -53,7 +85,7 @@ else endif if vulkan_conf.get('GST_VULKAN_HAVE_VIDEO_EXTENSIONS') == 1 - vulkan_sources += files('vkh264dec.c', 'vkh265dec.c') + vulkan_sources += video_sources extra_deps += gstcodecs_dep extra_args += ['-DGST_USE_UNSTABLE_API'] endif diff --git a/subprojects/gst-plugins-bad/ext/wayland/meson.build b/subprojects/gst-plugins-bad/ext/wayland/meson.build index 29c7e2febf..56e9013100 100644 --- a/subprojects/gst-plugins-bad/ext/wayland/meson.build +++ b/subprojects/gst-plugins-bad/ext/wayland/meson.build @@ -2,15 +2,27 @@ wl_sources = [ 'gstwaylandsink.c' ] -if use_wayland +wl_headers = [ + 'gstwaylandsink.h', +] - gstwaylandsink = library('gstwaylandsink', - wl_sources, - c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], - include_directories : [configinc], - dependencies : [gst_dep, gstvideo_dep, gstwayland_dep], - install : true, - install_dir : plugins_install_dir, - ) - plugins += [gstwaylandsink] +doc_sources = [] +foreach s: wl_sources + wl_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'waylandsink': pathsep.join(doc_sources) +} + +if use_wayland + gstwaylandsink = library('gstwaylandsink', + wl_sources, + c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], + include_directories : [configinc], + dependencies : [gst_dep, gstvideo_dep, gstwayland_dep], + install : true, + install_dir : plugins_install_dir, + ) + plugins += [gstwaylandsink] endif diff --git a/subprojects/gst-plugins-bad/ext/webp/meson.build b/subprojects/gst-plugins-bad/ext/webp/meson.build index 1d9f63a59a..ff28cd1f72 100644 --- a/subprojects/gst-plugins-bad/ext/webp/meson.build +++ b/subprojects/gst-plugins-bad/ext/webp/meson.build @@ -4,6 +4,20 @@ webp_sources = [ 'gstwebpenc.c', ] +webp_headers = [ + 'gstwebpdec.h', + 'gstwebpenc.h', +] + +doc_sources = [] +foreach s: webp_sources + webp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'webp': pathsep.join(doc_sources) +} + webp_dep = dependency('libwebp', version : '>= 0.2.1', required : get_option('webp')) webpmux_dep = dependency('libwebpmux', version : '>= 0.2.1', required : get_option('webp')) diff --git a/subprojects/gst-plugins-bad/ext/webrtc/meson.build b/subprojects/gst-plugins-bad/ext/webrtc/meson.build index 151cb9a8e0..6171819e03 100644 --- a/subprojects/gst-plugins-bad/ext/webrtc/meson.build +++ b/subprojects/gst-plugins-bad/ext/webrtc/meson.build @@ -12,6 +12,29 @@ webrtc_sources = [ 'webrtcdatachannel.c', ] +webrtc_headers = [ + 'transportstream.h', + 'gstwebrtcbin.h', + 'transportreceivebin.h', + 'fwd.h', + 'transportsendbin.h', + 'webrtcdatachannel.h', + 'webrtcsctptransport.h', + 'webrtctransceiver.h', + 'utils.h', + 'webrtcsdp.h', + 'gstwebrtcstats.h', +] + +doc_sources = [] +foreach s: webrtc_sources + webrtc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'webrtc': pathsep.join(doc_sources) +} + webrtc_option = get_option('webrtc').require( libgstwebrtcnice_dep.found(), error_message: 'webrtc plugin requires libgstwebrtcnice.') if webrtc_option.disabled() @@ -28,4 +51,3 @@ gstwebrtc_plugin = library('gstwebrtc', install_dir : plugins_install_dir, ) plugins += [gstwebrtc_plugin] - diff --git a/subprojects/gst-plugins-bad/ext/webrtcdsp/meson.build b/subprojects/gst-plugins-bad/ext/webrtcdsp/meson.build index d915e057c8..5f8b9483f3 100644 --- a/subprojects/gst-plugins-bad/ext/webrtcdsp/meson.build +++ b/subprojects/gst-plugins-bad/ext/webrtcdsp/meson.build @@ -4,6 +4,19 @@ webrtc_sources = [ 'gstwebrtcdspplugin.cpp' ] +webrtc_headers = [ + 'gstwebrtcechoprobe.h', + 'gstwebrtcdsp.h', +] +doc_sources = [] +foreach s: webrtc_sources + webrtc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'webrtcdsp': pathsep.join(doc_sources) +} + webrtc_dep = dependency('webrtc-audio-processing-1', version : ['>= 1.0'], required : get_option('webrtcdsp')) @@ -20,3 +33,4 @@ if webrtc_dep.found() ) plugins += [gstwebrtcdsp] endif + diff --git a/subprojects/gst-plugins-bad/ext/wildmidi/meson.build b/subprojects/gst-plugins-bad/ext/wildmidi/meson.build index cd71f39e5d..4d43bfb506 100644 --- a/subprojects/gst-plugins-bad/ext/wildmidi/meson.build +++ b/subprojects/gst-plugins-bad/ext/wildmidi/meson.build @@ -1,3 +1,20 @@ +wildmidi_sources = [ + 'gstwildmididec.c', +] + +wildmidi_headers = [ + 'gstwildmididec.h', +] + +doc_sources = [] +foreach s: wildmidi_sources + wildmidi_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wildmidi': pathsep.join(doc_sources) +} + if get_option('wildmidi').disabled() subdir_done() endif @@ -23,7 +40,7 @@ endif if wildmidi_dep.found() gstwildmidi = library('gstwildmidi', - 'gstwildmididec.c', + wildmidi_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies: [gstaudio_dep, gstbadaudio_dep, wildmidi_dep], diff --git a/subprojects/gst-plugins-bad/ext/wpe/meson.build b/subprojects/gst-plugins-bad/ext/wpe/meson.build index ac94f33760..30055b9905 100644 --- a/subprojects/gst-plugins-bad/ext/wpe/meson.build +++ b/subprojects/gst-plugins-bad/ext/wpe/meson.build @@ -1,3 +1,25 @@ +wpe_sources = [ + 'gstwpethreadedview.cpp','gstwpe.cpp', + 'gstwpevideosrc.cpp', + 'gstwpesrcbin.cpp', +] + +wpe_headers = [ + 'gstwpesrcbin.h', + 'gstwpevideosrc.h', + 'gstwpe.h', + 'gstwpethreadedview.h', +] + +doc_sources = [] +foreach s: wpe_sources + wpe_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wpe': pathsep.join(doc_sources) +} + building_wpe = false wpe_feat = get_option('wpe').require(gstgl_dep.found(), error_message : 'wpe plugin enabled but GL support was not detected') @@ -55,8 +77,9 @@ giounix_dep = dependency('gio-unix-2.0', required: false) wpe_extension_install_dir = get_option('prefix') / get_option('libdir') / meson.project_name() / 'wpe-extension' building_wpe = true + gstwpe = library('gstwpe', - ['gstwpethreadedview.cpp', 'gstwpe.cpp', 'gstwpevideosrc.cpp', 'gstwpesrcbin.cpp'], + wpe_sources, dependencies : [egl_dep, wpewebkit_dep, wpe_fdo_dep, gstallocators_dep, gstaudio_dep, gstvideo_dep, gstbase_dep, gstgl_dep, xkbcommon_dep, wl_server_dep, giounix_dep], cpp_args : gst_plugins_bad_args + ['-DHAVE_CONFIG_H=1', diff --git a/subprojects/gst-plugins-bad/ext/x265/meson.build b/subprojects/gst-plugins-bad/ext/x265/meson.build index 46a9d91547..517ee1d719 100644 --- a/subprojects/gst-plugins-bad/ext/x265/meson.build +++ b/subprojects/gst-plugins-bad/ext/x265/meson.build @@ -4,9 +4,26 @@ x265_opt = get_option('x265').require(gpl_allowed, error_message: ''' ''') x265_dep = dependency('x265', required: x265_opt) +x265_sources = [ + 'gstx265enc.c', +] + +x265_headers = [ + 'gstx265enc.h', +] + +doc_sources = [] +foreach s: x265_sources + x265_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'x265': pathsep.join(doc_sources) +} + if x265_dep.found() gstx265 = library('gstx265', - 'gstx265enc.c', + x265_sources, c_args : gst_plugins_bad_args + cc.get_supported_arguments(['-Wno-undef']), include_directories : [configinc], dependencies : [gstpbutils_dep, gstvideo_dep, x265_dep], diff --git a/subprojects/gst-plugins-bad/ext/zbar/meson.build b/subprojects/gst-plugins-bad/ext/zbar/meson.build index f99f53fa7c..678c10a75c 100644 --- a/subprojects/gst-plugins-bad/ext/zbar/meson.build +++ b/subprojects/gst-plugins-bad/ext/zbar/meson.build @@ -1,4 +1,22 @@ zbar_dep = dependency('zbar', version : '>= 0.9', required : get_option('zbar')) + +zbar_sources = [ + 'gstzbar.c', +] + +zbar_headers = [ + 'gstzbar.h', +] + +doc_sources = [] +foreach s: zbar_sources + zbar_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'zbar': pathsep.join(doc_sources) +} + if zbar_dep.found() gstzbar = library('gstzbar', 'gstzbar.c', diff --git a/subprojects/gst-plugins-bad/ext/zxing/meson.build b/subprojects/gst-plugins-bad/ext/zxing/meson.build index 2dbad9ab1e..5e44712022 100644 --- a/subprojects/gst-plugins-bad/ext/zxing/meson.build +++ b/subprojects/gst-plugins-bad/ext/zxing/meson.build @@ -2,6 +2,20 @@ zxing_sources = [ 'gstzxing.cpp', 'gstzxingplugin.c', ] + +zxing_headers = [ + 'gstzxing.h', +] + +doc_sources = [] +foreach s: zxing_sources + zxing_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'zxing': pathsep.join(doc_sources) +} + zxing_dep = dependency('zxing', version : '>= 1.4.0', required : get_option('zxing')) if zxing_dep.found() gstzxing = library('gstzxing', diff --git a/subprojects/gst-plugins-bad/gst/accurip/meson.build b/subprojects/gst-plugins-bad/gst/accurip/meson.build index 454d752ff9..b6b77eae94 100644 --- a/subprojects/gst-plugins-bad/gst/accurip/meson.build +++ b/subprojects/gst-plugins-bad/gst/accurip/meson.build @@ -2,6 +2,23 @@ accurip_sources = [ 'gstaccurip.c', ] +accurip_headers = [ + 'gstaccurip.h', +] + +doc_sources = [] +foreach s: accurip_sources + accurip_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'accurip': pathsep.join(doc_sources) +} + +if get_option('accurip').disabled() + subdir_done() +endif + gstaccurip = library('gstaccurip', accurip_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/adpcmdec/meson.build b/subprojects/gst-plugins-bad/gst/adpcmdec/meson.build index aec0976dc6..e713aa80cd 100644 --- a/subprojects/gst-plugins-bad/gst/adpcmdec/meson.build +++ b/subprojects/gst-plugins-bad/gst/adpcmdec/meson.build @@ -2,6 +2,22 @@ adpcmdec_sources = [ 'adpcmdec.c' ] +adpcmdec_headers = [ +] + +doc_sources = [] +foreach s: adpcmdec_sources + adpcmdec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'adpcmdec': pathsep.join(doc_sources) +} + +if get_option('adpcmdec').disabled() + subdir_done() +endif + gstadpcmdec = library('gstadpcmdec', adpcmdec_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/adpcmenc/meson.build b/subprojects/gst-plugins-bad/gst/adpcmenc/meson.build index 2fbe5993a4..c52b04917f 100644 --- a/subprojects/gst-plugins-bad/gst/adpcmenc/meson.build +++ b/subprojects/gst-plugins-bad/gst/adpcmenc/meson.build @@ -2,6 +2,22 @@ gstadpcmenc_sources = [ 'adpcmenc.c' ] +gstadpcmenc_headers = [ +] + +doc_sources = [] +foreach s: gstadpcmenc_sources + gstadpcmenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'adpcmenc': pathsep.join(doc_sources) +} + +if get_option('adpcmenc').disabled() + subdir_done() +endif + gstadpcmenc = library('gstadpcmenc', gstadpcmenc_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/aiff/meson.build b/subprojects/gst-plugins-bad/gst/aiff/meson.build index 805265d752..7e761b1b1b 100644 --- a/subprojects/gst-plugins-bad/gst/aiff/meson.build +++ b/subprojects/gst-plugins-bad/gst/aiff/meson.build @@ -2,6 +2,25 @@ aiff_sources = [ 'aiff.c', 'aiffmux.c', 'aiffparse.c', 'gstaiffelement.c' ] +aiff_headers = [ + 'aiffmux.h', + 'aiffelements.h', + 'aiffparse.h', +] + +doc_sources = [] +foreach s: aiff_sources + aiff_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'aiff': pathsep.join(doc_sources) +} + +if get_option('aiff').disabled() + subdir_done() +endif + gstaiff = library('gstaiff', aiff_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/asfmux/meson.build b/subprojects/gst-plugins-bad/gst/asfmux/meson.build index a5eb0f2dee..9ea26289c1 100644 --- a/subprojects/gst-plugins-bad/gst/asfmux/meson.build +++ b/subprojects/gst-plugins-bad/gst/asfmux/meson.build @@ -6,6 +6,26 @@ asfmux_sources = [ 'gstasf.c', ] +asfmux_headers = [ + 'gstasfobjects.h', + 'gstasfmux.h', + 'gstrtpasfpay.h', + 'gstasfparse.h', +] + +doc_sources = [] +foreach s: asfmux_sources + asfmux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'asfmux': pathsep.join(doc_sources) +} + +if get_option('asfmux').disabled() + subdir_done() +endif + gstasfmux = library('gstasfmux', asfmux_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/audiobuffersplit/meson.build b/subprojects/gst-plugins-bad/gst/audiobuffersplit/meson.build index ab6fbe0d42..73d34b9f5a 100644 --- a/subprojects/gst-plugins-bad/gst/audiobuffersplit/meson.build +++ b/subprojects/gst-plugins-bad/gst/audiobuffersplit/meson.build @@ -2,6 +2,23 @@ audiobuffersplit_sources = [ 'gstaudiobuffersplit.c', ] +audiobuffersplit_headers = [ + 'gstaudiobuffersplit.h', +] + +doc_sources = [] +foreach s: audiobuffersplit_sources + audiobuffersplit_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiobuffersplit': pathsep.join(doc_sources) +} + +if get_option('audiobuffersplit').disabled() + subdir_done() +endif + gstaudiobuffersplit = library('gstaudiobuffersplit', audiobuffersplit_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/audiofxbad/meson.build b/subprojects/gst-plugins-bad/gst/audiofxbad/meson.build index c836fd403f..e2548654d6 100644 --- a/subprojects/gst-plugins-bad/gst/audiofxbad/meson.build +++ b/subprojects/gst-plugins-bad/gst/audiofxbad/meson.build @@ -3,6 +3,23 @@ audiofxbad_sources = [ 'gstaudiochannelmix.c', ] +audiofxbad_headers = [ + 'gstaudiochannelmix.h', +] + +doc_sources = [] +foreach s: audiofxbad_sources + audiofxbad_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiofxbad': pathsep.join(doc_sources) +} + +if get_option('audiofxbad').disabled() + subdir_done() +endif + gstaudiofxbad = library('gstaudiofxbad', audiofxbad_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/audiolatency/meson.build b/subprojects/gst-plugins-bad/gst/audiolatency/meson.build index f9406cb59e..17ed5b24d1 100644 --- a/subprojects/gst-plugins-bad/gst/audiolatency/meson.build +++ b/subprojects/gst-plugins-bad/gst/audiolatency/meson.build @@ -1,5 +1,26 @@ -gstaudiolatency = library('gstaudiolatency', +audiolatency_sources = [ 'gstaudiolatency.c', +] + +audiolatency_headers = [ + 'gstaudiolatency.h', +] + +doc_sources = [] +foreach s: audiolatency_sources + audiolatency_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiolatency': pathsep.join(doc_sources) +} + +if get_option('audiolatency').disabled() + subdir_done() +endif + +gstaudiolatency = library('gstaudiolatency', + audiolatency_sources, c_args : gst_plugins_bad_args, include_directories : [configinc], dependencies : [gstbase_dep], diff --git a/subprojects/gst-plugins-bad/gst/audiomixmatrix/meson.build b/subprojects/gst-plugins-bad/gst/audiomixmatrix/meson.build index 93ddb474a9..833a3868ac 100644 --- a/subprojects/gst-plugins-bad/gst/audiomixmatrix/meson.build +++ b/subprojects/gst-plugins-bad/gst/audiomixmatrix/meson.build @@ -2,6 +2,23 @@ audiomixmatrix_sources = [ 'gstaudiomixmatrix.c', ] +audiomixmatrix_headers = [ + 'gstaudiomixmatrix.h', +] + +doc_sources = [] +foreach s: audiomixmatrix_sources + audiomixmatrix_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiomixmatrix': pathsep.join(doc_sources) +} + +if get_option('audiomixmatrix').disabled() + subdir_done() +endif + gstaudiomixmatrix = library('gstaudiomixmatrix', audiomixmatrix_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/audiovisualizers/meson.build b/subprojects/gst-plugins-bad/gst/audiovisualizers/meson.build index 3130dbfff0..74283190f5 100644 --- a/subprojects/gst-plugins-bad/gst/audiovisualizers/meson.build +++ b/subprojects/gst-plugins-bad/gst/audiovisualizers/meson.build @@ -6,6 +6,27 @@ audiovis_sources = [ 'gstwavescope.c', ] +audiovis_headers = [ + 'gstwavescope.h', + 'gstsynaescope.h', + 'gstdrawhelpers.h', + 'gstspectrascope.h', + 'gstspacescope.h', +] + +doc_sources = [] +foreach s: audiovis_sources + audiovis_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiovisualizers': pathsep.join(doc_sources) +} + +if get_option('audiovisualizers').disabled() + subdir_done() +endif + gstaudiovisualizers = library('gstaudiovisualizers', audiovis_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/autoconvert/meson.build b/subprojects/gst-plugins-bad/gst/autoconvert/meson.build index e8f182167f..ca58300c97 100644 --- a/subprojects/gst-plugins-bad/gst/autoconvert/meson.build +++ b/subprojects/gst-plugins-bad/gst/autoconvert/meson.build @@ -8,6 +8,28 @@ autocon_sources = [ 'plugin.c', ] +autocon_headers = [ + 'gstautovideoconvert.h', + 'gstbaseautoconvert.h', + 'gstautoconvert.h', + 'gstautovideoflip.h', + 'gstautodeinterlace.h', + 'gstautovideo.h', +] + +doc_sources = [] +foreach s: autocon_sources + autocon_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'autoconvert': pathsep.join(doc_sources) +} + +if get_option('autoconvert').disabled() + subdir_done() +endif + gstautoconvert = library('gstautoconvert', autocon_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/bayer/meson.build b/subprojects/gst-plugins-bad/gst/bayer/meson.build index 092d9f62e3..21baa07a04 100644 --- a/subprojects/gst-plugins-bad/gst/bayer/meson.build +++ b/subprojects/gst-plugins-bad/gst/bayer/meson.build @@ -4,6 +4,24 @@ bayer_sources = [ 'gstrgb2bayer.c', ] +bayer_headers = [ + 'gstbayerelements.h', + 'gstrgb2bayer.h', +] + +doc_sources = [] +foreach s: bayer_sources + bayer_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'bayer': pathsep.join(doc_sources) +} + +if get_option('bayer').disabled() + subdir_done() +endif + orcsrc = 'gstbayerorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-bad/gst/camerabin2/meson.build b/subprojects/gst-plugins-bad/gst/camerabin2/meson.build index 7730df35f2..12fbf79105 100644 --- a/subprojects/gst-plugins-bad/gst/camerabin2/meson.build +++ b/subprojects/gst-plugins-bad/gst/camerabin2/meson.build @@ -7,6 +7,27 @@ camerabin_sources = [ 'gstplugin.c', ] +camerabin_headers = [ + 'gstviewfinderbin.h', + 'gstdigitalzoom.h', + 'gstwrappercamerabinsrc.h', + 'camerabingeneral.h', + 'gstcamerabin2.h', +] + +doc_sources = [] +foreach s: camerabin_sources + camerabin_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'camerabin': pathsep.join(doc_sources) +} + +if get_option('camerabin2').disabled() + subdir_done() +endif + gstcamerabin = library('gstcamerabin', camerabin_sources, c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], diff --git a/subprojects/gst-plugins-bad/gst/codecalpha/meson.build b/subprojects/gst-plugins-bad/gst/codecalpha/meson.build index 6e85358e88..5c6f3aa619 100644 --- a/subprojects/gst-plugins-bad/gst/codecalpha/meson.build +++ b/subprojects/gst-plugins-bad/gst/codecalpha/meson.build @@ -7,6 +7,27 @@ codecalpha_sources = [ 'gstcodecalphademux.c', ] +codecalpha_headers = [ + 'gstalphadecodebin.h', + 'gstalphacombine.h', + 'gstvp9alphadecodebin.h', + 'gstcodecalphademux.h', + 'gstvp8alphadecodebin.h', +] + +doc_sources = [] +foreach s: codecalpha_sources + codecalpha_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'codecalpha': pathsep.join(doc_sources) +} + +if get_option('codecalpha').disabled() + subdir_done() +endif + gstcodecalpha = library('gstcodecalpha', codecalpha_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/codectimestamper/meson.build b/subprojects/gst-plugins-bad/gst/codectimestamper/meson.build index fe2abb0cda..5d66538134 100644 --- a/subprojects/gst-plugins-bad/gst/codectimestamper/meson.build +++ b/subprojects/gst-plugins-bad/gst/codectimestamper/meson.build @@ -5,6 +5,25 @@ codectimestamper_sources = [ 'plugin.c', ] +codectimestamper_headers = [ + 'gstcodectimestamper.h', + 'gsth265timestamper.h', + 'gsth264timestamper.h', +] + +doc_sources = [] +foreach s: codectimestamper_sources + codectimestamper_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'codectimestamper': pathsep.join(doc_sources) +} + +if get_option('codectimestamper').disabled() + subdir_done() +endif + gstcodectimestamper = library('gstcodectimestamper', codectimestamper_sources, c_args : gst_plugins_bad_args + [ '-DGST_USE_UNSTABLE_API' ], diff --git a/subprojects/gst-plugins-bad/gst/coloreffects/meson.build b/subprojects/gst-plugins-bad/gst/coloreffects/meson.build index f2b52af178..8d8182d840 100644 --- a/subprojects/gst-plugins-bad/gst/coloreffects/meson.build +++ b/subprojects/gst-plugins-bad/gst/coloreffects/meson.build @@ -4,6 +4,24 @@ coloreffects_sources = [ 'gstchromahold.c', ] +coloreffects_headers = [ + 'gstchromahold.h', + 'gstcoloreffects.h', +] + +doc_sources = [] +foreach s: coloreffects_sources + coloreffects_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'coloreffects': pathsep.join(doc_sources) +} + +if get_option('coloreffects').disabled() + subdir_done() +endif + gstcoloreffects = library('gstcoloreffects', coloreffects_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/debugutils/meson.build b/subprojects/gst-plugins-bad/gst/debugutils/meson.build index 900c65d407..2d0c936d1a 100644 --- a/subprojects/gst-plugins-bad/gst/debugutils/meson.build +++ b/subprojects/gst-plugins-bad/gst/debugutils/meson.build @@ -15,6 +15,35 @@ debugutilsbad_sources = [ 'gstwatchdog.c', ] +debugutilsbad_headers = [ + 'gstchopmydata.h', + 'fpsdisplaysink.h', + 'gstfakeaudiosink.h', + 'gstwatchdog.h', + 'gstcompare.h', + 'gstdebugutilsbadelements.h', + 'gstfakevideosink.h', + 'gstfakesinkutils.h', + 'gstvideocodectestsink.h', + 'gstchecksumsink.h', + 'gstdebugspy.h', + 'gstclockselect.h', + 'gsterrorignore.h', +] + +doc_sources = [] +foreach s: debugutilsbad_sources + debugutilsbad_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'debugutilsbad': pathsep.join(doc_sources) +} + +if get_option('debugutils').disabled() + subdir_done() +endif + gstdebugutilsbad = library('gstdebugutilsbad', debugutilsbad_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/dvbsubenc/meson.build b/subprojects/gst-plugins-bad/gst/dvbsubenc/meson.build index eef9e86548..62a65dc8ed 100644 --- a/subprojects/gst-plugins-bad/gst/dvbsubenc/meson.build +++ b/subprojects/gst-plugins-bad/gst/dvbsubenc/meson.build @@ -13,6 +13,23 @@ libimagequant_sources = [ 'libimagequant/viter.c' ] +subenc_headers = [ + 'gstdvbsubenc.h', +] + +doc_sources = [] +foreach s: subenc_sources + subenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvbsubenc': pathsep.join(doc_sources) +} + +if get_option('dvbsubenc').disabled() + subdir_done() +endif + local_c_args = ['-DLIQ_PRIVATE='] # GStreamer already has the right hidden symbol visibility local_c_args += cc.get_supported_arguments(['-Wno-unknown-pragmas', '-Wno-aggregate-return']) diff --git a/subprojects/gst-plugins-bad/gst/dvbsuboverlay/meson.build b/subprojects/gst-plugins-bad/gst/dvbsuboverlay/meson.build index 7940b5f128..a89eec3736 100644 --- a/subprojects/gst-plugins-bad/gst/dvbsuboverlay/meson.build +++ b/subprojects/gst-plugins-bad/gst/dvbsuboverlay/meson.build @@ -3,6 +3,24 @@ subover_sources = [ 'gstdvbsuboverlay.c', ] +subover_headers = [ + 'dvb-sub.h', + 'gstdvbsuboverlay.h', +] + +doc_sources = [] +foreach s: subover_sources + subover_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvbsuboverlay': pathsep.join(doc_sources) +} + +if get_option('dvbsuboverlay').disabled() + subdir_done() +endif + gstdvbsuboverlay = library('gstdvbsuboverlay', subover_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/dvdspu/meson.build b/subprojects/gst-plugins-bad/gst/dvdspu/meson.build index 04aa3cc67c..85b9427584 100644 --- a/subprojects/gst-plugins-bad/gst/dvdspu/meson.build +++ b/subprojects/gst-plugins-bad/gst/dvdspu/meson.build @@ -5,6 +5,26 @@ dvdspu_sources = [ 'gstspu-pgs.c', ] +dvdspu_headers = [ + 'gstspu-pgs.h', + 'gstdvdspu.h', + 'gstspu-common.h', + 'gstspu-vobsub.h', +] + +doc_sources = [] +foreach s: dvdspu_sources + dvdspu_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvdspu': pathsep.join(doc_sources) +} + +if get_option('dvdspu').disabled() + subdir_done() +endif + gstdvdspu = library('gstdvdspu', dvdspu_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/faceoverlay/meson.build b/subprojects/gst-plugins-bad/gst/faceoverlay/meson.build index e5ff9c32c7..14cfc4c466 100644 --- a/subprojects/gst-plugins-bad/gst/faceoverlay/meson.build +++ b/subprojects/gst-plugins-bad/gst/faceoverlay/meson.build @@ -2,6 +2,23 @@ fover_sources = [ 'gstfaceoverlay.c', ] +fover_headers = [ + 'gstfaceoverlay.h', +] + +doc_sources = [] +foreach s: fover_sources + fover_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'faceoverlay': pathsep.join(doc_sources) +} + +if get_option('faceoverlay').disabled() + subdir_done() +endif + gstfaceoverlay = library('gstfaceoverlay', fover_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/festival/meson.build b/subprojects/gst-plugins-bad/gst/festival/meson.build index d71264c6f8..c9e6d510e2 100644 --- a/subprojects/gst-plugins-bad/gst/festival/meson.build +++ b/subprojects/gst-plugins-bad/gst/festival/meson.build @@ -2,6 +2,23 @@ festival_sources = [ 'gstfestival.c' ] +festival_headers = [ + 'gstfestival.h', +] + +doc_sources = [] +foreach s: festival_sources + festival_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'festival': pathsep.join(doc_sources) +} + +if get_option('festival').disabled() + subdir_done() +endif + gstfestival = library('gstfestival', festival_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/fieldanalysis/meson.build b/subprojects/gst-plugins-bad/gst/fieldanalysis/meson.build index 992982e35b..a9a44d269e 100644 --- a/subprojects/gst-plugins-bad/gst/fieldanalysis/meson.build +++ b/subprojects/gst-plugins-bad/gst/fieldanalysis/meson.build @@ -2,6 +2,23 @@ fielda_sources = [ 'gstfieldanalysis.c' ] +fielda_headers = [ + 'gstfieldanalysis.h', +] + +doc_sources = [] +foreach s: fielda_sources + fielda_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'fieldanalysis': pathsep.join(doc_sources) +} + +if get_option('fieldanalysis').disabled() + subdir_done() +endif + orcsrc = 'gstfieldanalysisorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-bad/gst/freeverb/meson.build b/subprojects/gst-plugins-bad/gst/freeverb/meson.build index 97545edfa0..486e549326 100644 --- a/subprojects/gst-plugins-bad/gst/freeverb/meson.build +++ b/subprojects/gst-plugins-bad/gst/freeverb/meson.build @@ -2,6 +2,23 @@ freeverb_sources = [ 'gstfreeverb.c', ] +freeverb_headers = [ + 'gstfreeverb.h', +] + +doc_sources = [] +foreach s: freeverb_sources + freeverb_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'freeverb': pathsep.join(doc_sources) +} + +if get_option('freeverb').disabled() + subdir_done() +endif + gstfreeverb = library('gstfreeverb', freeverb_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/frei0r/meson.build b/subprojects/gst-plugins-bad/gst/frei0r/meson.build index d830fff3a1..7a5d514b08 100644 --- a/subprojects/gst-plugins-bad/gst/frei0r/meson.build +++ b/subprojects/gst-plugins-bad/gst/frei0r/meson.build @@ -5,6 +5,27 @@ frei0r_sources = [ 'gstfrei0rmixer.c', ] +frei0r_headers = [ + 'gstfrei0r.h', + 'gstfrei0rmixer.h', + 'frei0r.h', + 'gstfrei0rsrc.h', + 'gstfrei0rfilter.h', +] + +doc_sources = [] +foreach s: frei0r_sources + frei0r_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'frei0r': pathsep.join(doc_sources) +} + +if get_option('frei0r').disabled() + subdir_done() +endif + gstfrei0r = library('gstfrei0r', frei0r_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/gaudieffects/meson.build b/subprojects/gst-plugins-bad/gst/gaudieffects/meson.build index d46628e240..7543a93875 100644 --- a/subprojects/gst-plugins-bad/gst/gaudieffects/meson.build +++ b/subprojects/gst-plugins-bad/gst/gaudieffects/meson.build @@ -9,6 +9,29 @@ gaudio_sources = [ 'gstplugin.c', ] +gaudio_headers = [ + 'gstchromium.h', + 'gstgaussblur.h', + 'gstdilate.h', + 'gstexclusion.h', + 'gstsolarize.h', + 'gstdodge.h', + 'gstburn.h', +] + +doc_sources = [] +foreach s: gaudio_sources + gaudio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gaudieffects': pathsep.join(doc_sources) +} + +if get_option('gaudieffects').disabled() + subdir_done() +endif + orcsrc = 'gstgaudieffectsorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-bad/gst/gdp/meson.build b/subprojects/gst-plugins-bad/gst/gdp/meson.build index 0dcc1953be..1fd9b0997f 100644 --- a/subprojects/gst-plugins-bad/gst/gdp/meson.build +++ b/subprojects/gst-plugins-bad/gst/gdp/meson.build @@ -6,6 +6,27 @@ gdp_sources = [ 'gstgdpdepay.c', ] +gdp_headers = [ + 'gstgdpdepay.h', + 'dp-private.h', + 'dataprotocol.h', + 'gstgdpelements.h', + 'gstgdppay.h', +] + +doc_sources = [] +foreach s: gdp_sources + gdp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gdp': pathsep.join(doc_sources) +} + +if get_option('gdp').disabled() + subdir_done() +endif + gstdgp = library('gstgdp', gdp_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/geometrictransform/meson.build b/subprojects/gst-plugins-bad/gst/geometrictransform/meson.build index 3ad8eee5f3..754ff6f799 100644 --- a/subprojects/gst-plugins-bad/gst/geometrictransform/meson.build +++ b/subprojects/gst-plugins-bad/gst/geometrictransform/meson.build @@ -21,6 +21,41 @@ geotr_sources = [ 'gstperspective.c', ] +geotr_headers = [ + 'gstkaleidoscope.h', + 'gstwaterripple.h', + 'gstpinch.h', + 'gstmarble.h', + 'gsttunnel.h', + 'gstcircle.h', + 'gstgeometrictransform.h', + 'gstsphere.h', + 'gstrotate.h', + 'gstperspective.h', + 'gstbulge.h', + 'gsttwirl.h', + 'gststretch.h', + 'gstdiffuse.h', + 'gstfisheye.h', + 'gstsquare.h', + 'geometricmath.h', + 'gstcirclegeometrictransform.h', + 'gstmirror.h', +] + +doc_sources = [] +foreach s: geotr_sources + geotr_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'geometrictransform': pathsep.join(doc_sources) +} + +if get_option('geometrictransform').disabled() + subdir_done() +endif + gstgeometrictransform = library('gstgeometrictransform', geotr_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/id3tag/meson.build b/subprojects/gst-plugins-bad/gst/id3tag/meson.build index 6186865b54..f9de144a22 100644 --- a/subprojects/gst-plugins-bad/gst/id3tag/meson.build +++ b/subprojects/gst-plugins-bad/gst/id3tag/meson.build @@ -3,6 +3,24 @@ id3_sources = [ 'id3tag.c', ] +id3_headers = [ + 'id3tag.h', + 'gstid3mux.h', +] + +doc_sources = [] +foreach s: id3_sources + id3_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'id3tag': pathsep.join(doc_sources) +} + +if get_option('id3tag').disabled() + subdir_done() +endif + gstid3tag = library('gstid3tag', id3_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/insertbin/meson.build b/subprojects/gst-plugins-bad/gst/insertbin/meson.build index 1c8be395cf..d6b50ab718 100644 --- a/subprojects/gst-plugins-bad/gst/insertbin/meson.build +++ b/subprojects/gst-plugins-bad/gst/insertbin/meson.build @@ -2,6 +2,22 @@ insertbin_sources = [ 'plugin.c' ] +insertbin_headers = [ +] + +doc_sources = [] +foreach s: insertbin_sources + insertbin_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'insertbin': pathsep.join(doc_sources) +} + +if get_option('insertbin').disabled() + subdir_done() +endif + gstinsertbin = library('gstinsertbin', insertbin_sources, c_args : gst_plugins_bad_args + [ '-DGST_USE_UNSTABLE_API' ], diff --git a/subprojects/gst-plugins-bad/gst/inter/meson.build b/subprojects/gst-plugins-bad/gst/inter/meson.build index fdc8f79589..54894fcdba 100644 --- a/subprojects/gst-plugins-bad/gst/inter/meson.build +++ b/subprojects/gst-plugins-bad/gst/inter/meson.build @@ -9,6 +9,29 @@ inter_sources = [ 'gstintersurface.c', ] +inter_headers = [ + 'gstinteraudiosink.h', + 'gstintersurface.h', + 'gstintervideosrc.h', + 'gstintersubsink.h', + 'gstintervideosink.h', + 'gstinteraudiosrc.h', + 'gstintersubsrc.h', +] + +doc_sources = [] +foreach s: inter_sources + inter_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'inter': pathsep.join(doc_sources) +} + +if get_option('inter').disabled() + subdir_done() +endif + gstinter = library('gstinter', inter_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/interlace/meson.build b/subprojects/gst-plugins-bad/gst/interlace/meson.build index 7919b83353..73e60cecf1 100644 --- a/subprojects/gst-plugins-bad/gst/interlace/meson.build +++ b/subprojects/gst-plugins-bad/gst/interlace/meson.build @@ -2,6 +2,22 @@ interlace_sources = [ 'gstinterlace.c', ] +interlace_headers = [ +] + +doc_sources = [] +foreach s: interlace_sources + interlace_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'interlace': pathsep.join(doc_sources) +} + +if get_option('interlace').disabled() + subdir_done() +endif + gstinterlace = library('gstinterlace', interlace_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/ivfparse/meson.build b/subprojects/gst-plugins-bad/gst/ivfparse/meson.build index fe64f06406..e8fb8c6fce 100644 --- a/subprojects/gst-plugins-bad/gst/ivfparse/meson.build +++ b/subprojects/gst-plugins-bad/gst/ivfparse/meson.build @@ -2,6 +2,23 @@ ivfparse_sources = [ 'gstivfparse.c', ] +ivfparse_headers = [ + 'gstivfparse.h', +] + +doc_sources = [] +foreach s: ivfparse_sources + ivfparse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ivfparse': pathsep.join(doc_sources) +} + +if get_option('ivfparse').disabled() + subdir_done() +endif + gstivfparse = library('gstivfparse', ivfparse_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/ivtc/meson.build b/subprojects/gst-plugins-bad/gst/ivtc/meson.build index 33f4b2d57c..e4259d7a7e 100644 --- a/subprojects/gst-plugins-bad/gst/ivtc/meson.build +++ b/subprojects/gst-plugins-bad/gst/ivtc/meson.build @@ -3,6 +3,24 @@ ivtc_sources = [ 'gstcombdetect.c', ] +ivtc_headers = [ + 'gstivtc.h', + 'gstcombdetect.h', +] + +doc_sources = [] +foreach s: ivtc_sources + ivtc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ivtc': pathsep.join(doc_sources) +} + +if get_option('ivtc').disabled() + subdir_done() +endif + gstivtc = library('gstivtc', ivtc_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/jp2kdecimator/meson.build b/subprojects/gst-plugins-bad/gst/jp2kdecimator/meson.build index 55cafc5aed..e55f518abd 100644 --- a/subprojects/gst-plugins-bad/gst/jp2kdecimator/meson.build +++ b/subprojects/gst-plugins-bad/gst/jp2kdecimator/meson.build @@ -3,6 +3,24 @@ jp2_sources = [ 'jp2kcodestream.c', ] +jp2_headers = [ + 'gstjp2kdecimator.h', + 'jp2kcodestream.h', +] + +doc_sources = [] +foreach s: jp2_sources + jp2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'jp2kdecimator': pathsep.join(doc_sources) +} + +if get_option('jp2kdecimator').disabled() + subdir_done() +endif + gstjp2kdecimator = library('gstjp2kdecimator', jp2_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/jpegformat/meson.build b/subprojects/gst-plugins-bad/gst/jpegformat/meson.build index a2889d3450..10e9d8cf87 100644 --- a/subprojects/gst-plugins-bad/gst/jpegformat/meson.build +++ b/subprojects/gst-plugins-bad/gst/jpegformat/meson.build @@ -4,6 +4,24 @@ jpegf_sources = [ 'gstjifmux.c', ] +jpegf_headers = [ + 'gstjpegparse.h', + 'gstjifmux.h', +] + +doc_sources = [] +foreach s: jpegf_sources + jpegf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'jpegformat': pathsep.join(doc_sources) +} + +if get_option('jpegformat').disabled() + subdir_done() +endif + gstjpegformat = library('gstjpegformat', jpegf_sources, c_args : gst_plugins_bad_args + [ '-DGST_USE_UNSTABLE_API' ], diff --git a/subprojects/gst-plugins-bad/gst/librfb/meson.build b/subprojects/gst-plugins-bad/gst/librfb/meson.build index 256ca7c821..e528a8c454 100644 --- a/subprojects/gst-plugins-bad/gst/librfb/meson.build +++ b/subprojects/gst-plugins-bad/gst/librfb/meson.build @@ -5,6 +5,26 @@ rfbsrc_sources = [ 'd3des.c', ] +rfbsrc_headers = [ + 'd3des.h', + 'rfbdecoder.h', + 'gstrfb-utils.h', + 'gstrfbsrc.h', +] + +doc_sources = [] +foreach s: rfbsrc_sources + rfbsrc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rfbsrc': pathsep.join(doc_sources) +} + +if get_option('librfb').disabled() + subdir_done() +endif + librfb_incs = include_directories('..') gstrfbsrc = library('gstrfbsrc', diff --git a/subprojects/gst-plugins-bad/gst/meson.build b/subprojects/gst-plugins-bad/gst/meson.build index 642563e2a0..5227b654fe 100644 --- a/subprojects/gst-plugins-bad/gst/meson.build +++ b/subprojects/gst-plugins-bad/gst/meson.build @@ -14,7 +14,5 @@ foreach plugin : ['accurip', 'adpcmdec', 'adpcmenc', 'aiff', 'asfmux', 'tensordecoders', 'timecode', 'transcode', 'unixfd', 'videofilters', 'videoframe_audiolevel', 'videoparsers', 'videosignal', 'vmnc', 'y4m'] - if not get_option(plugin).disabled() - subdir(plugin) - endif + subdir(plugin) endforeach diff --git a/subprojects/gst-plugins-bad/gst/midi/meson.build b/subprojects/gst-plugins-bad/gst/midi/meson.build index 8539be957e..811a2e5642 100644 --- a/subprojects/gst-plugins-bad/gst/midi/meson.build +++ b/subprojects/gst-plugins-bad/gst/midi/meson.build @@ -3,6 +3,23 @@ midi_sources = [ 'midiparse.c', ] +midi_headers = [ + 'midiparse.h', +] + +doc_sources = [] +foreach s: midi_sources + midi_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'midi': pathsep.join(doc_sources) +} + +if get_option('midi').disabled() + subdir_done() +endif + gstmidi = library('gstmidi', midi_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/mpegdemux/meson.build b/subprojects/gst-plugins-bad/gst/mpegdemux/meson.build index 1156827aa6..0922b284fa 100644 --- a/subprojects/gst-plugins-bad/gst/mpegdemux/meson.build +++ b/subprojects/gst-plugins-bad/gst/mpegdemux/meson.build @@ -4,6 +4,25 @@ mpegd_sources = [ 'gstpesfilter.c', ] +mpegd_headers = [ + 'gstpesfilter.h', + 'gstmpegdemux.h', + 'gstmpegdefs.h', +] + +doc_sources = [] +foreach s: mpegd_sources + mpegd_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpegpsdemux': pathsep.join(doc_sources) +} + +if get_option('mpegdemux').disabled() + subdir_done() +endif + gstmpedpsdemux = library('gstmpegpsdemux', mpegd_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/mpegpsmux/meson.build b/subprojects/gst-plugins-bad/gst/mpegpsmux/meson.build index 87939aa086..bf9d41ab19 100644 --- a/subprojects/gst-plugins-bad/gst/mpegpsmux/meson.build +++ b/subprojects/gst-plugins-bad/gst/mpegpsmux/meson.build @@ -6,6 +6,30 @@ psmux_sources = [ 'mpegpsmux_h264.c', ] +psmux_headers = [ + 'crc.h', + 'psmuxstream.h', + 'psmux.h', + 'psmuxcommon.h', + 'mpegpsmux.h', + 'mpegpsmux_aac.h', + 'mpegpsmux_h264.h', + 'bits.h', +] + +doc_sources = [] +foreach s: psmux_sources + psmux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpegpsmux': pathsep.join(doc_sources) +} + +if get_option('mpegpsmux').disabled() + subdir_done() +endif + gstmpegpsmux = library('gstmpegpsmux', psmux_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/mpegtsdemux/meson.build b/subprojects/gst-plugins-bad/gst/mpegtsdemux/meson.build index 21d9964bb0..50deb6db92 100644 --- a/subprojects/gst-plugins-bad/gst/mpegtsdemux/meson.build +++ b/subprojects/gst-plugins-bad/gst/mpegtsdemux/meson.build @@ -7,6 +7,29 @@ tsdemux_sources = [ 'pesparse.c', ] +tsdemux_headers = [ + 'tsdemux.h', + 'gstmpegdesc.h', + 'mpegtsparse.h', + 'pesparse.h', + 'mpegtspacketizer.h', + 'mpegtsbase.h', + 'gstmpegdefs.h', +] + +doc_sources = [] +foreach s: tsdemux_sources + tsdemux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpegtsdemux': pathsep.join(doc_sources) +} + +if get_option('mpegtsdemux').disabled() + subdir_done() +endif + gstmpegtsdemux = library('gstmpegtsdemux', tsdemux_sources, c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], diff --git a/subprojects/gst-plugins-bad/gst/mpegtsmux/meson.build b/subprojects/gst-plugins-bad/gst/mpegtsmux/meson.build index e0d873d9a3..a2c14d943b 100644 --- a/subprojects/gst-plugins-bad/gst/mpegtsmux/meson.build +++ b/subprojects/gst-plugins-bad/gst/mpegtsmux/meson.build @@ -12,6 +12,30 @@ tsmux_sources = [ 'tsmux/tsmuxstream.c' ] +tsmux_headers = [ + 'gstbasetsmuxopus.h', + 'gstatscmux.h', + 'gstbasetsmuxjpeg2000.h', + 'gstbasetsmuxjpegxs.h', + 'gstmpegtsmux.h', + 'gstbasetsmux.h', + 'gstbasetsmuxaac.h', + 'gstbasetsmuxttxt.h', +] + +doc_sources = [] +foreach s: tsmux_sources + tsmux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpegtsmux': pathsep.join(doc_sources) +} + +if get_option('mpegtsmux').disabled() + subdir_done() +endif + gstmpegtsmux = library('gstmpegtsmux', tsmux_sources, c_args : gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], diff --git a/subprojects/gst-plugins-bad/gst/mse/meson.build b/subprojects/gst-plugins-bad/gst/mse/meson.build index e4ac5e72d7..115eaac92b 100644 --- a/subprojects/gst-plugins-bad/gst/mse/meson.build +++ b/subprojects/gst-plugins-bad/gst/mse/meson.build @@ -1,5 +1,22 @@ mse_sources = ['gstmse.c'] +mse_headers = [ + 'gstmse.h', +] + +doc_sources = [] +foreach s: mse_sources + mse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mse': pathsep.join(doc_sources) +} + +if get_option('mse').disabled() + subdir_done() +endif + gstmse_plugin = library('gstmse', mse_sources, c_args: gst_plugins_bad_args + ['-DGST_USE_UNSTABLE_API'], diff --git a/subprojects/gst-plugins-bad/gst/mxf/meson.build b/subprojects/gst-plugins-bad/gst/mxf/meson.build index a7b8775466..19bd836417 100644 --- a/subprojects/gst-plugins-bad/gst/mxf/meson.build +++ b/subprojects/gst-plugins-bad/gst/mxf/meson.build @@ -23,6 +23,43 @@ mxf_sources = [ # 'mxfdms1.c', ] +mxf_headers = [ + 'mxfmetadata.h', + 'mxfd10.h', + 'mxfvanc.h', + 'mxfdemux.h', + 'mxftypes.h', + 'mxfdms1.h', + 'mxfdv-dif.h', + 'mxfjpeg2000.h', + 'mxful.h', + 'mxfmpeg.h', + 'mxfquark.h', + 'mxfvc3.h', + 'mxfcustom.h', + 'mxfffv1.h', + 'mxfaes-bwf.h', + 'mxfup.h', + 'mxfprores.h', + 'gstmxfelements.h', + 'mxfessence.h', + 'mxfalaw.h', + 'mxfmux.h', +] + +doc_sources = [] +foreach s: mxf_sources + mxf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mxf': pathsep.join(doc_sources) +} + +if get_option('mxf').disabled() + subdir_done() +endif + gstmxf = library('gstmxf', mxf_sources, c_args : gst_plugins_bad_args + [ '-DGST_USE_UNSTABLE_API' ], diff --git a/subprojects/gst-plugins-bad/gst/netsim/meson.build b/subprojects/gst-plugins-bad/gst/netsim/meson.build index 27a5ca4f9f..79c85507ee 100644 --- a/subprojects/gst-plugins-bad/gst/netsim/meson.build +++ b/subprojects/gst-plugins-bad/gst/netsim/meson.build @@ -2,6 +2,23 @@ netsim_sources = [ 'gstnetsim.c', ] +netsim_headers = [ + 'gstnetsim.h', +] + +doc_sources = [] +foreach s: netsim_sources + netsim_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'netsim': pathsep.join(doc_sources) +} + +if get_option('netsim').disabled() + subdir_done() +endif + gstnetsim = library('gstnetsim', netsim_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/onvif/meson.build b/subprojects/gst-plugins-bad/gst/onvif/meson.build index 3d7675f580..4186d0d088 100644 --- a/subprojects/gst-plugins-bad/gst/onvif/meson.build +++ b/subprojects/gst-plugins-bad/gst/onvif/meson.build @@ -4,6 +4,24 @@ onvif_sources = [ 'gstrtponviftimestamp.c', ] +onvif_headers = [ + 'gstrtponviftimestamp.h', + 'gstrtponvifparse.h', +] + +doc_sources = [] +foreach s: onvif_sources + onvif_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtponvif': pathsep.join(doc_sources) +} + +if get_option('onvif').disabled() + subdir_done() +endif + gstrtponvif = library('gstrtponvif', onvif_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/pcapparse/meson.build b/subprojects/gst-plugins-bad/gst/pcapparse/meson.build index 4cf5254168..9e6e69e1c3 100644 --- a/subprojects/gst-plugins-bad/gst/pcapparse/meson.build +++ b/subprojects/gst-plugins-bad/gst/pcapparse/meson.build @@ -4,6 +4,24 @@ capp_sources = [ 'plugin.c', ] +capp_headers = [ + 'gstpcapparse.h', + 'gstirtspparse.h', +] + +doc_sources = [] +foreach s: capp_sources + capp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'pcapparse': pathsep.join(doc_sources) +} + +if get_option('pcapparse').disabled() + subdir_done() +endif + gstpcapparse = library('gstpcapparse', capp_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/pnm/meson.build b/subprojects/gst-plugins-bad/gst/pnm/meson.build index 366e04c777..9869f2eedc 100644 --- a/subprojects/gst-plugins-bad/gst/pnm/meson.build +++ b/subprojects/gst-plugins-bad/gst/pnm/meson.build @@ -5,6 +5,25 @@ pnm_sources = [ 'gstpnmenc.c', ] +pnm_headers = [ + 'gstpnmdec.h', + 'gstpnmenc.h', + 'gstpnmutils.h', +] + +doc_sources = [] +foreach s: pnm_sources + pnm_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'pnm': pathsep.join(doc_sources) +} + +if get_option('pnm').disabled() + subdir_done() +endif + gstpnm = library('gstpnm', pnm_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/proxy/meson.build b/subprojects/gst-plugins-bad/gst/proxy/meson.build index eb3e83595a..ba31d7caa9 100644 --- a/subprojects/gst-plugins-bad/gst/proxy/meson.build +++ b/subprojects/gst-plugins-bad/gst/proxy/meson.build @@ -4,6 +4,25 @@ proxy_sources = [ 'gstproxysrc.c' ] +proxy_headers = [ + 'gstproxysrc.h', + 'gstproxy-priv.h', + 'gstproxysink.h', +] + +doc_sources = [] +foreach s: proxy_sources + proxy_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'proxy': pathsep.join(doc_sources) +} + +if get_option('proxy').disabled() + subdir_done() +endif + gstproxy = library('gstproxy', proxy_sources, c_args : gst_plugins_bad_args, @@ -12,4 +31,4 @@ gstproxy = library('gstproxy', install : true, install_dir : plugins_install_dir, ) -plugins += [gstproxy] \ No newline at end of file +plugins += [gstproxy] diff --git a/subprojects/gst-plugins-bad/gst/rawparse/meson.build b/subprojects/gst-plugins-bad/gst/rawparse/meson.build index 62562c570c..929a1d4e03 100644 --- a/subprojects/gst-plugins-bad/gst/rawparse/meson.build +++ b/subprojects/gst-plugins-bad/gst/rawparse/meson.build @@ -4,6 +4,24 @@ raw_sources = [ 'plugin.c', ] +raw_headers = [ + 'gstaudioparse.h', + 'gstvideoparse.h', +] + +doc_sources = [] +foreach s: raw_sources + raw_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'legacyrawparse': pathsep.join(doc_sources) +} + +if get_option('rawparse').disabled() + subdir_done() +endif + gstlegacyrawparse = library('gstlegacyrawparse', raw_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/removesilence/meson.build b/subprojects/gst-plugins-bad/gst/removesilence/meson.build index 998c246d89..b4d25ec612 100644 --- a/subprojects/gst-plugins-bad/gst/removesilence/meson.build +++ b/subprojects/gst-plugins-bad/gst/removesilence/meson.build @@ -3,6 +3,24 @@ silence_sources = [ 'vad_private.c', ] +silence_headers = [ + 'gstremovesilence.h', + 'vad_private.h', +] + +doc_sources = [] +foreach s: silence_sources + silence_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'removesilence': pathsep.join(doc_sources) +} + +if get_option('removesilence').disabled() + subdir_done() +endif + gstremovesilence = library('gstremovesilence', silence_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/rist/meson.build b/subprojects/gst-plugins-bad/gst/rist/meson.build index 0e3073d082..a43c472dce 100644 --- a/subprojects/gst-plugins-bad/gst/rist/meson.build +++ b/subprojects/gst-plugins-bad/gst/rist/meson.build @@ -10,6 +10,24 @@ rist_sources = [ 'gstristrtpdeext.c' ] +rist_headers = [ + 'gstrist.h', + 'gstroundrobin.h', +] + +doc_sources = [] +foreach s: rist_sources + rist_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rist': pathsep.join(doc_sources) +} + +if get_option('rist').disabled() + subdir_done() +endif + gstrist = library('gstrist', rist_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/rtmp2/meson.build b/subprojects/gst-plugins-bad/gst/rtmp2/meson.build index c8120275b0..27d04aff0a 100644 --- a/subprojects/gst-plugins-bad/gst/rtmp2/meson.build +++ b/subprojects/gst-plugins-bad/gst/rtmp2/meson.build @@ -13,6 +13,26 @@ rtmp2_sources = [ 'rtmp/rtmputils.c', ] +rtmp2_headers = [ + 'gstrtmp2locationhandler.h', + 'gstrtmp2elements.h', + 'gstrtmp2sink.h', + 'gstrtmp2src.h', +] + +doc_sources = [] +foreach s: rtmp2_sources + rtmp2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtmp2': pathsep.join(doc_sources) +} + +if get_option('rtmp2').disabled() + subdir_done() +endif + gstrtmp2 = library('gstrtmp2', rtmp2_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/rtp/meson.build b/subprojects/gst-plugins-bad/gst/rtp/meson.build index b56a9f70f2..f882910c06 100644 --- a/subprojects/gst-plugins-bad/gst/rtp/meson.build +++ b/subprojects/gst-plugins-bad/gst/rtp/meson.build @@ -5,6 +5,25 @@ gst_plugins_rtp_sources = [ 'gstrtp-utils.c', ] +gst_plugins_rtp_headers = [ + 'gstrtpsrc.h', + 'gstrtpsink.h', + 'gstrtp-utils.h', +] + +doc_sources = [] +foreach s: gst_plugins_rtp_sources + gst_plugins_rtp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtpmanagerbad': pathsep.join(doc_sources) +} + +if get_option('rtp').disabled() + subdir_done() +endif + gstrtp = library('gstrtpmanagerbad', gst_plugins_rtp_sources, dependencies: [gst_dep, gstbase_dep, gstrtp_dep, gstnet_dep, gstcontroller_dep, gio_dep], diff --git a/subprojects/gst-plugins-bad/gst/sdp/meson.build b/subprojects/gst-plugins-bad/gst/sdp/meson.build index 021bea2447..c362778148 100644 --- a/subprojects/gst-plugins-bad/gst/sdp/meson.build +++ b/subprojects/gst-plugins-bad/gst/sdp/meson.build @@ -5,6 +5,24 @@ sdp_sources = [ 'gstsdpsrc.c' ] +sdp_headers = [ + 'gstsdpdemux.h', + 'gstsdpsrc.h', +] + +doc_sources = [] +foreach s: sdp_sources + sdp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'sdpelem': pathsep.join(doc_sources) +} + +if get_option('sdp').disabled() + subdir_done() +endif + gstsdpelem = library('gstsdpelem', sdp_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/segmentclip/meson.build b/subprojects/gst-plugins-bad/gst/segmentclip/meson.build index 65fa59e19a..deedfd2ad1 100644 --- a/subprojects/gst-plugins-bad/gst/segmentclip/meson.build +++ b/subprojects/gst-plugins-bad/gst/segmentclip/meson.build @@ -5,6 +5,25 @@ segment_sources = [ 'plugin.c', ] +segment_headers = [ + 'gstsegmentclip.h', + 'gstvideosegmentclip.h', + 'gstaudiosegmentclip.h', +] + +doc_sources = [] +foreach s: segment_sources + segment_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'segmentclip': pathsep.join(doc_sources) +} + +if get_option('segmentclip').disabled() + subdir_done() +endif + gstsegmentclip = library('gstsegmentclip', segment_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/siren/meson.build b/subprojects/gst-plugins-bad/gst/siren/meson.build index b6bfc60891..83464b22a1 100644 --- a/subprojects/gst-plugins-bad/gst/siren/meson.build +++ b/subprojects/gst-plugins-bad/gst/siren/meson.build @@ -10,6 +10,33 @@ siren_sources = [ 'rmlt.c', ] +siren_headers = [ + 'gstsirendec.h', + 'gstsirenenc.h', + 'gstsiren.h', + 'encoder.h', + 'huffman.h', + 'rmlt.h', + 'dct4.h', + 'common.h', + 'decoder.h', + 'siren7.h', + 'huffman_consts.h', +] + +doc_sources = [] +foreach s: siren_sources + siren_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'siren': pathsep.join(doc_sources) +} + +if get_option('siren').disabled() + subdir_done() +endif + gstsiren = library('gstsiren', siren_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/smooth/meson.build b/subprojects/gst-plugins-bad/gst/smooth/meson.build index fca62ad555..4d2f19d742 100644 --- a/subprojects/gst-plugins-bad/gst/smooth/meson.build +++ b/subprojects/gst-plugins-bad/gst/smooth/meson.build @@ -2,6 +2,23 @@ smooth_sources = [ 'gstsmooth.c', ] +smooth_headers = [ + 'gstsmooth.h', +] + +doc_sources = [] +foreach s: smooth_sources + smooth_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'smooth': pathsep.join(doc_sources) +} + +if get_option('smooth').disabled() + subdir_done() +endif + gstsmooth = library('gstsmooth', smooth_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/speed/meson.build b/subprojects/gst-plugins-bad/gst/speed/meson.build index 11a90c8b0d..02123a7b31 100644 --- a/subprojects/gst-plugins-bad/gst/speed/meson.build +++ b/subprojects/gst-plugins-bad/gst/speed/meson.build @@ -2,6 +2,23 @@ speed_sources = [ 'gstspeed.c' ] +speed_headers = [ + 'gstspeed.h', +] + +doc_sources = [] +foreach s: speed_sources + speed_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'speed': pathsep.join(doc_sources) +} + +if get_option('speed').disabled() + subdir_done() +endif + gstspeed = library('gstspeed', speed_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/subenc/meson.build b/subprojects/gst-plugins-bad/gst/subenc/meson.build index 5d41c2d0f2..1402fe2cc5 100644 --- a/subprojects/gst-plugins-bad/gst/subenc/meson.build +++ b/subprojects/gst-plugins-bad/gst/subenc/meson.build @@ -4,6 +4,24 @@ subenc_sources = [ 'gstwebvttenc.c', ] +subenc_headers = [ + 'gstwebvttenc.h', + 'gstsrtenc.h', +] + +doc_sources = [] +foreach s: subenc_sources + subenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'subenc': pathsep.join(doc_sources) +} + +if get_option('subenc').disabled() + subdir_done() +endif + gstsubenc = library('gstsubenc', subenc_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/switchbin/meson.build b/subprojects/gst-plugins-bad/gst/switchbin/meson.build index 88d79bb623..6a679d032c 100644 --- a/subprojects/gst-plugins-bad/gst/switchbin/meson.build +++ b/subprojects/gst-plugins-bad/gst/switchbin/meson.build @@ -2,6 +2,23 @@ switchbin_sources = [ 'gstswitchbin.c', 'plugin.c' ] +switchbin_headers = [ + 'gstswitchbin.h', +] + +doc_sources = [] +foreach s: switchbin_sources + switchbin_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'switchbin': pathsep.join(doc_sources) +} + +if get_option('switchbin').disabled() + subdir_done() +endif + gstswitchbin = library('gstswitchbin', switchbin_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/tensordecoders/meson.build b/subprojects/gst-plugins-bad/gst/tensordecoders/meson.build index 8c4d2bd648..1c1940a442 100644 --- a/subprojects/gst-plugins-bad/gst/tensordecoders/meson.build +++ b/subprojects/gst-plugins-bad/gst/tensordecoders/meson.build @@ -3,6 +3,23 @@ tensordecoders_sources = [ 'gstssdobjectdetector.c' ] +tensordecoders_headers = [ + 'gstssdobjectdetector.h', +] + +doc_sources = [] +foreach s: tensordecoders_sources + tensordecoders_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'tensordecoders': pathsep.join(doc_sources) +} + +if get_option('tensordecoders').disabled() + subdir_done() +endif + gsttensordecoders = library('gsttensordecoders', tensordecoders_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/timecode/meson.build b/subprojects/gst-plugins-bad/gst/timecode/meson.build index d37ae36fae..bd1e190388 100644 --- a/subprojects/gst-plugins-bad/gst/timecode/meson.build +++ b/subprojects/gst-plugins-bad/gst/timecode/meson.build @@ -4,6 +4,24 @@ timecode_sources = [ 'gstavwait.c' ] +timecode_headers = [ + 'gstavwait.h', + 'gsttimecodestamper.h', +] + +doc_sources = [] +foreach s: timecode_sources + timecode_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'timecode': pathsep.join(doc_sources) +} + +if get_option('timecode').disabled() + subdir_done() +endif + tc_deps = [gstbase_dep, gstaudio_dep, gstvideo_dep] ltc_dep = dependency('ltc', version : '>=1.1.4', required : false) diff --git a/subprojects/gst-plugins-bad/gst/transcode/meson.build b/subprojects/gst-plugins-bad/gst/transcode/meson.build index df79d3190b..d3f67b7a11 100644 --- a/subprojects/gst-plugins-bad/gst/transcode/meson.build +++ b/subprojects/gst-plugins-bad/gst/transcode/meson.build @@ -1,9 +1,32 @@ -gsttranscoder_plugin = library('gsttranscode', +transcode_sources = [ 'gsttranscodeelement.c', 'gsttranscodeplugin.c', 'gsttranscodebin.c', 'gst-cpu-throttling-clock.c', 'gsturitranscodebin.c', +] + +transcode_headers = [ + 'gst-cpu-throttling-clock.h', + 'gsttranscoding.h', + 'gsttranscodeelements.h', +] + +doc_sources = [] +foreach s: transcode_sources + transcode_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'transcode': pathsep.join(doc_sources) +} + +if get_option('transcode').disabled() + subdir_done() +endif + +gsttranscoder_plugin = library('gsttranscode', + transcode_sources, install : true, dependencies : [gst_dep, gstpbutils_dep], c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/unixfd/meson.build b/subprojects/gst-plugins-bad/gst/unixfd/meson.build index 4b3cab8b36..f92e4971ec 100644 --- a/subprojects/gst-plugins-bad/gst/unixfd/meson.build +++ b/subprojects/gst-plugins-bad/gst/unixfd/meson.build @@ -1,9 +1,26 @@ -sources = [ +unixfd_sources = [ 'gstunixfd.c', 'gstunixfdsink.c', 'gstunixfdsrc.c', ] +unixfd_headers = [ + 'gstunixfd.h', +] + +doc_sources = [] +foreach s: unixfd_sources + unixfd_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'unixfd': pathsep.join(doc_sources) +} + +if get_option('unixfd').disabled() + subdir_done() +endif + gstallocators_dep = dependency('gstreamer-allocators-1.0') gio_unix_dep = dependency('gio-unix-2.0', required: get_option('unixfd')) @@ -12,7 +29,7 @@ if not gio_unix_dep.found() endif gstunixfd_plugin = library('gstunixfd', - sources, + unixfd_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies : [gstbase_dep, gstallocators_dep, gio_dep, gio_unix_dep], diff --git a/subprojects/gst-plugins-bad/gst/videofilters/meson.build b/subprojects/gst-plugins-bad/gst/videofilters/meson.build index 39e718f934..668cd89e9a 100644 --- a/subprojects/gst-plugins-bad/gst/videofilters/meson.build +++ b/subprojects/gst-plugins-bad/gst/videofilters/meson.build @@ -5,6 +5,25 @@ vfilt_sources = [ 'gstvideofiltersbad.c', ] +vfilt_headers = [ + 'gstscenechange.h', + 'gstzebrastripe.h', + 'gstvideodiff.h', +] + +doc_sources = [] +foreach s: vfilt_sources + vfilt_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videofiltersbad': pathsep.join(doc_sources) +} + +if get_option('videofilters').disabled() + subdir_done() +endif + orcsrc = 'gstscenechangeorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-bad/gst/videoframe_audiolevel/meson.build b/subprojects/gst-plugins-bad/gst/videoframe_audiolevel/meson.build index 9232ae4e13..c70774e166 100644 --- a/subprojects/gst-plugins-bad/gst/videoframe_audiolevel/meson.build +++ b/subprojects/gst-plugins-bad/gst/videoframe_audiolevel/meson.build @@ -2,6 +2,23 @@ videoframe_audiolevel_sources = [ 'gstvideoframe-audiolevel.c', ] +videoframe_audiolevel_headers = [ + 'gstvideoframe-audiolevel.h', +] + +doc_sources = [] +foreach s: videoframe_audiolevel_sources + videoframe_audiolevel_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videoframe_audiolevel': pathsep.join(doc_sources) +} + +if get_option('videoframe_audiolevel').disabled() + subdir_done() +endif + gstvideoframe_audiolevel = library('gstvideoframe_audiolevel', videoframe_audiolevel_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/videoparsers/meson.build b/subprojects/gst-plugins-bad/gst/videoparsers/meson.build index 0c5fa64d3e..b8a50d8250 100644 --- a/subprojects/gst-plugins-bad/gst/videoparsers/meson.build +++ b/subprojects/gst-plugins-bad/gst/videoparsers/meson.build @@ -18,6 +18,38 @@ vparse_sources = [ 'gsth266parse.c', ] +vparse_headers = [ + 'gstvc1parse.h', + 'gstmpeg4videoparse.h', + 'gstvideoparserselements.h', + 'gstmpegvideoparse.h', + 'gsth264parse.h', + 'gstjpeg2000parse.h', + 'gstvp9parse.h', + 'gsth263parse.h', + 'gstdiracparse.h', + 'gstvideoparseutils.h', + 'gstav1parse.h', + 'gstpngparse.h', + 'gsth265parse.h', + 'gsth266parse.h', + 'dirac_parse.h', + 'h263parse.h', +] + +doc_sources = [] +foreach s: vparse_sources + vparse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videoparsersbad': pathsep.join(doc_sources) +} + +if get_option('videoparsers').disabled() + subdir_done() +endif + gstvideoparsersbad = library('gstvideoparsersbad', vparse_sources, c_args : gst_plugins_bad_args + [ '-DGST_USE_UNSTABLE_API' ], diff --git a/subprojects/gst-plugins-bad/gst/videosignal/meson.build b/subprojects/gst-plugins-bad/gst/videosignal/meson.build index 04d5044f95..fa96d2b512 100644 --- a/subprojects/gst-plugins-bad/gst/videosignal/meson.build +++ b/subprojects/gst-plugins-bad/gst/videosignal/meson.build @@ -5,6 +5,26 @@ vsignal_sources = [ 'gstsimplevideomark.c', ] +vsignal_headers = [ + 'gstvideosignal.h', + 'gstsimplevideomarkdetect.h', + 'gstvideoanalyse.h', + 'gstsimplevideomark.h', +] + +doc_sources = [] +foreach s: vsignal_sources + vsignal_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videosignal': pathsep.join(doc_sources) +} + +if get_option('videosignal').disabled() + subdir_done() +endif + gstvideosignal = library('gstvideosignal', vsignal_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/vmnc/meson.build b/subprojects/gst-plugins-bad/gst/vmnc/meson.build index 9735ad765f..fbbe15d212 100644 --- a/subprojects/gst-plugins-bad/gst/vmnc/meson.build +++ b/subprojects/gst-plugins-bad/gst/vmnc/meson.build @@ -2,6 +2,23 @@ vmnc_sources = [ 'vmncdec.c', ] +vmnc_headers = [ + 'vmncdec.h', +] + +doc_sources = [] +foreach s: vmnc_sources + vmnc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'vmnc': pathsep.join(doc_sources) +} + +if get_option('vmnc').disabled() + subdir_done() +endif + gstvmnc = library('gstvmnc', vmnc_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/gst/y4m/meson.build b/subprojects/gst-plugins-bad/gst/y4m/meson.build index 0b778d2797..3abccbc7b2 100644 --- a/subprojects/gst-plugins-bad/gst/y4m/meson.build +++ b/subprojects/gst-plugins-bad/gst/y4m/meson.build @@ -2,6 +2,23 @@ y4_sources = [ 'gsty4mdec.c' ] +y4_headers = [ + 'gsty4mdec.h', +] + +doc_sources = [] +foreach s: y4_sources + y4_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'y4mdec': pathsep.join(doc_sources) +} + +if get_option('y4m').disabled() + subdir_done() +endif + gsty4mdec = library('gsty4mdec', y4_sources, c_args : gst_plugins_bad_args, diff --git a/subprojects/gst-plugins-bad/meson.build b/subprojects/gst-plugins-bad/meson.build index 3662d050e9..49b87d95a0 100644 --- a/subprojects/gst-plugins-bad/meson.build +++ b/subprojects/gst-plugins-bad/meson.build @@ -37,6 +37,7 @@ osxversion = curversion + 1 plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') static_build = get_option('default_library') == 'static' plugins = [] +plugin_sources = {} gst_libraries = [] cc = meson.get_compiler('c') @@ -577,6 +578,12 @@ pkgconfig.generate( gpl_allowed = get_option('gpl').allowed() +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + subdir('gst-libs') subdir('gst') subdir('sys') diff --git a/subprojects/gst-plugins-bad/sys/aja/meson.build b/subprojects/gst-plugins-bad/sys/aja/meson.build index affd600244..9aa417558e 100644 --- a/subprojects/gst-plugins-bad/sys/aja/meson.build +++ b/subprojects/gst-plugins-bad/sys/aja/meson.build @@ -1,3 +1,31 @@ +aja_sources = [ + 'plugin.cpp', + 'gstajacommon.cpp', + 'gstajasink.cpp', + 'gstajasinkcombiner.cpp', + 'gstajasrc.cpp', + 'gstajasrcdemux.cpp', + 'gstajadeviceprovider.cpp', +] + +aja_headers = [ + 'gstajacommon.h', + 'gstajasinkcombiner.h', + 'gstajasink.h', + 'gstajasrcdemux.h', + 'gstajadeviceprovider.h', + 'gstajasrc.h', +] + +doc_sources = [] +foreach s: aja_sources + aja_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'aja': pathsep.join(doc_sources) +} + aja_option = get_option('aja') \ .require(host_system == 'linux', error_message: 'AJA plugin is currently only available on Linux') @@ -102,14 +130,7 @@ if not found_ajantv2 endif gstaja = library('gstaja', - ['plugin.cpp', - 'gstajacommon.cpp', - 'gstajasink.cpp', - 'gstajasinkcombiner.cpp', - 'gstajasrc.cpp', - 'gstajasrcdemux.cpp', - 'gstajadeviceprovider.cpp', - ], + aja_sources, override_options : ['cpp_std=c++11'], cpp_args : gst_plugins_bad_args + common_flags, include_directories : [configinc], diff --git a/subprojects/gst-plugins-bad/sys/amfcodec/meson.build b/subprojects/gst-plugins-bad/sys/amfcodec/meson.build index 636dfc6759..fdbcf64ac5 100644 --- a/subprojects/gst-plugins-bad/sys/amfcodec/meson.build +++ b/subprojects/gst-plugins-bad/sys/amfcodec/meson.build @@ -7,6 +7,23 @@ amf_sources = [ 'plugin.cpp', ] +amf_headers = [ + 'gstamfutils.h', + 'gstamfencoder.h', + 'gstamfh265enc.h', + 'gstamfh264enc.h', + 'gstamfav1enc.h', +] + +doc_sources = [] +foreach s: amf_sources + amf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'amfcodec': pathsep.join(doc_sources) +} + amf_option = get_option('amfcodec') if amf_option.disabled() subdir_done() diff --git a/subprojects/gst-plugins-bad/sys/androidmedia/meson.build b/subprojects/gst-plugins-bad/sys/androidmedia/meson.build index 703b50af08..f04a62860e 100644 --- a/subprojects/gst-plugins-bad/sys/androidmedia/meson.build +++ b/subprojects/gst-plugins-bad/sys/androidmedia/meson.build @@ -20,12 +20,45 @@ androidmedia_sources = [ 'jni/gstamcsurfacetexture-jni.c', ] +ndk_sources = [ + 'ndk/gstamc-codec-ndk.c', + 'ndk/gstamc-format-ndk.c', +] + +androidmedia_headers = [ + 'gstahcsrc.h', + 'gstahssrc.h', + 'gstamcaudiodec.h', + 'gstamc-codec.h', + 'gstamc-codeclist.h', + 'gstamc-constants.h', + 'gstamc-format.h', + 'gstamc.h', + 'gstamcsurfacetexture.h', + 'gstamcvideodec.h', + 'gstamcvideoenc.h', + 'gst-android-graphics-imageformat.h', + 'gst-android-hardware-camera.h', + 'gst-android-hardware-sensor.h', + 'gstjniutils.h', + 'gstsensors.h', +] + androidmedia_java_sources = [ 'org/freedesktop/gstreamer/androidmedia/GstAhcCallback.java', 'org/freedesktop/gstreamer/androidmedia/GstAhsCallback.java', 'org/freedesktop/gstreamer/androidmedia/GstAmcOnFrameAvailableListener.java', ] +doc_sources = [] +foreach s: androidmedia_sources + ndk_sources + androidmedia_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'androidmedia': pathsep.join(doc_sources) +} + amc_opt = get_option('androidmedia') amc_opt = amc_opt.require(gstgl_dep.found(), error_message: 'androidmedia plugin requires GL support', @@ -51,10 +84,7 @@ extra_cargs = [ # but use only type definations (and then rely on dlopen and dlsym), so this # doesn't affect compatibility with older Android versions. if cc.check_header('media/NdkMediaCodec.h') - androidmedia_sources += [ - 'ndk/gstamc-codec-ndk.c', - 'ndk/gstamc-format-ndk.c', - ] + androidmedia_sources += ndk_sources extra_cargs += [ '-DHAVE_NDKMEDIA' ] extra_deps += [ cc.find_library('android', required : true) ] endif diff --git a/subprojects/gst-plugins-bad/sys/applemedia/meson.build b/subprojects/gst-plugins-bad/sys/applemedia/meson.build index 0bca270376..f748f910c1 100644 --- a/subprojects/gst-plugins-bad/sys/applemedia/meson.build +++ b/subprojects/gst-plugins-bad/sys/applemedia/meson.build @@ -10,6 +10,29 @@ applemedia_sources = [ 'helpers.c', ] +applemedia_headers = [ + 'metal-helpers.h', + 'vtutil.h', + 'iosglmemory.h', + 'corevideobuffer.h', + 'videotexturecache.h', + 'coremediabuffer.h', + 'vtenc.h', + 'avsamplevideosink.h', + 'helpers.h', + 'corevideomemory.h', + 'iosassetsrc.h', + 'iosurfaceglmemory.h', + 'avfdeviceprovider.h', + 'avfassetsrc.h', + 'iosurfacevulkanmemory.h', + 'videotexturecache-vulkan.h', + 'vtdec.h', + 'avfvideosrc.h', + 'videotexturecache-gl.h', + 'glcontexthelper.h', +] + applemedia_args = [ '-Dgst_core_media_buffer_new=gst_core_media_buffer_priv_new', '-Dgst_core_media_buffer_get_type=gst_core_media_buffer_priv_get_type', @@ -19,6 +42,41 @@ applemedia_args = [ '-DGST_USE_UNSTABLE_API' ] +avfoundation_sources = [ + 'avfvideosrc.m', + 'avfassetsrc.m', + 'avsamplevideosink.m', + 'avfdeviceprovider.m', +] + +vt_sources = [ + 'vtenc.c', + 'vtdec.c' +] + +ios_sources = [ + 'iosassetsrc.m', + 'iosglmemory.c', +] + +non_ios_sources = [ + 'iosurfaceglmemory.c' +] + +vulkan_sources = [ + 'videotexturecache-vulkan.mm', + 'iosurfacevulkanmemory.c', +] + +doc_sources = [] +foreach s: applemedia_sources + avfoundation_sources + vt_sources + ios_sources + non_ios_sources + vulkan_sources + applemedia_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'applemedia': pathsep.join(doc_sources) +} + applemedia_objc_args = [] applemedia_found_deps = false applemedia_option = get_option('applemedia') @@ -42,38 +100,25 @@ applemedia_frameworks += [corefoundation_dep, coremedia_dep, corevideo_dep] avfoundation_dep = dependency('AVFoundation', required : applemedia_option) if avfoundation_dep.found() - applemedia_sources += [ - 'avfvideosrc.m', - 'avfassetsrc.m', - 'avsamplevideosink.m', - 'avfdeviceprovider.m', - ] + applemedia_sources += avfoundation_sources applemedia_frameworks += [avfoundation_dep] endif videotoolbox_dep = dependency('VideoToolbox', required : applemedia_option) if videotoolbox_dep.found() - applemedia_sources += [ - 'vtenc.c', - 'vtdec.c' - ] + applemedia_sources += vt_sources applemedia_frameworks += [videotoolbox_dep] endif if host_system == 'ios' - applemedia_sources += [ - 'iosassetsrc.m', - 'iosglmemory.c' - ] + applemedia_sources += ios_sources applemedia_objc_args += ['-fobjc-abi-version=2', '-fobjc-legacy-dispatch'] ios_media_dep = dependency('appleframeworks', modules : ['Foundation', 'AssetsLibrary'], required : applemedia_option) iosurface_dep = dependency('IOSurface', required : applemedia_option) applemedia_frameworks += [ios_media_dep, iosurface_dep] else - applemedia_sources += [ - 'iosurfaceglmemory.c' - ] + applemedia_sources += non_ios_sources cocoa_dep = dependency('Cocoa', required : applemedia_option) iosurface_dep = dependency('IOSurface', required : applemedia_option) applemedia_opengl_dep = dependency('appleframeworks', modules : ['OpenGL'], required : applemedia_option) @@ -96,10 +141,7 @@ if gstvulkan_dep.found() and have_objcpp and not vulkan_option.disabled() have_mvk_header = objcpp.has_header('MoltenVK/vk_mvk_moltenvk.h', required: vk_required) if metal_dep.found() and moltenvk_dep.found() and have_mvk_header applemedia_frameworks += [moltenvk_dep, gstvulkan_dep, metal_dep] - applemedia_sources += [ - 'videotexturecache-vulkan.mm', - 'iosurfacevulkanmemory.c', - ] + applemedia_sources += vulkan_sources applemedia_args += ['-DAPPLEMEDIA_MOLTENVK'] # override_options : ['cpp_std=c++11'] doesn't seem to work for objcpp applemedia_objcpp_args += objcpp.get_supported_arguments([ diff --git a/subprojects/gst-plugins-bad/sys/asio/meson.build b/subprojects/gst-plugins-bad/sys/asio/meson.build index 87f4a24ae9..111b9426eb 100644 --- a/subprojects/gst-plugins-bad/sys/asio/meson.build +++ b/subprojects/gst-plugins-bad/sys/asio/meson.build @@ -8,6 +8,25 @@ asio_sources = [ 'plugin.c', ] +asio_headers = [ + 'gstasioringbuffer.h', + 'asio.h', + 'gstasiodeviceprovider.h', + 'gstasiosink.h', + 'gstasioobject.h', + 'gstasiosrc.h', + 'gstasioutils.h', +] + +doc_sources = [] +foreach s: asio_sources + asio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'asio': pathsep.join(doc_sources) +} + asio_option = get_option('asio') if asio_option.disabled() or host_system != 'windows' subdir_done() @@ -40,4 +59,4 @@ gstasio = library('gstasio', cpp_args : gst_plugins_bad_args, install : true, install_dir : plugins_install_dir) -plugins += [gstasio] \ No newline at end of file +plugins += [gstasio] diff --git a/subprojects/gst-plugins-bad/sys/bluez/meson.build b/subprojects/gst-plugins-bad/sys/bluez/meson.build index 085b835303..483f6a584e 100644 --- a/subprojects/gst-plugins-bad/sys/bluez/meson.build +++ b/subprojects/gst-plugins-bad/sys/bluez/meson.build @@ -8,6 +8,25 @@ bluez_sources = [ 'gstavrcputil.c', ] +bluez_headers = [ + 'gstbluezelements.h', + 'a2dp-codecs.h', + 'gstavrcputil.h', + 'gstavdtpsrc.h', + 'gsta2dpsink.h', + 'gstavdtputil.h', + 'gstavdtpsink.h', +] + +doc_sources = [] +foreach s: bluez_sources + bluez_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'bluez': pathsep.join(doc_sources) +} + if host_system == 'windows' subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/d3d11/meson.build b/subprojects/gst-plugins-bad/sys/d3d11/meson.build index c395207af4..2859ea3ea5 100644 --- a/subprojects/gst-plugins-bad/sys/d3d11/meson.build +++ b/subprojects/gst-plugins-bad/sys/d3d11/meson.build @@ -27,6 +27,68 @@ d3d11_sources = [ 'plugin.cpp', ] +d3d11_headers = [ + 'gstd3d11ipcsrc.h', + 'gstd3d11window_dummy.h', + 'gstd3d11videosink.h', + 'gstd3d11compositor.h', + 'gstd3d11ipcsink.h', + 'gstd3d11ipcserver.h', + 'gstd3d11vp8dec.h', + 'gstd3d11download.h', + 'gstd3d11screencapturesrc.h', + 'gstd3d11av1dec.h', + 'gstd3d11mpeg2dec.h', + 'gstd3d11testsrc.h', + 'gstd3d11window_swapchainpanel.h', + 'gstd3d11upload.h', + 'gstd3d11window_corewindow.h', + 'gstd3d11pluginutils.h', + 'gstd3d11deinterlace.h', + 'gstd3d11screencapturedevice.h', + 'gstd3d11dxgicapture.h', + 'gstd3d11h265dec.h', + 'gstd3d11winrtcapture.h', + 'gstd3d11ipcclient.h', + 'gstd3d11overlay.h', + 'gstd3d11window_win32.h', + 'gstd3d11screencapture.h', + 'gstd3d11window.h', + 'gstd3d11convert.h', + 'gstd3d11ipc.h', + 'gstd3d11overlaycompositor.h', + 'gstd3d11vp9dec.h', + 'gstd3d11decoder.h', + 'gstd3d11basefilter.h', + 'gstd3d11h264dec.h', +] + +winapi_app_sources = [ + 'gstd3d11window_corewindow.cpp', + 'gstd3d11window_swapchainpanel.cpp', +] + +winapi_desktop_sources = [ + 'gstd3d11dxgicapture.cpp', + 'gstd3d11screencapture.cpp', + 'gstd3d11screencapturedevice.cpp', + 'gstd3d11screencapturesrc.cpp', + 'gstd3d11window_win32.cpp', +] + +winrtcapture_sources = [ + 'gstd3d11winrtcapture.cpp' +] + +doc_sources = [] +foreach s: d3d11_sources + winapi_app_sources + winapi_desktop_sources + winrtcapture_sources + d3d11_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'd3d11': pathsep.join(doc_sources) +} + extra_c_args = ['-DCOBJMACROS'] extra_args = ['-DGST_USE_UNSTABLE_API'] extra_dep = [] @@ -88,8 +150,7 @@ endif # if build target is Windows 10 and WINAPI_PARTITION_APP is allowed, # we can build UWP only modules as well if d3d11_winapi_app - d3d11_sources += ['gstd3d11window_corewindow.cpp', - 'gstd3d11window_swapchainpanel.cpp'] + d3d11_sources += winapi_app_sources extra_dep += [runtimeobject_lib] if cc.get_id() == 'msvc' and get_option('b_sanitize') == 'address' extra_args += ['/bigobj'] @@ -97,11 +158,7 @@ if d3d11_winapi_app endif if d3d11_winapi_desktop - d3d11_sources += ['gstd3d11dxgicapture.cpp', - 'gstd3d11screencapture.cpp', - 'gstd3d11screencapturedevice.cpp', - 'gstd3d11screencapturesrc.cpp', - 'gstd3d11window_win32.cpp'] + d3d11_sources += winapi_desktop_sources # multimedia clock is desktop only API if winmm_lib.found() and cc.has_header('mmsystem.h') @@ -110,7 +167,7 @@ if d3d11_winapi_desktop endif if have_wgc and dwmapi_lib.found() - d3d11_sources += ['gstd3d11winrtcapture.cpp'] + d3d11_sources += winrtcapture_sources extra_args += ['-DHAVE_WINRT_CAPTURE'] extra_dep += [dwmapi_lib] endif diff --git a/subprojects/gst-plugins-bad/sys/d3d12/meson.build b/subprojects/gst-plugins-bad/sys/d3d12/meson.build index 958f73f4bd..53dfc6af86 100644 --- a/subprojects/gst-plugins-bad/sys/d3d12/meson.build +++ b/subprojects/gst-plugins-bad/sys/d3d12/meson.build @@ -38,6 +38,72 @@ d3d12_sources = [ 'plugin.cpp', ] +d3d12_headers = [ + 'gstd3d12upload.h', + 'gstd3d12decoder.h', + 'gstd3d12screencapturedevice.h', + 'gstd3d12h264dec.h', + 'gstd3d12yadif.h', + 'gstd3d12h264enc.h', + 'gstd3d12convert.h', + 'gstd3d12encoderbufferpool.h', + 'gstd3d12download.h', + 'gstd3d12ipcclient.h', + 'gstd3d12mpeg2dec.h', + 'gstd3d12graphicscapture.h', + 'gstd3d12ipcsink.h', + 'gstd3d12memorycopy.h', + 'gstd3d12decodercpbpool.h', + 'gstd3d12compositor.h', + 'gstd3d12window-swapchain-resource.h', + 'gstd3d12mipgen.h', + 'gstd3d12swapchainsink.h', + 'gstd3d12window-swapchain.h', + 'gstd3d12dpbstorage.h', + 'gstd3d12pluginutils.h', + 'gstd3d12h265dec.h', + 'gstd3d12screencapturesrc.h', + 'gstd3d12overlaycompositor.h', + 'gstd3d12window.h', + 'gstd3d12av1dec.h', + 'gstd3d12videosink.h', + 'gstd3d12window-win32.h', + 'gstd3d12encoder.h', + 'gstd3d12dxgicapture.h', + 'gstd3d12mipmapping.h', + 'gstd3d12vp9dec.h', + 'gstd3d12ipc.h', + 'gstd3d12deinterlace.h', + 'gstd3d12ipcserver.h', + 'gstd3d12ipcsrc.h', + 'gstd3d12screencapture.h', + 'gstd3d12basefilter.h', + 'gstd3d12testsrc.h', + 'gstd3d12vp8dec.h', +] + +graphicscapture_sources = [ + 'gstd3d12graphicscapture.cpp', +] + +memorycopy_sources = [ + 'gstd3d12memorycopy.cpp', +] + +download_upload_sources = [ + 'gstd3d12download.cpp', + 'gstd3d12upload.cpp', +] + +doc_sources = [] +foreach s: d3d12_sources + graphicscapture_sources + memorycopy_sources + download_upload_sources + d3d12_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'd3d12': pathsep.join(doc_sources) +} + extra_args = [ '-DGST_USE_UNSTABLE_API', '-DGST_D3D12_USE_DIRECTX_HEADERS', @@ -163,21 +229,16 @@ endif if have_wgc and dwmapi_lib.found() d3d12_cdata.set('HAVE_WGC', true) - d3d12_sources += ['gstd3d12graphicscapture.cpp'] + d3d12_sources += graphicscapture_sources extra_deps += [dwmapi_lib] endif if gstd3d11_dep.found() d3d12_cdata.set('HAVE_GST_D3D11', true) extra_deps += [gstd3d11_dep] - d3d12_sources += [ - 'gstd3d12memorycopy.cpp', - ] + d3d12_sources += memorycopy_sources else - d3d12_sources += [ - 'gstd3d12download.cpp', - 'gstd3d12upload.cpp', - ] + d3d12_sources += download_upload_sources endif configure_file( diff --git a/subprojects/gst-plugins-bad/sys/d3dvideosink/meson.build b/subprojects/gst-plugins-bad/sys/d3dvideosink/meson.build index 61ee39b52d..db6d523ab9 100644 --- a/subprojects/gst-plugins-bad/sys/d3dvideosink/meson.build +++ b/subprojects/gst-plugins-bad/sys/d3dvideosink/meson.build @@ -4,6 +4,21 @@ d3dvideosink_sources = [ 'gstd3d9overlay.c' ] +d3dvideosink_headers = [ + 'gstd3d9overlay.h', + 'd3dvideosink.h', + 'd3dhelpers.h', +] + +doc_sources = [] +foreach s: d3dvideosink_sources + d3dvideosink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'd3d': pathsep.join(doc_sources) +} + if host_system != 'windows' or get_option('d3dvideosink').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/decklink/meson.build b/subprojects/gst-plugins-bad/sys/decklink/meson.build index 587f1910b9..716d7d64e6 100644 --- a/subprojects/gst-plugins-bad/sys/decklink/meson.build +++ b/subprojects/gst-plugins-bad/sys/decklink/meson.build @@ -8,9 +8,36 @@ decklink_sources = [ 'gstdecklinkdeviceprovider.cpp', ] -if get_option('decklink').disabled() - subdir_done() -endif +decklink_headers = [ + 'gstdecklinkaudiosrc.h', + 'gstdecklinkdeviceprovider.h', + 'gstdecklink.h', + 'gstdecklinkvideosrc.h', + 'gstdecklinkaudiosink.h', + 'gstdecklinkvideosink.h', +] + +windows_sources = [ + 'win/DeckLinkAPIDispatch.cpp', + 'win/DeckLinkAPI_i.c' +] + +linux_sources = [ + 'linux/DeckLinkAPIDispatch.cpp', +] + +osx_sources = [ + 'osx/DeckLinkAPIDispatch.cpp' +] + +doc_sources = [] +foreach s: decklink_sources + windows_sources + linux_sources + osx_sources + decklink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'decklink': pathsep.join(doc_sources) +} build_decklink = false decklink_ldflags = [] @@ -19,7 +46,7 @@ decklink_libs = [] extra_args = cc.get_supported_arguments(['-Wno-undef']) if host_system == 'windows' - decklink_sources += ['win/DeckLinkAPIDispatch.cpp', 'win/DeckLinkAPI_i.c'] + decklink_sources += windows_sources if cxx.get_id() == 'msvc' # FIXME: Use commsuppwd.lib for debug builds? comutil_dep = cxx.find_library('comsuppw', required : get_option('decklink')) @@ -36,16 +63,20 @@ else if libdl.found() and have_pthread_h decklink_libs = [libm, libdl, dependency('threads')] if host_system == 'linux' - decklink_sources += ['linux/DeckLinkAPIDispatch.cpp'] + decklink_sources += linux_sources build_decklink = true elif ['darwin', 'ios'].contains(host_system) - decklink_sources += ['osx/DeckLinkAPIDispatch.cpp'] + decklink_sources += osx_sources decklink_ldflags = ['-Wl,-framework,CoreFoundation'] build_decklink = true endif endif endif +if get_option('decklink').disabled() + subdir_done() +endif + if build_decklink message('Building decklink plugin') decklink = library('gstdecklink', diff --git a/subprojects/gst-plugins-bad/sys/directshow/meson.build b/subprojects/gst-plugins-bad/sys/directshow/meson.build index e74886d189..550fc2b201 100644 --- a/subprojects/gst-plugins-bad/sys/directshow/meson.build +++ b/subprojects/gst-plugins-bad/sys/directshow/meson.build @@ -13,6 +13,29 @@ dshow_sources = [ 'plugin.cpp', ] +dshow_headers = [ + 'gstdshowaudiodec.h', + 'gstdshowaudiosrc.h', + 'gstdshowutil.h', + 'dshowdeviceprovider.h', + 'gstdshowvideodec.h', + 'dshowvideofakesrc.h', + 'gstdshow.h', + 'gstdshowfakesrc.h', + 'gstdshowfakesink.h', + 'dshowvideosink.h', + 'gstdshowvideosrc.h', +] + +doc_sources = [] +foreach s: dshow_sources + dshow_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'directshow': pathsep.join(doc_sources) +} + dshow_option = get_option('directshow') if cxx.get_id() != 'msvc' or dshow_option.disabled() diff --git a/subprojects/gst-plugins-bad/sys/directsound/meson.build b/subprojects/gst-plugins-bad/sys/directsound/meson.build index 885f1d0a6a..46f9c3dd51 100644 --- a/subprojects/gst-plugins-bad/sys/directsound/meson.build +++ b/subprojects/gst-plugins-bad/sys/directsound/meson.build @@ -4,6 +4,20 @@ directsoundsrc_sources = [ 'gstdirectsoundplugin.c', ] +directsoundsrc_headers = [ + 'gstdirectsounddevice.h', + 'gstdirectsoundsrc.h', +] + +doc_sources = [] +foreach s: directsoundsrc_sources + directsoundsrc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'directsoundsrc': pathsep.join(doc_sources) +} + directsoundsrc_device_flags = [ '-DGstDirectSoundDeviceProvider=GstDirectSoundSrcDeviceProvider', '-DGstDirectSoundDeviceProviderClass=GstDirectSoundSrcDeviceProviderClass', diff --git a/subprojects/gst-plugins-bad/sys/dvb/meson.build b/subprojects/gst-plugins-bad/sys/dvb/meson.build index 0c334adf08..e505711a65 100644 --- a/subprojects/gst-plugins-bad/sys/dvb/meson.build +++ b/subprojects/gst-plugins-bad/sys/dvb/meson.build @@ -16,6 +16,32 @@ dvb_sources = [ 'parsechannels.c', ] +dvb_headers = [ + 'camconditionalaccess.h', + 'cam.h', + 'camdevice.h', + 'camapplication.h', + 'dvbbasebin.h', + 'gstdvbsrc.h', + 'camutils.h', + 'camsession.h', + 'camswclient.h', + 'gstdvbelements.h', + 'parsechannels.h', + 'camresourcemanager.h', + 'camtransport.h', + 'camapplicationinfo.h', +] + +doc_sources = [] +foreach s: dvb_sources + dvb_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvb': pathsep.join(doc_sources) +} + if get_option('dvb').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/dwrite/meson.build b/subprojects/gst-plugins-bad/sys/dwrite/meson.build index af372f2dee..6e3e4ffd9f 100644 --- a/subprojects/gst-plugins-bad/sys/dwrite/meson.build +++ b/subprojects/gst-plugins-bad/sys/dwrite/meson.build @@ -18,6 +18,39 @@ dwrite_sources = [ 'plugin.cpp', ] +dwrite_headers = [ + 'gstdwritetimeoverlay.h', + 'gstdwriterender_d3d11.h', + 'gstdwritebaseoverlay.h', + 'gstdwritebitmapmemory.h', + 'gstdwriterender_d3d12.h', + 'gstdwritebitmappool.h', + 'gstdwriteoverlayobject.h', + 'gstdwriterender_bitmap.h', + 'gstdwriterender.h', + 'gstdwrite-utils.h', + 'gstdwrite-effect.h', + 'gstdwritetextoverlay.h', + 'gstdwrite-renderer.h', + 'gstdwrite-enums.h', + 'gstdwritesubtitlemux.h', + 'gstdwriteclockoverlay.h', + 'gstdwritesubtitleoverlay.h', +] + +d3d12_sources = [ + 'gstdwriterender_d3d12.cpp' +] + +doc_sources = [] +foreach s: dwrite_sources + d3d12_sources + dwrite_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dwrite': pathsep.join(doc_sources) +} + extra_args = ['-DGST_USE_UNSTABLE_API'] extra_deps = [] @@ -72,7 +105,7 @@ subdir('libcaption') if gstd3d12_dep.found() and cc.has_header('d3d11on12.h') extra_args += ['-DHAVE_GST_D3D12'] extra_deps += [gstd3d12_dep] - dwrite_sources += ['gstdwriterender_d3d12.cpp'] + dwrite_sources += d3d12_sources endif gstdwrite = library('gstdwrite', diff --git a/subprojects/gst-plugins-bad/sys/fbdev/meson.build b/subprojects/gst-plugins-bad/sys/fbdev/meson.build index 1a77fabb77..6b93bb0e48 100644 --- a/subprojects/gst-plugins-bad/sys/fbdev/meson.build +++ b/subprojects/gst-plugins-bad/sys/fbdev/meson.build @@ -2,6 +2,19 @@ fbdevsink_sources = [ 'gstfbdevsink.c', ] +fbdevsink_headers = [ + 'gstfbdevsink.h', +] + +doc_sources = [] +foreach s: fbdevsink_sources + fbdevsink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'fbdevsink': pathsep.join(doc_sources) +} + if get_option('fbdev').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/ipcpipeline/meson.build b/subprojects/gst-plugins-bad/sys/ipcpipeline/meson.build index 45cd8cbb77..0a2300ba52 100644 --- a/subprojects/gst-plugins-bad/sys/ipcpipeline/meson.build +++ b/subprojects/gst-plugins-bad/sys/ipcpipeline/meson.build @@ -7,6 +7,23 @@ ipcpipeline_sources = [ 'gstipcslavepipeline.c' ] +ipcpipeline_headers = [ + 'gstipcpipelinesink.h', + 'gstipcpipelineelements.h', + 'gstipcpipelinecomm.h', + 'gstipcpipelinesrc.h', + 'gstipcslavepipeline.h', +] + +doc_sources = [] +foreach s: ipcpipeline_sources + ipcpipeline_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ipcpipeline': pathsep.join(doc_sources) +} + if get_option('ipcpipeline').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/kms/meson.build b/subprojects/gst-plugins-bad/sys/kms/meson.build index 44c7df1636..6f2cec8b40 100644 --- a/subprojects/gst-plugins-bad/sys/kms/meson.build +++ b/subprojects/gst-plugins-bad/sys/kms/meson.build @@ -5,6 +5,24 @@ kmssink_sources = [ 'gstkmssink.c', 'gstkmsutils.c', ] + +kmssink_headers = [ + 'gstkmsallocator.h', + 'gstkmsutils.h', + 'gstkmsedid.h', + 'gstkmsbufferpool.h', + 'gstkmssink.h', +] + +doc_sources = [] +foreach s: kmssink_sources + kmssink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'kms': pathsep.join(doc_sources) +} + extra_deps = [] if host_system != 'linux' diff --git a/subprojects/gst-plugins-bad/sys/magicleap/meson.build b/subprojects/gst-plugins-bad/sys/magicleap/meson.build index faeee9dff2..0b1ea64af9 100644 --- a/subprojects/gst-plugins-bad/sys/magicleap/meson.build +++ b/subprojects/gst-plugins-bad/sys/magicleap/meson.build @@ -4,6 +4,20 @@ magicleap_sources = [ 'mlaudiowrapper.cpp', ] +magicleap_headers = [ + 'mlaudiosink.h', + 'mlaudiowrapper.h', +] + +doc_sources = [] +foreach s: magicleap_sources + magicleap_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'magicleap': pathsep.join(doc_sources) +} + libmlaudio_dep = cc.find_library('ml_audio', required : get_option('magicleap')) liblumin_core_dep = cc.find_library('lumin_rt_core_1_7', required : get_option('magicleap')) liblumin_app_dep = cc.find_library('lumin_rt_app_1_7', required : get_option('magicleap')) diff --git a/subprojects/gst-plugins-bad/sys/mediafoundation/meson.build b/subprojects/gst-plugins-bad/sys/mediafoundation/meson.build index 6b9a0594c6..05fae24e58 100644 --- a/subprojects/gst-plugins-bad/sys/mediafoundation/meson.build +++ b/subprojects/gst-plugins-bad/sys/mediafoundation/meson.build @@ -40,6 +40,15 @@ mf_header_deps = [ 'codecapi.h', ] +doc_sources = [] +foreach s: mf_sources + mf_desktop_sources + mf_app_sources + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mediafoundation': pathsep.join(doc_sources) +} + winapi_desktop = false winapi_app = false have_capture_engine = false diff --git a/subprojects/gst-plugins-bad/sys/msdk/meson.build b/subprojects/gst-plugins-bad/sys/msdk/meson.build index 4b967eda3e..79e7200da5 100644 --- a/subprojects/gst-plugins-bad/sys/msdk/meson.build +++ b/subprojects/gst-plugins-bad/sys/msdk/meson.build @@ -23,6 +23,72 @@ msdk_sources = [ 'msdk.c', ] +msdk_headers = [ + 'gstmsdkallocator.h', + 'gstmsdkcaps.h', + 'gstmsdkcontext.h', + 'gstmsdkav1dec.h', + 'gstmsdkvp8dec.h', + 'msdk_libva.h', + 'gstmsdkvp9enc.h', + 'gstmsdkh264enc.h', + 'gstmsdkav1enc.h', + 'gstmsdkvp9dec.h', + 'gstmsdkmjpegdec.h', + 'gstmsdkallocator_libva.h', + 'gstmsdkdec.h', + 'gstmsdkenc.h', + 'gstmsdkmpeg2dec.h', + 'gstmsdkh265enc.h', + 'gstmsdkvpputil.h', + 'msdk.h', + 'gstmsdkdecproputil.h', + 'gstmsdkh265dec.h', + 'gstmsdkcontextutil.h', + 'gstmsdkvc1dec.h', + 'gstmsdkmpeg2enc.h', + 'msdk-enums.h', + 'gstmsdkmjpegenc.h', + 'gstmsdkh264dec.h', + 'gstmsdkvpp.h', +] + +windows_sources = [ + 'msdk_d3d.c', + 'gstmsdkallocator_d3d.c', +] + +non_windows_sources = [ + 'msdk_libva.c', + 'gstmsdkallocator_libva.c', +] + +vp9dec_sources = [ + 'gstmsdkvp9dec.c', +] + +vp9enc_sources = [ + 'gstmsdkvp9enc.c', +] + +av1dec_sources = [ + 'gstmsdkav1dec.c', +] + +av1enc_sources = [ + 'gstmsdkav1enc.c', +] + +doc_sources = [] +foreach s: msdk_sources + windows_sources + non_windows_sources + vp9dec_sources + vp9enc_sources + av1dec_sources + av1enc_sources + msdk_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'msdk': pathsep.join(doc_sources) +} +have_msdk = true + have_msdk = false msdk_dep = [] use_msdk = false @@ -42,7 +108,7 @@ if msdk_option.disabled() endif if host_machine.system() == 'windows' - msdk_sources += ['msdk_d3d.c', 'gstmsdkallocator_d3d.c' ] + msdk_sources += windows_sources if gstd3d11_dep.found() extra_args += ['-DCOBJMACROS'] else @@ -59,7 +125,7 @@ else endif subdir_done() endif - msdk_sources += ['msdk_libva.c', 'gstmsdkallocator_libva.c'] + msdk_sources += non_windows_sources endif mfx_api = get_option('mfx_api') @@ -122,7 +188,7 @@ elif cxx.has_header('mfx/mfxdefs.h', args: '-I' + mfx_incdir) endif if use_onevpl or cxx.has_header('mfxvp9.h', args: '-I' + mfx_incdir) - msdk_sources += [ 'gstmsdkvp9dec.c' ] + msdk_sources += vp9dec_sources cdata.set('USE_MSDK_VP9_DEC', 1) endif @@ -142,7 +208,7 @@ have_mfx_ver126 = cc.compiles(mfx_ver126_check_code, include_directories : [configinc, mfx_inc]) if have_mfx_ver126 - msdk_sources += [ 'gstmsdkvp9enc.c' ] + msdk_sources += vp9enc_sources cdata.set('USE_MSDK_VP9_ENC', 1) endif @@ -157,7 +223,7 @@ have_mfx_ver134 = cc.compiles(mfx_ver134_check_code, include_directories : [configinc, mfx_inc]) if have_mfx_ver134 - msdk_sources += [ 'gstmsdkav1dec.c' ] + msdk_sources += av1dec_sources cdata.set('USE_MSDK_AV1_DEC', 1) endif @@ -172,7 +238,7 @@ have_mfx_ver205 = cc.compiles(mfx_ver205_check_code, include_directories: [configinc, mfx_inc]) if use_onevpl and have_mfx_ver205 - msdk_sources += [ 'gstmsdkav1enc.c' ] + msdk_sources += av1enc_sources cdata.set10('USE_MSDK_AV1_ENC', 1) endif @@ -208,5 +274,4 @@ if msdk_deps_found install_dir : plugins_install_dir, ) plugins += [gstmsdktag] - have_msdk = true endif diff --git a/subprojects/gst-plugins-bad/sys/nvcodec/meson.build b/subprojects/gst-plugins-bad/sys/nvcodec/meson.build index 69bbc2b1bb..fd8c59678e 100644 --- a/subprojects/gst-plugins-bad/sys/nvcodec/meson.build +++ b/subprojects/gst-plugins-bad/sys/nvcodec/meson.build @@ -12,6 +12,11 @@ nvcodec_sources = [ 'plugin.c' ] +# Only docstring-containing headers need listing here +nvcodec_headers = [ + 'gstcudaconverter.h' +] + nvcodec_dgpu_sources = [ 'gstcuvidloader.c', 'gstnvav1dec.cpp', @@ -45,6 +50,15 @@ nvcodec_d3d12_sources = [ 'gstcudainterop_d3d12.cpp', ] +doc_sources = [] +foreach s: nvcodec_sources + nvcodec_dgpu_sources + nvcodec_win32_sources + nvcodec_unix_sources + nvcodec_d3d12_sources + nvcodec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'nvcodec': pathsep.join(doc_sources) +} + if get_option('nvcodec').disabled() subdir_done() endif @@ -118,4 +132,3 @@ gstnvcodec = library('gstnvcodec', install_dir : plugins_install_dir, ) plugins += [gstnvcodec] - diff --git a/subprojects/gst-plugins-bad/sys/opensles/meson.build b/subprojects/gst-plugins-bad/sys/opensles/meson.build index a4b2176e9f..3e6358b3b1 100644 --- a/subprojects/gst-plugins-bad/sys/opensles/meson.build +++ b/subprojects/gst-plugins-bad/sys/opensles/meson.build @@ -7,6 +7,23 @@ opensles_sources = [ 'openslesplugin.c', ] +opensles_headers = [ + 'openslessrc.h', + 'openslesringbuffer.h', + 'openslescommon.h', + 'opensles.h', + 'openslessink.h', +] + +doc_sources = [] +foreach s: opensles_sources + opensles_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'opensles': pathsep.join(doc_sources) +} + opensles_option = get_option('opensles') if opensles_option.disabled() subdir_done() diff --git a/subprojects/gst-plugins-bad/sys/qsv/meson.build b/subprojects/gst-plugins-bad/sys/qsv/meson.build index 5bd7e1683b..189fac078a 100644 --- a/subprojects/gst-plugins-bad/sys/qsv/meson.build +++ b/subprojects/gst-plugins-bad/sys/qsv/meson.build @@ -15,6 +15,24 @@ qsv_sources = [ 'plugin.cpp', ] +qsv_headers = [ + 'gstqsvallocator_d3d11.h', + 'gstqsvallocator.h', + 'gstqsvallocator_va.h', + 'gstqsvav1enc.h', + 'gstqsvdecoder.h', + 'gstqsvencoder.h', + 'gstqsvh264dec.h', + 'gstqsvh264enc.h', + 'gstqsvh265dec.h', + 'gstqsvh265enc.h', + 'gstqsvjpegdec.h', + 'gstqsvjpegenc.h', + 'gstqsvutils.h', + 'gstqsvvp9dec.h', + 'gstqsvvp9enc.h', +] + qsv_d3d11_sources = [ 'gstqsvallocator_d3d11.cpp', ] @@ -23,6 +41,15 @@ qsv_va_sources = [ 'gstqsvallocator_va.cpp', ] +doc_sources = [] +foreach s: qsv_sources + qsv_d3d11_sources + qsv_va_sources + qsv_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'qsv': pathsep.join(doc_sources) +} + extra_args = [ '-DGST_USE_UNSTABLE_API', ] diff --git a/subprojects/gst-plugins-bad/sys/shm/meson.build b/subprojects/gst-plugins-bad/sys/shm/meson.build index c40136b13f..78d988d01f 100644 --- a/subprojects/gst-plugins-bad/sys/shm/meson.build +++ b/subprojects/gst-plugins-bad/sys/shm/meson.build @@ -6,6 +6,22 @@ shm_sources = [ 'gstshmsink.c', ] +shm_headers = [ + 'gstshmsink.h', + 'shmpipe.h', + 'gstshmsrc.h', + 'shmalloc.h', +] + +doc_sources = [] +foreach s: shm_sources + shm_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'shm': pathsep.join(doc_sources) +} + shm_deps = [] shm_enabled = false if get_option('shm').disabled() diff --git a/subprojects/gst-plugins-bad/sys/tinyalsa/meson.build b/subprojects/gst-plugins-bad/sys/tinyalsa/meson.build index 0a4ffb9ec1..fbd87f7018 100644 --- a/subprojects/gst-plugins-bad/sys/tinyalsa/meson.build +++ b/subprojects/gst-plugins-bad/sys/tinyalsa/meson.build @@ -1,3 +1,22 @@ +tinyalsa_sources = [ + 'tinyalsa.c', + 'tinyalsasink.c', +] + +tinyalsa_headers = [ + 'tinyalsasink.h', +] + +doc_sources = [] +foreach s: tinyalsa_sources + tinyalsa_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'tinyalsa': pathsep.join(doc_sources) +} + + if get_option('tinyalsa').disabled() subdir_done() endif @@ -9,7 +28,7 @@ have_tinyalsa = tinyalsa_dep.found() if have_tinyalsa gsttinyalsa = library('gsttinyalsa', - 'tinyalsa.c', 'tinyalsasink.c', + tinyalsa_sources, c_args: gst_plugins_bad_args, include_directories: [configinc], dependencies : [gstbase_dep, gstaudio_dep, tinyalsa_dep], diff --git a/subprojects/gst-plugins-bad/sys/uvcgadget/meson.build b/subprojects/gst-plugins-bad/sys/uvcgadget/meson.build index 0d3cbf4e81..753fafc388 100644 --- a/subprojects/gst-plugins-bad/sys/uvcgadget/meson.build +++ b/subprojects/gst-plugins-bad/sys/uvcgadget/meson.build @@ -4,6 +4,20 @@ uvcgadget_sources = [ 'uvc.c' ] +uvcgadget_headers = [ + 'configfs.h', + 'gstuvcsink.h', +] + +doc_sources = [] +foreach s: uvcgadget_sources + uvcgadget_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'uvcgadget': pathsep.join(doc_sources) +} + libgudev_dep = dependency('gudev-1.0', required: get_option('uvcgadget')) if get_option('uvcgadget').disabled() diff --git a/subprojects/gst-plugins-bad/sys/uvch264/meson.build b/subprojects/gst-plugins-bad/sys/uvch264/meson.build index 69d4bb1f30..06a58e99a9 100644 --- a/subprojects/gst-plugins-bad/sys/uvch264/meson.build +++ b/subprojects/gst-plugins-bad/sys/uvch264/meson.build @@ -6,6 +6,22 @@ uvch264_sources = [ 'uvc_h264.c', ] +uvch264_headers = [ + 'uvc_h264.h', + 'gstuvch264_src.h', + 'gstuvch264_mjpgdemux.h', + 'gstuvch264deviceprovider.h', +] + +doc_sources = [] +foreach s: uvch264_sources + uvch264_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'uvch264': pathsep.join(doc_sources) +} + libgudev_dep = dependency('gudev-1.0', required : get_option('uvch264'), allow_fallback: true) libusb_dep = dependency('libusb-1.0', required : get_option('uvch264')) has_uvcvideo_h = cc.has_header('linux/uvcvideo.h') diff --git a/subprojects/gst-plugins-bad/sys/v4l2codecs/meson.build b/subprojects/gst-plugins-bad/sys/v4l2codecs/meson.build index ffdc572637..cf655798b6 100644 --- a/subprojects/gst-plugins-bad/sys/v4l2codecs/meson.build +++ b/subprojects/gst-plugins-bad/sys/v4l2codecs/meson.build @@ -14,6 +14,30 @@ v4l2codecs_sources = [ 'gstv4l2codecalphadecodebin.c', ] +v4l2codecs_headers = [ + 'gstv4l2format.h', + 'gstv4l2decoder.h', + 'gstv4l2codecvp9dec.h', + 'gstv4l2codecvp8dec.h', + 'gstv4l2codech265dec.h', + 'gstv4l2codech264dec.h', + 'gstv4l2codecalphadecodebin.h', + 'gstv4l2codecallocator.h', + 'gstv4l2codecav1dec.h', + 'gstv4l2codecmpeg2dec.h', + 'gstv4l2codecdevice.h', + 'gstv4l2codecpool.h', +] + +doc_sources = [] +foreach s: v4l2codecs_sources + v4l2codecs_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'v4l2codecs': pathsep.join(doc_sources) +} + libgudev_dep = dependency('gudev-1.0', required: get_option('v4l2codecs'), allow_fallback: true) if get_option('v4l2codecs').disabled() diff --git a/subprojects/gst-plugins-bad/sys/va/meson.build b/subprojects/gst-plugins-bad/sys/va/meson.build index 86c61cd4a0..62e2aa5060 100644 --- a/subprojects/gst-plugins-bad/sys/va/meson.build +++ b/subprojects/gst-plugins-bad/sys/va/meson.build @@ -29,6 +29,39 @@ va_sources = [ 'gstvavpp.c', ] +va_headers = [ + 'gstjpegdecoder.h', + 'gstvaav1dec.h', + 'gstvaav1enc.h', + 'gstvabasedec.h', + 'gstvabaseenc.h', + 'gstvabase.h', + 'gstvabasetransform.h', + 'gstvacaps.h', + 'gstvacompositor.h', + 'gstvadecoder.h', + 'gstvadeinterlace.h', + 'gstvadevice.h', + 'gstvadisplay_priv.h', + 'gstvaencoder.h', + 'gstvafilter.h', + 'gstvah264dec.h', + 'gstvah264enc.h', + 'gstvah265dec.h', + 'gstvah265enc.h', + 'gstvajpegdec.h', + 'gstvajpegenc.h', + 'gstvampeg2dec.h', + 'gstvapluginutils.h', + 'gstvaprofile.h', + 'gstvavp8dec.h', + 'gstvavp8enc.h', + 'gstvavp9dec.h', + 'gstvavp9enc.h', + 'gstvavpp.h', + 'vacompat.h', +] + va_linux_sources = [ 'gstvadevice_linux.c' ] @@ -37,6 +70,19 @@ va_win32_sources = [ 'gstvadevice_win32.cpp' ] +va_av1enc_sources = [ + 'gstvaav1enc.c' +] + +doc_sources = [] +foreach s: va_sources + va_linux_sources + va_win32_sources + va_av1enc_sources + va_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'va': pathsep.join(doc_sources) +} + if host_system not in ['linux', 'windows'] subdir_done() endif @@ -75,7 +121,7 @@ if cc.get_id() == 'msvc' endif if libva_dep.version().version_compare('>= 1.15') - va_sources += 'gstvaav1enc.c' + va_sources += va_av1enc_sources endif gstva = library('gstva', diff --git a/subprojects/gst-plugins-bad/sys/wasapi/meson.build b/subprojects/gst-plugins-bad/sys/wasapi/meson.build index aba3ec56ce..335fefbab3 100644 --- a/subprojects/gst-plugins-bad/sys/wasapi/meson.build +++ b/subprojects/gst-plugins-bad/sys/wasapi/meson.build @@ -7,6 +7,24 @@ wasapi_sources = [ 'gstwasapidevice.c', ] +wasapi_headers = [ + 'gstwasapisink.h', + 'gstwasapisrc.h', + 'gstmmdeviceenumerator.h', + 'gstwasapidevice.h', + 'gstwasapiutil.h', + 'gstaudioclient3.h', +] + +doc_sources = [] +foreach s: wasapi_sources + wasapi_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wasapi': pathsep.join(doc_sources) +} + if host_system != 'windows' if get_option('wasapi').disabled() subdir_done() diff --git a/subprojects/gst-plugins-bad/sys/wasapi2/meson.build b/subprojects/gst-plugins-bad/sys/wasapi2/meson.build index 59425e623f..52b8b7d72f 100644 --- a/subprojects/gst-plugins-bad/sys/wasapi2/meson.build +++ b/subprojects/gst-plugins-bad/sys/wasapi2/meson.build @@ -8,12 +8,31 @@ wasapi2_sources = [ 'plugin.c', ] +wasapi2_headers = [ + 'gstwasapi2ringbuffer.h', + 'gstwasapi2device.h', + 'gstwasapi2util.h', + 'gstwasapi2src.h', + 'gstwasapi2sink.h', + 'gstwasapi2client.h', + 'AsyncOperations.h', +] + mmdeviceapi_symbols = [ 'ActivateAudioInterfaceAsync', 'DEVINTERFACE_AUDIO_RENDER', 'DEVINTERFACE_AUDIO_CAPTURE', ] +doc_sources = [] +foreach s: wasapi2_sources + wasapi2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wasapi2': pathsep.join(doc_sources) +} + wasapi2_option = get_option('wasapi2') if host_system != 'windows' if wasapi2_option.disabled() diff --git a/subprojects/gst-plugins-bad/sys/webview2/meson.build b/subprojects/gst-plugins-bad/sys/webview2/meson.build index d4b4e1283e..781ef11959 100644 --- a/subprojects/gst-plugins-bad/sys/webview2/meson.build +++ b/subprojects/gst-plugins-bad/sys/webview2/meson.build @@ -4,6 +4,20 @@ webview2_sources = [ 'plugin.cpp', ] +webview2_headers = [ + 'gstwebview2object.h', + 'gstwebview2src.h', +] + +doc_sources = [] +foreach s: webview2_sources + webview2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'webview2': pathsep.join(doc_sources) +} + extra_args = ['-DGST_USE_UNSTABLE_API'] webview2_option = get_option('webview2') diff --git a/subprojects/gst-plugins-bad/sys/wic/meson.build b/subprojects/gst-plugins-bad/sys/wic/meson.build index bbd9ad01dc..f9e16c8815 100644 --- a/subprojects/gst-plugins-bad/sys/wic/meson.build +++ b/subprojects/gst-plugins-bad/sys/wic/meson.build @@ -7,6 +7,23 @@ wic_sources = [ 'plugin.cpp', ] +wic_headers = [ + 'gstwicimagingfactory.h', + 'gstwicdecoder.h', + 'gstwicpngdec.h', + 'gstwicjpegdec.h', + 'gstwicutils.h', +] + +doc_sources = [] +foreach s: wic_sources + wic_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wic': pathsep.join(doc_sources) +} + extra_args = [] wic_deps = [] diff --git a/subprojects/gst-plugins-bad/sys/win32ipc/meson.build b/subprojects/gst-plugins-bad/sys/win32ipc/meson.build index f2335a53b7..9a18c88084 100644 --- a/subprojects/gst-plugins-bad/sys/win32ipc/meson.build +++ b/subprojects/gst-plugins-bad/sys/win32ipc/meson.build @@ -12,6 +12,23 @@ win32ipc_sources = [ 'plugin.cpp', ] +win32ipc_headers = [ + 'gstwin32ipcvideosink.h', + 'gstwin32ipcmemory.h', + 'gstwin32ipcvideosrc.h', + 'gstwin32ipcbufferpool.h', + 'gstwin32ipcutils.h', +] + +doc_sources = [] +foreach s: win32ipc_sources + win32ipc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'win32ipc': pathsep.join(doc_sources) +} + if host_system != 'windows' or get_option('win32ipc').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/sys/winks/meson.build b/subprojects/gst-plugins-bad/sys/winks/meson.build index 2f4c29f417..85fa3b6704 100644 --- a/subprojects/gst-plugins-bad/sys/winks/meson.build +++ b/subprojects/gst-plugins-bad/sys/winks/meson.build @@ -7,6 +7,24 @@ winks_sources = [ 'ksvideohelpers.c', ] +winks_headers = [ + 'gstksvideodevice.h', + 'ksvideohelpers.h', + 'ksdeviceprovider.h', + 'kshelpers.h', + 'gstksvideosrc.h', + 'gstksclock.h', +] + +doc_sources = [] +foreach s: winks_sources + winks_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'winks': pathsep.join(doc_sources) +} + winks_option = get_option('winks') if host_system == 'windows' and not winks_option.disabled() # FIXME: Add a way to skip this library when these deps are not found. Not diff --git a/subprojects/gst-plugins-bad/sys/winscreencap/meson.build b/subprojects/gst-plugins-bad/sys/winscreencap/meson.build index de12849f37..5ae1c7a99a 100644 --- a/subprojects/gst-plugins-bad/sys/winscreencap/meson.build +++ b/subprojects/gst-plugins-bad/sys/winscreencap/meson.build @@ -4,6 +4,21 @@ winscreencap_sources = [ 'gstwinscreencap.c', ] +winscreencap_headers = [ + 'gstwinscreencap.h', + 'gstgdiscreencapsrc.h', + 'gstdx9screencapsrc.h', +] + +doc_sources = [] +foreach s: winscreencap_sources + winscreencap_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'winscreencap': pathsep.join(doc_sources) +} + if host_system != 'windows' or get_option('winscreencap').disabled() subdir_done() endif diff --git a/subprojects/gst-plugins-bad/tools/gst-project-maker b/subprojects/gst-plugins-bad/tools/gst-project-maker index 7241ae30e7..f658c03622 100755 --- a/subprojects/gst-plugins-bad/tools/gst-project-maker +++ b/subprojects/gst-plugins-bad/tools/gst-project-maker @@ -164,14 +164,14 @@ cat >$basedir/plugins/meson.build <=0.9.1', required : get_option('alsa')) if alsa_dep.found() diff --git a/subprojects/gst-plugins-base/ext/cdparanoia/meson.build b/subprojects/gst-plugins-base/ext/cdparanoia/meson.build index efb018be99..57ebff3e99 100644 --- a/subprojects/gst-plugins-base/ext/cdparanoia/meson.build +++ b/subprojects/gst-plugins-base/ext/cdparanoia/meson.build @@ -1,3 +1,20 @@ +cdparanoia_sources = [ + 'gstcdparanoiasrc.c', +] + +cdparanoia_headers = [ + 'gstcdparanoiasrc.h', +] + +doc_sources = [] +foreach s: cdparanoia_sources + cdparanoia_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'cdparanoia': pathsep.join(doc_sources) +} + cdparanoia_deps = [] cdparanoia_found = false cdparanoia_option = get_option('cdparanoia') @@ -40,7 +57,7 @@ if cdparanoia_found ]) gstcdparanoia = library('gstcdparanoia', - ['gstcdparanoiasrc.c'], + cdparanoia_sources, include_directories: [configinc, libsinc], c_args : gst_plugins_base_args + extra_args, dependencies : cdparanoia_deps + [audio_dep, gst_dep, gst_base_dep], diff --git a/subprojects/gst-plugins-base/ext/gl/meson.build b/subprojects/gst-plugins-base/ext/gl/meson.build index e38ad88db4..3450f9bafc 100644 --- a/subprojects/gst-plugins-base/ext/gl/meson.build +++ b/subprojects/gst-plugins-base/ext/gl/meson.build @@ -46,6 +46,53 @@ opengl_sources = [ 'gstglutils.c' ] +opengl_headers = [ + 'caopengllayersink.h', + 'gstgloverlaycompositorelement.h', + 'gstglcolorbalance.h', + 'gstglmixerbin.h', + 'gstglstereosplit.h', + 'gstglstereomix.h', + 'gstgldeinterlace.h', + 'gstglbumper.h', + 'gstglfiltershader.h', + 'gstgltestsrc.h', + 'gstglmosaic.h', + 'gstgldifferencematte.h', + 'gstgltransformation.h', + 'gstglalpha.h', + 'gstgloverlay.h', + 'gstglvideomixer.h', + 'gstglcolorscale.h', + 'gstglelements.h', + 'gstglutils.h', + 'gstglfiltercube.h', + 'gstglfilterglass.h', + 'gstgluploadelement.h', + 'gstglimagesink.h', + 'gstglcolorconvertelement.h', + 'gltestsrc.h', + 'gstgleffects.h', + 'gstglfilterapp.h', + 'gstgldmabufbufferpool.h', + 'gstgldownloadelement.h', + 'gstglfilterreflectedscreen.h', + 'gstglviewconvert.h', + 'gstglfilterbin.h', + 'gstglsinkbin.h', + 'gstglsrcbin.h', + 'gstglvideoflip.h', +] + +doc_sources = [] +foreach s: opengl_sources + opengl_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'opengl': pathsep.join(doc_sources) +} + if get_option('gl').disabled() or not gstgl_dep.found() subdir_done() endif diff --git a/subprojects/gst-plugins-base/ext/libvisual/meson.build b/subprojects/gst-plugins-base/ext/libvisual/meson.build index fc2b5929d6..b22c6f005a 100644 --- a/subprojects/gst-plugins-base/ext/libvisual/meson.build +++ b/subprojects/gst-plugins-base/ext/libvisual/meson.build @@ -3,6 +3,19 @@ libvisual_sources = [ 'plugin.c', ] +libvisual_headers = [ + 'visual.h', +] + +doc_sources = [] +foreach s: libvisual_sources + libvisual_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'libvisual': pathsep.join(doc_sources) +} + libvisual_dep = dependency('libvisual-0.4', version : '>= 0.4.0', required : get_option('libvisual')) if libvisual_dep.found() diff --git a/subprojects/gst-plugins-base/ext/ogg/meson.build b/subprojects/gst-plugins-base/ext/ogg/meson.build index 70fff43666..0512f458d6 100644 --- a/subprojects/gst-plugins-base/ext/ogg/meson.build +++ b/subprojects/gst-plugins-base/ext/ogg/meson.build @@ -10,6 +10,24 @@ ogg_sources = [ 'vorbis_parse.c', ] +ogg_headers = [ + 'gstoggmux.h', + 'vorbis_parse.h', + 'gstoggelements.h', + 'gstoggstream.h', + 'dirac_parse.h', + 'gstoggdemux.h', +] + +doc_sources = [] +foreach s: ogg_sources + ogg_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ogg': pathsep.join(doc_sources) +} + ogg_dep = dependency('ogg', allow_fallback: true, version : '>=1.0', required : get_option('ogg')) core_conf.set('HAVE_OGG', ogg_dep.found()) diff --git a/subprojects/gst-plugins-base/ext/opus/meson.build b/subprojects/gst-plugins-base/ext/opus/meson.build index b065d6a656..5de0e1c7ce 100644 --- a/subprojects/gst-plugins-base/ext/opus/meson.build +++ b/subprojects/gst-plugins-base/ext/opus/meson.build @@ -7,6 +7,23 @@ opus_sources = [ 'gstopusheader.c', ] +opus_headers = [ + 'gstopusenc.h', + 'gstopusheader.h', + 'gstopuselements.h', + 'gstopuscommon.h', + 'gstopusdec.h', +] + +doc_sources = [] +foreach s: opus_sources + opus_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'opus': pathsep.join(doc_sources) +} + opus_dep = dependency('opus', version: '>= 0.9.4', required: get_option('opus'), fallback: ['opus', 'opus_dep'], default_options: ['docs=disabled']) diff --git a/subprojects/gst-plugins-base/ext/pango/meson.build b/subprojects/gst-plugins-base/ext/pango/meson.build index b12e262f80..655b20110d 100644 --- a/subprojects/gst-plugins-base/ext/pango/meson.build +++ b/subprojects/gst-plugins-base/ext/pango/meson.build @@ -8,6 +8,24 @@ pango_sources = [ 'gsttimeoverlay.c', ] +pango_headers = [ + 'gsttextrender.h', + 'gsttimeoverlay.h', + 'gsttextoverlay.h', + 'gstbasetextoverlay.h', + 'gstpangoelements.h', + 'gstclockoverlay.h', +] + +doc_sources = [] +foreach s: pango_sources + pango_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'pango': pathsep.join(doc_sources) +} + pango_dep = dependency('pangocairo', version : '>=1.22.0', required : get_option('pango'), fallback: ['pango', 'libpangocairo_dep'], default_options: ['cairo=enabled']) diff --git a/subprojects/gst-plugins-base/ext/theora/meson.build b/subprojects/gst-plugins-base/ext/theora/meson.build index 645e52bf26..c8e8ccd023 100644 --- a/subprojects/gst-plugins-base/ext/theora/meson.build +++ b/subprojects/gst-plugins-base/ext/theora/meson.build @@ -3,6 +3,21 @@ theora_sources = [ 'gsttheoraparse.c', ] +theora_headers = [ + 'gsttheoraenc.h', + 'gsttheoraparse.h', + 'gsttheoradec.h', +] + +doc_sources = [] +foreach s: theora_sources + theora_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'theora': pathsep.join(doc_sources) +} + theoradec_dep = dependency('theoradec', version : '>=1.1', required : get_option('theora')) theoraenc_dep = dependency('theoraenc', version : '>=1.1', required : get_option('theora')) theora_deps = [] diff --git a/subprojects/gst-plugins-base/ext/vorbis/meson.build b/subprojects/gst-plugins-base/ext/vorbis/meson.build index 1aff8a9bb4..332441005d 100644 --- a/subprojects/gst-plugins-base/ext/vorbis/meson.build +++ b/subprojects/gst-plugins-base/ext/vorbis/meson.build @@ -9,6 +9,16 @@ vorbis_sources = [ 'gstvorbiscommon.c', ] +vorbis_headers = [ + 'gstvorbiscommon.h', + 'gstvorbisdec.h', + 'gstvorbisdeclib.h', + 'gstvorbiselements.h', + 'gstvorbisenc.h', + 'gstvorbisparse.h', + 'gstvorbistag.h', +] + vorbisidec_sources = [ 'gstivorbisdec.c', 'gstvorbiselement.c', @@ -17,6 +27,31 @@ vorbisidec_sources = [ 'gstvorbiscommon.c', ] +vorbisidec_headers = [ + 'gstvorbiscommon.h', + 'gstvorbisdec.h', + 'gstvorbisdeclib.h', + 'gstvorbiselements.h', +] + +doc_sources = [] +foreach s: vorbis_sources + vorbis_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'vorbis': pathsep.join(doc_sources) +} + +doc_sources = [] +foreach s: vorbisidec_sources + vorbisidec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ivorbisdec': pathsep.join(doc_sources) +} + vorbis_dep = dependency('vorbis', version : '>= 1.3.1', allow_fallback: true, required : get_option('vorbis')) vorbisenc_dep = dependency('vorbisenc', version : '>= 1.3.1', allow_fallback: true, required : get_option('vorbis')) vorbisidec_dep = dependency('vorbisidec', allow_fallback: true, required : get_option('tremor')) diff --git a/subprojects/gst-plugins-base/gst/adder/meson.build b/subprojects/gst-plugins-base/gst/adder/meson.build index c1979f4701..3fc9a79ae1 100644 --- a/subprojects/gst-plugins-base/gst/adder/meson.build +++ b/subprojects/gst-plugins-base/gst/adder/meson.build @@ -1,3 +1,24 @@ +adder_sources = [ + 'gstadder.c', +] + +adder_headers = [ + 'gstadder.h', +] + +doc_sources = [] +foreach s: adder_sources + adder_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'adder': pathsep.join(doc_sources) +} + +if get_option('adder').disabled() + subdir_done() +endif + adder_deps = [audio_dep] orcsrc = 'gstadderorc' if have_orcc @@ -21,7 +42,7 @@ else endif adder = library('gstadder', - 'gstadder.c', orc_c, orc_h, + adder_sources + [orc_c, orc_h], c_args: gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : adder_deps, diff --git a/subprojects/gst-plugins-base/gst/app/meson.build b/subprojects/gst-plugins-base/gst/app/meson.build index 9df43779f6..f515e3ca2a 100644 --- a/subprojects/gst-plugins-base/gst/app/meson.build +++ b/subprojects/gst-plugins-base/gst/app/meson.build @@ -4,6 +4,23 @@ app_sources = [ 'gstappsrc.c', ] +app_headers = [ + 'gstappelements.h', +] + +doc_sources = [] +foreach s: app_sources + app_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'app': pathsep.join(doc_sources) +} + +if get_option('app').disabled() + subdir_done() +endif + gstapp_plugin = library('gstapp', app_sources, c_args: gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/audioconvert/meson.build b/subprojects/gst-plugins-base/gst/audioconvert/meson.build index 4c02b24fdd..ebfaa91af2 100644 --- a/subprojects/gst-plugins-base/gst/audioconvert/meson.build +++ b/subprojects/gst-plugins-base/gst/audioconvert/meson.build @@ -3,6 +3,23 @@ aconv_sources = [ 'plugin.c' ] +aconv_headers = [ + 'gstaudioconvert.h', +] + +doc_sources = [] +foreach s: aconv_sources + aconv_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audioconvert': pathsep.join(doc_sources) +} + +if get_option('audioconvert').disabled() + subdir_done() +endif + gstaudioconvert = library('gstaudioconvert', aconv_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/audiomixer/meson.build b/subprojects/gst-plugins-base/gst/audiomixer/meson.build index 488b0a9e2c..542a059649 100644 --- a/subprojects/gst-plugins-base/gst/audiomixer/meson.build +++ b/subprojects/gst-plugins-base/gst/audiomixer/meson.build @@ -6,6 +6,25 @@ audiomixer_sources = [ 'gstaudiomixerplugin.c' ] +audiomixer_headers = [ + 'gstaudiomixer.h', + 'gstaudiomixerelements.h', + 'gstaudiointerleave.h', +] + +doc_sources = [] +foreach s: audiomixer_sources + audiomixer_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiomixer': pathsep.join(doc_sources) +} + +if get_option('audiomixer').disabled() + subdir_done() +endif + orcsrc = 'gstaudiomixerorc' if have_orcc orc_h = custom_target(orcsrc + '.h', @@ -27,7 +46,7 @@ else endif gstaudiomixer = library('gstaudiomixer', - audiomixer_sources, orc_c, orc_h, + audiomixer_sources + [orc_c, orc_h], c_args : gst_plugins_base_args, include_directories : [configinc], dependencies : [audio_dep, gst_base_dep, orc_dep], diff --git a/subprojects/gst-plugins-base/gst/audiorate/meson.build b/subprojects/gst-plugins-base/gst/audiorate/meson.build index d260e30c83..60e5e3b931 100644 --- a/subprojects/gst-plugins-base/gst/audiorate/meson.build +++ b/subprojects/gst-plugins-base/gst/audiorate/meson.build @@ -1,5 +1,26 @@ -audiorate = library('gstaudiorate', +audiorate_sources = [ 'gstaudiorate.c', +] + +audiorate_headers = [ + 'gstaudiorate.h', +] + +doc_sources = [] +foreach s: audiorate_sources + audiorate_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiorate': pathsep.join(doc_sources) +} + +if get_option('audiorate').disabled() + subdir_done() +endif + +audiorate = library('gstaudiorate', + audiorate_sources, c_args : gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : [audio_dep, gst_base_dep], diff --git a/subprojects/gst-plugins-base/gst/audioresample/meson.build b/subprojects/gst-plugins-base/gst/audioresample/meson.build index b7f5770178..d1379e2473 100644 --- a/subprojects/gst-plugins-base/gst/audioresample/meson.build +++ b/subprojects/gst-plugins-base/gst/audioresample/meson.build @@ -1,5 +1,22 @@ resample_sources = ['gstaudioresample.c'] +resample_headers = [ + 'gstaudioresample.h', +] + +doc_sources = [] +foreach s: resample_sources + resample_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audioresample': pathsep.join(doc_sources) +} + +if get_option('audioresample').disabled() + subdir_done() +endif + audioresample = library('gstaudioresample', resample_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/audiotestsrc/meson.build b/subprojects/gst-plugins-base/gst/audiotestsrc/meson.build index 3157060d6c..9b69c009ad 100644 --- a/subprojects/gst-plugins-base/gst/audiotestsrc/meson.build +++ b/subprojects/gst-plugins-base/gst/audiotestsrc/meson.build @@ -1,5 +1,26 @@ +audiotest_sources = [ + 'gstaudiotestsrc.c' +] + +audiotest_headers = [ + 'gstaudiotestsrc.h', +] + +doc_sources = [] +foreach s: audiotest_sources + audiotest_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiotestsrc': pathsep.join(doc_sources) +} + +if get_option('audiotestsrc').disabled() + subdir_done() +endif + audiotest = library('gstaudiotestsrc', - 'gstaudiotestsrc.c', gstaudio_h, + audiotest_sources + [gstaudio_h], c_args: gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : [audio_dep, gst_base_dep, libm], diff --git a/subprojects/gst-plugins-base/gst/compositor/meson.build b/subprojects/gst-plugins-base/gst/compositor/meson.build index d2541542f0..e6a5638049 100644 --- a/subprojects/gst-plugins-base/gst/compositor/meson.build +++ b/subprojects/gst-plugins-base/gst/compositor/meson.build @@ -3,6 +3,25 @@ compositor_sources = [ 'compositor.c', ] +compositor_headers = [ + 'blendorc.h', + 'compositor.h', + 'blend.h', +] + +doc_sources = [] +foreach s: compositor_sources + compositor_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'compositor': pathsep.join(doc_sources) +} + +if get_option('compositor').disabled() + subdir_done() +endif + orcsrc = 'compositororc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-base/gst/debugutils/meson.build b/subprojects/gst-plugins-base/gst/debugutils/meson.build index 48d04bf360..1980132d0b 100644 --- a/subprojects/gst-plugins-base/gst/debugutils/meson.build +++ b/subprojects/gst-plugins-base/gst/debugutils/meson.build @@ -1,6 +1,28 @@ -gstdebug = library('gstbasedebug', +gstdebug_sources = [ 'gstdebug.c', 'gstfakevideodec.c', +] + +gstdebug_headers = [ + 'gst/debugutils/gstdebugutilselements.h', + 'gst/debugutils/gstfakevideodec.h', +] + +doc_sources = [] +foreach s: gstdebug_sources + gstdebug_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'basedebug': pathsep.join(doc_sources) +} + +if get_option('debugutils').disabled() + subdir_done() +endif + +gstdebug = library('gstbasedebug', + gstdebug_sources, c_args: gst_plugins_base_args, include_directories : [configinc], dependencies : [gst_dep, gst_base_dep, video_dep], @@ -8,4 +30,3 @@ gstdebug = library('gstbasedebug', install_dir : plugins_install_dir, ) plugins += [gstdebug] - diff --git a/subprojects/gst-plugins-base/gst/dsd/meson.build b/subprojects/gst-plugins-base/gst/dsd/meson.build index ef1db3cf67..8350d704fb 100644 --- a/subprojects/gst-plugins-base/gst/dsd/meson.build +++ b/subprojects/gst-plugins-base/gst/dsd/meson.build @@ -3,6 +3,23 @@ dsd_sources = [ 'plugin.c' ] +dsd_headers = [ + 'gstdsdconvert.h', +] + +doc_sources = [] +foreach s: dsd_sources + dsd_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dsd': pathsep.join(doc_sources) +} + +if get_option('dsd').disabled() + subdir_done() +endif + gstdsd = library('gstdsd', dsd_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/encoding/meson.build b/subprojects/gst-plugins-base/gst/encoding/meson.build index 41455f5205..4b60f96632 100644 --- a/subprojects/gst-plugins-base/gst/encoding/meson.build +++ b/subprojects/gst-plugins-base/gst/encoding/meson.build @@ -9,6 +9,30 @@ encoding_sources = [ 'gstencodingelements.c', ] +encoding_headers = [ + 'gstsmartencoder.h', + 'gststreamsplitter.h', + 'gstencodebasebin.h', + 'gststreamcombinerpad.h', + 'gstencodebin2.h', + 'gstencodebin.h', + 'gstencodingelements.h', + 'gststreamcombiner.h', +] + +doc_sources = [] +foreach s: encoding_sources + encoding_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'encoding': pathsep.join(doc_sources) +} + +if get_option('encoding').disabled() + subdir_done() +endif + gstencoding = library('gstencoding', encoding_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/gio/meson.build b/subprojects/gst-plugins-base/gst/gio/meson.build index 4b8abfb906..7e5d5cf1d5 100644 --- a/subprojects/gst-plugins-base/gst/gio/meson.build +++ b/subprojects/gst-plugins-base/gst/gio/meson.build @@ -8,6 +8,29 @@ gio_sources = ['gstgio.c', 'gstgiostreamsrc.c', ] +gio_headers = [ + 'gstgiosink.h', + 'gstgiobasesink.h', + 'gstgiosrc.h', + 'gstgiobasesrc.h', + 'gstgiostreamsrc.h', + 'gstgiostreamsink.h', + 'gstgioelements.h', +] + +doc_sources = [] +foreach s: gio_sources + gio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gio': pathsep.join(doc_sources) +} + +if get_option('gio').disabled() + subdir_done() +endif + gstgio = library('gstgio', gio_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/meson.build b/subprojects/gst-plugins-base/gst/meson.build index 185cc493d2..5eec6014a1 100644 --- a/subprojects/gst-plugins-base/gst/meson.build +++ b/subprojects/gst-plugins-base/gst/meson.build @@ -2,7 +2,5 @@ foreach plugin : ['adder', 'app', 'audioconvert', 'audiomixer', 'audiorate', 'au 'audiotestsrc', 'compositor', 'dsd', 'debugutils', 'encoding', 'gio', 'overlaycomposition', 'pbtypes', 'playback', 'rawparse', 'subparse', 'tcp', 'typefind', 'videoconvertscale', 'videorate', 'videotestsrc', 'volume'] - if not get_option(plugin).disabled() - subdir(plugin) - endif + subdir(plugin) endforeach diff --git a/subprojects/gst-plugins-base/gst/overlaycomposition/meson.build b/subprojects/gst-plugins-base/gst/overlaycomposition/meson.build index c8061ec417..8f8ca5a3af 100644 --- a/subprojects/gst-plugins-base/gst/overlaycomposition/meson.build +++ b/subprojects/gst-plugins-base/gst/overlaycomposition/meson.build @@ -1,3 +1,24 @@ +overlaycomposition_sources = [ + 'gstoverlaycomposition.c', +] + +overlaycomposition_headers = [ + 'gstoverlaycomposition.h', +] + +doc_sources = [] +foreach s: overlaycomposition_sources + overlaycomposition_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'overlaycomposition': pathsep.join(doc_sources) +} + +if get_option('overlaycomposition').disabled() + subdir_done() +endif + gstoverlaycomposition = library('gstoverlaycomposition', 'gstoverlaycomposition.c', c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/pbtypes/meson.build b/subprojects/gst-plugins-base/gst/pbtypes/meson.build index 5c177397c8..a8809058bd 100644 --- a/subprojects/gst-plugins-base/gst/pbtypes/meson.build +++ b/subprojects/gst-plugins-base/gst/pbtypes/meson.build @@ -1,6 +1,23 @@ gstpbtypes_sources = [ 'gstpbtypes.c' - ] +] + +gstpbtypes_headers = [ + 'gstpbtypes.h', +] + +doc_sources = [] +foreach s: gstpbtypes_sources + gstpbtypes_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'pbtypes': pathsep.join(doc_sources) +} + +if get_option('pbtypes').disabled() + subdir_done() +endif gstpbtypes = library('gstpbtypes', gstpbtypes_sources, diff --git a/subprojects/gst-plugins-base/gst/playback/meson.build b/subprojects/gst-plugins-base/gst/playback/meson.build index 05358fa2a5..5915e694db 100644 --- a/subprojects/gst-plugins-base/gst/playback/meson.build +++ b/subprojects/gst-plugins-base/gst/playback/meson.build @@ -19,6 +19,32 @@ playback_sources = [ 'gststreamsynchronizer.c' ] +playback_headers = [ + 'gstplaysinkaudioconvert.h', + 'gstplaybackelements.h', + 'gstplaysinkvideoconvert.h', + 'gstplaysink.h', + 'gstrawcaps.h', + 'gstplaybackutils.h', + 'gstplay-enum.h', + 'gststreamsynchronizer.h', + 'gstplaysinkconvertbin.h', + 'gstsubtitleoverlay.h', +] + +doc_sources = [] +foreach s: playback_sources + playback_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'playback': pathsep.join(doc_sources) +} + +if get_option('playback').disabled() + subdir_done() +endif + gstplayback = library('gstplayback', playback_sources, c_args : gst_plugins_base_args + ['-DCOLORSPACE="videoconvert"'], diff --git a/subprojects/gst-plugins-base/gst/rawparse/meson.build b/subprojects/gst-plugins-base/gst/rawparse/meson.build index ca5aec0289..3d99f4c34a 100644 --- a/subprojects/gst-plugins-base/gst/rawparse/meson.build +++ b/subprojects/gst-plugins-base/gst/rawparse/meson.build @@ -7,6 +7,30 @@ raw_sources = [ 'plugin.c', ] +raw_headers = [ + 'gstrawaudioparse.h', + 'gstrawbaseparse.h', + 'gstrawvideoparse.h', + 'gstunalignedvideoparse.h', + 'gstunalignedaudioparse.h', + 'gstrawparseelements.h', + 'unalignedaudio.h', + 'unalignedvideo.h', +] + +doc_sources = [] +foreach s: raw_sources + raw_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rawparse': pathsep.join(doc_sources) +} + +if get_option('rawparse').disabled() + subdir_done() +endif + gstrawparse = library('gstrawparse', raw_sources, c_args : gst_plugins_base_args, @@ -16,4 +40,3 @@ gstrawparse = library('gstrawparse', install_dir : plugins_install_dir, ) plugins += [gstrawparse] - diff --git a/subprojects/gst-plugins-base/gst/subparse/meson.build b/subprojects/gst-plugins-base/gst/subparse/meson.build index 0cc151c68c..8bd9589ce8 100644 --- a/subprojects/gst-plugins-base/gst/subparse/meson.build +++ b/subprojects/gst-plugins-base/gst/subparse/meson.build @@ -9,6 +9,29 @@ subparse_sources = [ 'qttextparse.c', ] +subparse_headers = [ + 'qttextparse.h', + 'samiparse.h', + 'gstsubparseelements.h', + 'gstssaparse.h', + 'mpl2parse.h', + 'tmplayerparse.h', + 'gstsubparse.h', +] + +doc_sources = [] +foreach s: subparse_sources + subparse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'subparse': pathsep.join(doc_sources) +} + +if get_option('subparse').disabled() + subdir_done() +endif + gstsubparse = library('gstsubparse', subparse_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/tcp/meson.build b/subprojects/gst-plugins-base/gst/tcp/meson.build index 98b9686272..11dbdea3dd 100644 --- a/subprojects/gst-plugins-base/gst/tcp/meson.build +++ b/subprojects/gst-plugins-base/gst/tcp/meson.build @@ -11,10 +11,36 @@ tcp_sources = [ 'gsttcpplugin.c', ] +tcp_headers = [ + 'gstsocketsrc.h', + 'gstmultisocketsink.h', + 'gsttcpclientsink.h', + 'gstmultihandlesink.h', + 'gsttcpelements.h', + 'gsttcpserversink.h', + 'gsttcpclientsrc.h', + 'gstmultifdsink.h', + 'gsttcpsrcstats.h', + 'gsttcpserversrc.h', +] + if core_conf.has('HAVE_SYS_SOCKET_H') tcp_sources += 'gstmultifdsink.c' endif +doc_sources = [] +foreach s: tcp_sources + tcp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'tcp': pathsep.join(doc_sources) +} + +if get_option('tcp').disabled() + subdir_done() +endif + gsttcp = library('gsttcp', tcp_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/typefind/meson.build b/subprojects/gst-plugins-base/gst/typefind/meson.build index d62645aa5e..a3a8dbacfe 100644 --- a/subprojects/gst-plugins-base/gst/typefind/meson.build +++ b/subprojects/gst-plugins-base/gst/typefind/meson.build @@ -13,6 +13,24 @@ typefindfunctions_sources = [ 'gsttypefindfunctionsstartwith.c', ] +typefindfunctions_headers = [ + 'gsttypefindfunctionsdata.h', + 'gsttypefindfunctionsplugin.h', +] + +doc_sources = [] +foreach s: typefindfunctions_sources + typefindfunctions_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'typefindfunctions': pathsep.join(doc_sources) +} + +if get_option('typefind').disabled() + subdir_done() +endif + gsttypefind = library('gsttypefindfunctions', typefindfunctions_sources, c_args : gst_plugins_base_args + typefindfunctions_extra_defs, diff --git a/subprojects/gst-plugins-base/gst/videoconvertscale/meson.build b/subprojects/gst-plugins-base/gst/videoconvertscale/meson.build index 88adb87018..c2ef0f607c 100644 --- a/subprojects/gst-plugins-base/gst/videoconvertscale/meson.build +++ b/subprojects/gst-plugins-base/gst/videoconvertscale/meson.build @@ -5,6 +5,25 @@ videoconvertscale_sources = [ 'gstvideoscale.c', ] +videoconvertscale_headers = [ + 'gstvideoconvert.h', + 'gstvideoscale.h', + 'gstvideoconvertscale.h', +] + +doc_sources = [] +foreach s: videoconvertscale_sources + videoconvertscale_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videoconvertscale': pathsep.join(doc_sources) +} + +if get_option('videoconvertscale').disabled() + subdir_done() +endif + gstvideoconvertscale = library('gstvideoconvertscale', videoconvertscale_sources, c_args : gst_plugins_base_args, diff --git a/subprojects/gst-plugins-base/gst/videorate/meson.build b/subprojects/gst-plugins-base/gst/videorate/meson.build index 6d8981112e..76a84ea2ed 100644 --- a/subprojects/gst-plugins-base/gst/videorate/meson.build +++ b/subprojects/gst-plugins-base/gst/videorate/meson.build @@ -1,5 +1,26 @@ -gstvideorate = library('gstvideorate', +videorate_sources = [ 'gstvideorate.c', +] + +videorate_headers = [ + 'gstvideorate.h', +] + +doc_sources = [] +foreach s: videorate_sources + videorate_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videorate': pathsep.join(doc_sources) +} + +if get_option('videorate').disabled() + subdir_done() +endif + +gstvideorate = library('gstvideorate', + videorate_sources, c_args : gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : [video_dep], diff --git a/subprojects/gst-plugins-base/gst/videotestsrc/meson.build b/subprojects/gst-plugins-base/gst/videotestsrc/meson.build index 317616eab8..5b0e8758b0 100644 --- a/subprojects/gst-plugins-base/gst/videotestsrc/meson.build +++ b/subprojects/gst-plugins-base/gst/videotestsrc/meson.build @@ -1,3 +1,26 @@ +videotestsrc_sources = [ + 'gstvideotestsrc.c', + 'videotestsrc.c', +] + +videotestsrc_headers = [ + 'gstvideotestsrc.h', + 'videotestsrc.h', +] + +doc_sources = [] +foreach s: videotestsrc_sources + videotestsrc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videotestsrc': pathsep.join(doc_sources) +} + +if get_option('adder').disabled() + subdir_done() +endif + videotestsrc_deps = [video_dep, gst_dep, gst_base_dep, libm] orcsrc = 'gstvideotestsrcorc' if have_orcc @@ -21,7 +44,7 @@ else endif gstvideotestsrc = library('gstvideotestsrc', - 'gstvideotestsrc.c', 'videotestsrc.c', orc_c, orc_h, + videotestsrc_sources + [orc_c, orc_h], c_args : gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : videotestsrc_deps, diff --git a/subprojects/gst-plugins-base/gst/volume/meson.build b/subprojects/gst-plugins-base/gst/volume/meson.build index 6ff62626d7..5e9de1369c 100644 --- a/subprojects/gst-plugins-base/gst/volume/meson.build +++ b/subprojects/gst-plugins-base/gst/volume/meson.build @@ -1,3 +1,24 @@ +volume_sources = [ + 'gstvolume.c' +] + +volume_headers = [ + 'gstvolume.h' +] + +doc_sources = [] +foreach s: volume_sources + volume_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'volume': pathsep.join(doc_sources) +} + +if get_option('volume').disabled() + subdir_done() +endif + volume_deps = [audio_dep, gst_dep, gst_base_dep] orcsrc = 'gstvolumeorc' if have_orcc @@ -20,7 +41,7 @@ else copy : true) endif -gstvolume = library('gstvolume', 'gstvolume.c', orc_c, orc_h, +gstvolume = library('gstvolume', volume_sources + [orc_c, orc_h], c_args : gst_plugins_base_args, include_directories: [configinc, libsinc], dependencies : volume_deps, diff --git a/subprojects/gst-plugins-base/meson.build b/subprojects/gst-plugins-base/meson.build index 6006ed0722..4aeaf80f83 100644 --- a/subprojects/gst-plugins-base/meson.build +++ b/subprojects/gst-plugins-base/meson.build @@ -47,6 +47,7 @@ osxversion = curversion + 1 plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') static_build = get_option('default_library') == 'static' plugins = [] +plugin_sources = {} gst_libraries = [] cc = meson.get_compiler('c') @@ -489,6 +490,12 @@ pkgconfig_subdirs = ['gstreamer-1.0'] meson_pkg_config_file_fixup_script = find_program('scripts/meson-pkg-config-file-fixup.py') +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + python3 = import('python').find_installation() subdir('gst-libs') subdir('gst') diff --git a/subprojects/gst-plugins-base/sys/meson.build b/subprojects/gst-plugins-base/sys/meson.build index a93e07581f..40f770caec 100644 --- a/subprojects/gst-plugins-base/sys/meson.build +++ b/subprojects/gst-plugins-base/sys/meson.build @@ -1,11 +1,9 @@ -if x11_dep.found() - # XShm is only used by ximage and xvimage - # FIXME: Need to check for XShmAttach inside libXext - xshm_dep = dependency('xext', required : get_option('xshm')) - xi_dep = dependency('xi', required : get_option('xi')) - core_conf.set('HAVE_XSHM', xshm_dep.found()) - core_conf.set('HAVE_XI2', xi_dep.found()) +# XShm is only used by ximage and xvimage +# FIXME: Need to check for XShmAttach inside libXext +xshm_dep = dependency('xext', required : get_option('xshm')) +xi_dep = dependency('xi', required : get_option('xi')) +core_conf.set('HAVE_XSHM', xshm_dep.found()) +core_conf.set('HAVE_XI2', xi_dep.found()) - subdir('ximage') - subdir('xvimage') -endif +subdir('ximage') +subdir('xvimage') diff --git a/subprojects/gst-plugins-base/sys/ximage/meson.build b/subprojects/gst-plugins-base/sys/ximage/meson.build index c80ffecdbe..c6d6eb9939 100644 --- a/subprojects/gst-plugins-base/sys/ximage/meson.build +++ b/subprojects/gst-plugins-base/sys/ximage/meson.build @@ -4,12 +4,34 @@ if cc.has_argument ('-Wno-deprecated-declarations') no_warn_args += '-Wno-deprecated-declarations' endif -gstximage = library('gstximagesink', - 'ximagesink.c', 'ximage.c', 'ximagepool.c', - c_args : gst_plugins_base_args + no_warn_args, - include_directories: [configinc, libsinc], - dependencies : [video_dep, gst_base_dep, gst_dep, x11_dep, xshm_dep, xi_dep], - install : true, - install_dir : plugins_install_dir, -) -plugins += [gstximage] +ximage_sources = [ + 'ximagesink.c', + 'ximage.c', + 'ximagepool.c', +] + +ximage_headers = [ + 'ximagepool.h', + 'ximagesink.h', +] + +doc_sources = [] +foreach s: ximage_sources + ximage_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ximagesink': pathsep.join(doc_sources) +} + +if x11_dep.found() + gstximage = library('gstximagesink', + ximage_sources, + c_args : gst_plugins_base_args + no_warn_args, + include_directories: [configinc, libsinc], + dependencies : [video_dep, gst_base_dep, gst_dep, x11_dep, xshm_dep, xi_dep], + install : true, + install_dir : plugins_install_dir, + ) + plugins += [gstximage] +endif diff --git a/subprojects/gst-plugins-base/sys/xvimage/meson.build b/subprojects/gst-plugins-base/sys/xvimage/meson.build index ce84ed0f0c..881020f34b 100644 --- a/subprojects/gst-plugins-base/sys/xvimage/meson.build +++ b/subprojects/gst-plugins-base/sys/xvimage/meson.build @@ -6,6 +6,22 @@ xvimage_sources = [ 'xvimagesink.c', ] +xvimage_headers = [ + 'xvcontext.h', + 'xvimagesink.h', + 'xvimagepool.h', + 'xvimageallocator.h', +] + +doc_sources = [] +foreach s: xvimage_sources + xvimage_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'xvimagesink': pathsep.join(doc_sources) +} + no_warn_args = [] # XKeycodeToKeysym is deprecated, but we use it when Xkb is unavailable if cc.has_argument ('-Wno-deprecated-declarations') @@ -14,7 +30,7 @@ endif xvideo_dep = dependency('xv', required : get_option('xvideo')) -if xvideo_dep.found() +if xvideo_dep.found() and x11_dep.found() gstxvimage = library('gstxvimagesink', xvimage_sources, c_args : gst_plugins_base_args + no_warn_args, diff --git a/subprojects/gst-plugins-good/docs/meson.build b/subprojects/gst-plugins-good/docs/meson.build index 1ef7166c93..fe0cb536cb 100644 --- a/subprojects/gst-plugins-good/docs/meson.build +++ b/subprojects/gst-plugins-good/docs/meson.build @@ -90,13 +90,28 @@ endforeach excludes += [join_paths(meson.current_source_dir(), '..', 'sys', 'rpicamsrc', 'Raspi*.[ch]')] +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') + cdir = meson.current_source_dir() -if host_machine.system() == 'windows' - pathsep = ';' -else - pathsep = ':' -endif -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--builddir', meson.current_build_dir(), @@ -104,14 +119,13 @@ gst_plugins_doc = run_command( '--sitemap', cdir / 'sitemap.txt', '--index', cdir / 'index.md', '--gst_index', cdir / 'index.md', - '--gst_c_sources', - cdir / '../sys/*/*.[cmh]', - cdir / '../ext/*/*.[ch]', - cdir / '../ext/*/*/*.[ch]', - cdir / '../gst/*/*.[ch]', - cdir / '../ext/*/*.cc', '--gst_c_source_filters', excludes, - '--gst_cache_file', plugins_cache, + '--gst_cache_file', '@INPUT@', '--include_paths', cdir / '..', - check: true, -).stdout().split(pathsep) + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) diff --git a/subprojects/gst-plugins-good/ext/aalib/meson.build b/subprojects/gst-plugins-good/ext/aalib/meson.build index 9fc6e7ab28..756ee9969d 100644 --- a/subprojects/gst-plugins-good/ext/aalib/meson.build +++ b/subprojects/gst-plugins-good/ext/aalib/meson.build @@ -1,3 +1,23 @@ +aasink_sources = [ + 'gstaasink.c', + 'gstaatv.c', + 'gstaaplugin.c', +] + +aasink_headers = [ + 'gstaasink.h', + 'gstaatv.h', +] + +doc_sources = [] +foreach s: aasink_sources + aasink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'aasink': pathsep.join(doc_sources) +} + # Very much not going to implement all kinds of logic around aalib-config have_aalib = false @@ -14,7 +34,7 @@ endif if have_aalib libaa_dep = cc.find_library('aa', required : aalib_option) if libaa_dep.found() - gstaasink = library('gstaasink', ['gstaasink.c','gstaatv.c', 'gstaaplugin.c'], + gstaasink = library('gstaasink', aasink_sources, c_args : gst_plugins_good_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-good/ext/adaptivedemux2/hls/meson.build b/subprojects/gst-plugins-good/ext/adaptivedemux2/hls/meson.build index a9ce7ae6ae..c7c5181e8d 100644 --- a/subprojects/gst-plugins-good/ext/adaptivedemux2/hls/meson.build +++ b/subprojects/gst-plugins-good/ext/adaptivedemux2/hls/meson.build @@ -8,6 +8,15 @@ hls_sources = [ 'hls/m3u8.c', ] +hls_headers = [ + 'hls/gsthlsdemux.h', + 'hls/gsthlsdemux-playlist-loader.h', + 'hls/gsthlsdemux-preloader.h', + 'hls/gsthlsdemux-stream.h', + 'hls/gsthlselements.h', + 'hls/m3u8.h', +] + hls_cargs = [] hls_crypto = get_option('hls-crypto') diff --git a/subprojects/gst-plugins-good/ext/adaptivedemux2/meson.build b/subprojects/gst-plugins-good/ext/adaptivedemux2/meson.build index a1ec28db7a..6543179818 100644 --- a/subprojects/gst-plugins-good/ext/adaptivedemux2/meson.build +++ b/subprojects/gst-plugins-good/ext/adaptivedemux2/meson.build @@ -1,4 +1,4 @@ -dash_sources = [ +adaptive_sources = [ 'dash/gstdashdemux.c', 'dash/gstmpdnode.c', 'dash/gstmpdrootnode.c', @@ -28,16 +28,10 @@ dash_sources = [ 'dash/gstxmlhelper.c', 'dash/gstmpdhelper.c', 'dash/gstmpdparser.c', - 'dash/gstmpdclient.c' -] - -smoothstreaming_sources = [ + 'dash/gstmpdclient.c', 'mss/gstmssdemux.c', 'mss/gstmssmanifest.c', 'mss/gstmssfragmentparser.c', -] - -plugin_sources = [ 'plugin.c', 'gstisoff.c', 'gstadaptivedemux.c', @@ -51,6 +45,67 @@ plugin_sources = [ '../soup/gstsouploader.c' ] +adaptive_headers = [ + 'downloadhelper.h', + 'downloadrequest.h', + 'gstadaptivedemuxelements.h', + 'gstadaptivedemux.h', + 'gstadaptivedemux-private.h', + 'gstadaptivedemux-stream.h', + 'gstadaptivedemux-types.h', + 'gstadaptivedemuxutils.h', + 'gstisoff.h', + 'dash/gstdash_debug.h', + 'dash/gstdashdemux.h', + 'dash/gstmpdadaptationsetnode.h', + 'dash/gstmpdbaseurlnode.h', + 'dash/gstmpdclient.h', + 'dash/gstmpdcontentcomponentnode.h', + 'dash/gstmpddescriptortypenode.h', + 'dash/gstmpdhelper.h', + 'dash/gstmpdlocationnode.h', + 'dash/gstmpdmetricsnode.h', + 'dash/gstmpdmetricsrangenode.h', + 'dash/gstmpdmultsegmentbasenode.h', + 'dash/gstmpdnode.h', + 'dash/gstmpdparser.h', + 'dash/gstmpdperiodnode.h', + 'dash/gstmpd-prelude.h', + 'dash/gstmpdprograminformationnode.h', + 'dash/gstmpdreportingnode.h', + 'dash/gstmpdrepresentationbasenode.h', + 'dash/gstmpdrepresentationnode.h', + 'dash/gstmpdrootnode.h', + 'dash/gstmpdsegmentbasenode.h', + 'dash/gstmpdsegmentlistnode.h', + 'dash/gstmpdsegmenttemplatenode.h', + 'dash/gstmpdsegmenttimelinenode.h', + 'dash/gstmpdsegmenturlnode.h', + 'dash/gstmpdsnode.h', + 'dash/gstmpdsubrepresentationnode.h', + 'dash/gstmpdsubsetnode.h', + 'dash/gstmpdurltypenode.h', + 'dash/gstmpdutctimingnode.h', + 'dash/gstxmlhelper.h', + 'mss/gstmssdemux.h', + 'mss/gstmssfragmentparser.h', + 'mss/gstmssmanifest.h', + 'mss/gstmss-prelude.h', +] + +subdir('hls') + +adaptive_sources += hls_sources +adaptive_headers += hls_headers +doc_sources = [] +foreach s: adaptive_sources + adaptive_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'adaptivedemux2': pathsep.join(doc_sources) +} + # Used for unit tests, so need to be defined even if we skip the subdir hls_dep = dependency('', required : false) adaptivedemux2_dep = dependency('', required : false) @@ -76,18 +131,12 @@ if not adaptive_xml2_dep.found() subdir_done() endif -subdir('hls') - -plugin_sources += dash_sources -plugin_sources += smoothstreaming_sources -plugin_sources += hls_sources - libdl = cc.find_library('dl', required: false) soup_loader_args = ['-DBUILDING_ADAPTIVEDEMUX2'] # Shared plugin doesn't link to libsoup but dlopen()s it at runtime adaptive_kwargs = { - 'sources': plugin_sources, + 'sources': adaptive_sources, 'include_directories': [configinc, libsinc], 'install': true, 'install_dir': plugins_install_dir, diff --git a/subprojects/gst-plugins-good/ext/amrnb/meson.build b/subprojects/gst-plugins-good/ext/amrnb/meson.build index 6fbd8faeee..11cb025c6b 100644 --- a/subprojects/gst-plugins-good/ext/amrnb/meson.build +++ b/subprojects/gst-plugins-good/ext/amrnb/meson.build @@ -1,8 +1,28 @@ amrnb_dep = dependency('opencore-amrnb', version : '>= 0.1.3', required : get_option('amrnb')) +amrnb_sources = [ + 'amrnb.c', + 'amrnbdec.c', + 'amrnbenc.c', +] + +amrnb_headers = [ + 'amrnbdec.h', + 'amrnbenc.h', +] + +doc_sources = [] +foreach s: amrnb_sources + amrnb_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'amrnb': pathsep.join(doc_sources) +} + if amrnb_dep.found() amrnb = library('gstamrnb', - ['amrnb.c', 'amrnbdec.c', 'amrnbenc.c'], + amrnb_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstaudio_dep, amrnb_dep], @@ -10,6 +30,7 @@ if amrnb_dep.found() install_dir : plugins_install_dir, ) plugins += [amrnb] + install_data(sources: 'GstAmrnbEnc.prs', install_dir: presetdir) env = environment() diff --git a/subprojects/gst-plugins-good/ext/amrwbdec/meson.build b/subprojects/gst-plugins-good/ext/amrwbdec/meson.build index ea1778f984..4d168ac9d6 100644 --- a/subprojects/gst-plugins-good/ext/amrwbdec/meson.build +++ b/subprojects/gst-plugins-good/ext/amrwbdec/meson.build @@ -1,8 +1,26 @@ amrwb_dep = dependency('opencore-amrwb', version : '>= 0.1.3', required : get_option('amrwbdec')) +amrwbdec_sources = [ + 'amrwb.c', + 'amrwbdec.c', +] + +amrwbdec_headers = [ + 'amrwbdec.h', +] + +doc_sources = [] +foreach s: amrwbdec_sources + amrwbdec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'amrwbdec': pathsep.join(doc_sources) +} + if amrwb_dep.found() amrwbdec = library('gstamrwbdec', - ['amrwb.c', 'amrwbdec.c'], + amrwbdec_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstaudio_dep, amrwb_dep], diff --git a/subprojects/gst-plugins-good/ext/cairo/meson.build b/subprojects/gst-plugins-good/ext/cairo/meson.build index 5a3916ee65..433613fd22 100644 --- a/subprojects/gst-plugins-good/ext/cairo/meson.build +++ b/subprojects/gst-plugins-good/ext/cairo/meson.build @@ -1,9 +1,27 @@ cairo_dep = dependency('cairo-gobject', version : '>=1.10.0', required : get_option('cairo'), default_options: ['glib=enabled']) +cairo_sources = [ + 'gstcairo.c', + 'gstcairooverlay.c', +] + +cairo_headers = [ + 'gstcairooverlay.h', +] + +doc_sources = [] +foreach s: cairo_sources + cairo_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'cairo': pathsep.join(doc_sources) +} + if cairo_dep.found() gstcairo = library('gstcairo', - 'gstcairo.c', 'gstcairooverlay.c', + cairo_sources, c_args : gst_plugins_good_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-good/ext/dv/meson.build b/subprojects/gst-plugins-good/ext/dv/meson.build index 3405a4eb98..a4f6bd3315 100644 --- a/subprojects/gst-plugins-good/ext/dv/meson.build +++ b/subprojects/gst-plugins-good/ext/dv/meson.build @@ -6,6 +6,22 @@ dv_sources = [ 'gstsmptetimecode.c', ] +dv_headers = [ + 'gstsmptetimecode.h', + 'gstdvdec.h', + 'gstdvelements.h', + 'gstdvdemux.h', +] + +doc_sources = [] +foreach s: dv_sources + dv_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dv': pathsep.join(doc_sources) +} + dv_dep = dependency('libdv', version : '>= 0.100', required : get_option('dv'), fallback: ['dv', 'dv_dep']) diff --git a/subprojects/gst-plugins-good/ext/flac/meson.build b/subprojects/gst-plugins-good/ext/flac/meson.build index f5786dc390..43eb99bda0 100644 --- a/subprojects/gst-plugins-good/ext/flac/meson.build +++ b/subprojects/gst-plugins-good/ext/flac/meson.build @@ -6,6 +6,22 @@ flac_sources = [ 'gstflactag.c', ] +flac_headers = [ + 'gstflacenc.h', + 'gstflactag.h', + 'gstflacdec.h', + 'gstflacelements.h', +] + +doc_sources = [] +foreach s: flac_sources + flac_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'flac': pathsep.join(doc_sources) +} + flac_dep = dependency('flac', version : '>=1.1.4', required : get_option('flac'), allow_fallback: true) diff --git a/subprojects/gst-plugins-good/ext/gdk_pixbuf/meson.build b/subprojects/gst-plugins-good/ext/gdk_pixbuf/meson.build index c0f6caf92b..c78bef14d2 100644 --- a/subprojects/gst-plugins-good/ext/gdk_pixbuf/meson.build +++ b/subprojects/gst-plugins-good/ext/gdk_pixbuf/meson.build @@ -6,6 +6,23 @@ pixbuf_sources = [ 'gstgdkpixbufsink.c', ] +pixbuf_headers = [ + 'gstgdkpixbufsink.h', + 'gstgdkpixbufdec.h', + 'gstgdkpixbufoverlay.h', + 'gstgdkanimation.h', + 'gstgdkpixbufelements.h', +] + +doc_sources = [] +foreach s: pixbuf_sources + pixbuf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gdkpixbuf': pathsep.join(doc_sources) +} + gdkpixbuf_dep = dependency('gdk-pixbuf-2.0', version : '>=2.8.0', required : get_option('gdk-pixbuf')) if gdkpixbuf_dep.found() diff --git a/subprojects/gst-plugins-good/ext/gtk/meson.build b/subprojects/gst-plugins-good/ext/gtk/meson.build index 04b161c165..2afe1854a6 100644 --- a/subprojects/gst-plugins-good/ext/gtk/meson.build +++ b/subprojects/gst-plugins-good/ext/gtk/meson.build @@ -7,6 +7,30 @@ gtk_sources = [ 'gtkgstwidget.c', ] +gtk_headers = [ + 'gtkgstglwidget.h', + 'gstgtksink.h', + 'gtkgstbasewidget.h', + 'gtkgstwidget.h', + 'gstgtkglsink.h', + 'gstgtkutils.h', + 'gstgtkbasesink.h', +] + +glwindowing_sources = [ + 'gstgtkglsink.c', + 'gtkgstglwidget.c', +] + +doc_sources = [] +foreach s: gtk_sources + glwindowing_sources + gtk_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'gtk': pathsep.join(doc_sources) +} + gtk_defines = [] optional_deps = [] @@ -44,10 +68,7 @@ if gtk_dep.found() endif if have_gtk3_gl_windowing - gtk_sources += [ - 'gstgtkglsink.c', - 'gtkgstglwidget.c', - ] + gtk_sources += glwindowing_sources optional_deps += [gstgl_dep, gstglproto_dep] gtk_defines += ['-DGST_USE_UNSTABLE_API', '-DHAVE_GTK3_GL'] endif @@ -64,4 +85,3 @@ if gtk_dep.found() ) plugins += [gstgtk] endif - diff --git a/subprojects/gst-plugins-good/ext/jack/meson.build b/subprojects/gst-plugins-good/ext/jack/meson.build index f5780e266b..3fc7e433a0 100644 --- a/subprojects/gst-plugins-good/ext/jack/meson.build +++ b/subprojects/gst-plugins-good/ext/jack/meson.build @@ -7,6 +7,25 @@ jack_sources = [ 'gstjackloader.c', ] +jack_headers = [ + 'gstjackringbuffer.h', + 'gstjack.h', + 'gstjackloader.h', + 'gstjackaudiosrc.h', + 'gstjackaudioclient.h', + 'gstjackutil.h', + 'gstjackaudiosink.h', +] + +doc_sources = [] +foreach s: jack_sources + jack_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'jack': pathsep.join(doc_sources) +} + jack_option = get_option('jack') if jack_option.disabled() subdir_done() diff --git a/subprojects/gst-plugins-good/ext/jpeg/meson.build b/subprojects/gst-plugins-good/ext/jpeg/meson.build index 65823892ef..f7dd09aebb 100644 --- a/subprojects/gst-plugins-good/ext/jpeg/meson.build +++ b/subprojects/gst-plugins-good/ext/jpeg/meson.build @@ -5,6 +5,26 @@ jpeg_sources = [ 'gstjpegdec.c', ] +jpeg_headers = [ + 'smokecodec.h', + 'gstjpegelements.h', + 'gstjpegenc.h', + 'gstjpegdec.h', + 'gstjpeg.h', + 'gstsmokedec.h', + 'smokeformat.h', + 'gstsmokeenc.h', +] + +doc_sources = [] +foreach s: jpeg_sources + jpeg_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'jpeg': pathsep.join(doc_sources) +} + jpeglib = dependency('libjpeg', required : get_option('jpeg'), fallback: ['libjpeg-turbo', 'jpeg_dep']) diff --git a/subprojects/gst-plugins-good/ext/lame/meson.build b/subprojects/gst-plugins-good/ext/lame/meson.build index 60fa2c9108..f95361bd18 100644 --- a/subprojects/gst-plugins-good/ext/lame/meson.build +++ b/subprojects/gst-plugins-good/ext/lame/meson.build @@ -1,3 +1,21 @@ +lame_sources = [ + 'gstlamemp3enc.c', + 'plugin.c', +] + +lame_headers = [ + 'gstlamemp3enc.h', +] + +doc_sources = [] +foreach s: lame_sources + lame_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'lame': pathsep.join(doc_sources) +} + lame_dep = dependency('', required: false) lame_option = get_option('lame') @@ -27,7 +45,7 @@ if not have_lame endif lame = library('gstlame', - ['gstlamemp3enc.c', 'plugin.c'], + lame_sources, c_args : gst_plugins_good_args + lame_extra_c_args, include_directories : [configinc, libsinc], dependencies : [gstaudio_dep, lame_dep], diff --git a/subprojects/gst-plugins-good/ext/libcaca/meson.build b/subprojects/gst-plugins-good/ext/libcaca/meson.build index 28fc4f4783..6751c9e229 100644 --- a/subprojects/gst-plugins-good/ext/libcaca/meson.build +++ b/subprojects/gst-plugins-good/ext/libcaca/meson.build @@ -1,7 +1,27 @@ libcaca_dep = dependency('caca', required : get_option('libcaca')) +cacasink_sources = [ + 'gstcacaplugin.c', + 'gstcacasink.c', + 'gstcacatv.c', +] + +cacasink_headers = [ + 'gstcacatv.h', + 'gstcacasink.h', +] + +doc_sources = [] +foreach s: cacasink_sources + cacasink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'cacasink': pathsep.join(doc_sources) +} + if libcaca_dep.found() - caca = library('gstcacasink', ['gstcacaplugin.c', 'gstcacasink.c','gstcacatv.c'], + caca = library('gstcacasink', cacasink_sources, c_args : gst_plugins_good_args, link_args : noseh_link_args, include_directories : [configinc], diff --git a/subprojects/gst-plugins-good/ext/libpng/meson.build b/subprojects/gst-plugins-good/ext/libpng/meson.build index 7e2023cbde..865d802aa3 100644 --- a/subprojects/gst-plugins-good/ext/libpng/meson.build +++ b/subprojects/gst-plugins-good/ext/libpng/meson.build @@ -4,6 +4,21 @@ png_sources = [ 'gstpngdec.c', ] +png_headers = [ + 'gstpngenc.h', + 'gstpng.h', + 'gstpngdec.h', +] + +doc_sources = [] +foreach s: png_sources + png_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'png': pathsep.join(doc_sources) +} + libpng_dep = dependency('libpng', version : '>=1.2', required : get_option('png')) if libpng_dep.found() diff --git a/subprojects/gst-plugins-good/ext/mpg123/meson.build b/subprojects/gst-plugins-good/ext/mpg123/meson.build index 62a2ac09a7..538112e80a 100644 --- a/subprojects/gst-plugins-good/ext/mpg123/meson.build +++ b/subprojects/gst-plugins-good/ext/mpg123/meson.build @@ -1,8 +1,25 @@ mpg123_dep = dependency('libmpg123', version : '>= 1.3', required : get_option('mpg123')) +mpg123_sources = [ + 'gstmpg123audiodec.c' +] + +mpg123_headers = [ + 'gstmpg123audiodec.h', +] + +doc_sources = [] +foreach s: mpg123_sources + mpg123_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpg123': pathsep.join(doc_sources) +} + if mpg123_dep.found() gstmpg123 = library('gstmpg123', - 'gstmpg123audiodec.c', + mpg123_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstaudio_dep, mpg123_dep], diff --git a/subprojects/gst-plugins-good/ext/pulse/meson.build b/subprojects/gst-plugins-good/ext/pulse/meson.build index 6eec06b6b9..feb3aac94d 100644 --- a/subprojects/gst-plugins-good/ext/pulse/meson.build +++ b/subprojects/gst-plugins-good/ext/pulse/meson.build @@ -7,6 +7,23 @@ pulse_sources = [ 'pulseutil.c', ] +pulse_headers = [ + 'pulsesink.h', + 'pulseutil.h', + 'pulsedeviceprovider.h', + 'gstpulseelements.h', + 'pulsesrc.h', +] + +doc_sources = [] +foreach s: pulse_sources + pulse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'pulseaudio': pathsep.join(doc_sources) +} + libpulse_dep = dependency('libpulse', version : '>=2.0', required : get_option('pulse')) if libpulse_dep.found() diff --git a/subprojects/gst-plugins-good/ext/qt/meson.build b/subprojects/gst-plugins-good/ext/qt/meson.build index cc40b36a7b..9fcef20bef 100644 --- a/subprojects/gst-plugins-good/ext/qt/meson.build +++ b/subprojects/gst-plugins-good/ext/qt/meson.build @@ -1,4 +1,4 @@ -sources = [ +qmlgl_sources = [ 'gstplugin.cc', 'gstqtelement.cc', 'gstqsgmaterial.cc', @@ -11,12 +11,34 @@ sources = [ 'qtwindow.cc', ] +qmlgl_headers = [ + 'qtitem.h', + 'gstqtoverlay.h', + 'gstqtsink.h', + 'gstqsgmaterial.h', + 'gstqtelements.h', + 'gstqtsrc.h', + 'qtglrenderer.h', + 'gstqtgl.h', + 'qtwindow.h', + 'gstqtglutility.h', +] + moc_headers = [ 'qtitem.h', 'qtwindow.h', 'qtglrenderer.h', ] +doc_sources = [] +foreach s: qmlgl_sources + qmlgl_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'qmlgl': pathsep.join(doc_sources) +} + # Define a not-found dependency so this variable is always defined when we're # deciding whether to build the qt5 examples qt5qml_dep = dependency('', required: false) @@ -196,7 +218,8 @@ if qt5_option.require(have_qt_windowing, error_message: 'No windowing, enable on # Build it! moc_files = qt5_mod.preprocess(moc_headers : moc_headers, method: qt5_method) - gstqmlgl = library('gstqmlgl', sources, moc_files, + + gstqmlgl = library('gstqmlgl', qmlgl_sources, moc_files, cpp_args : gst_plugins_good_args + qt_defines, link_args : noseh_link_args, include_directories: [configinc, libsinc], diff --git a/subprojects/gst-plugins-good/ext/qt6/meson.build b/subprojects/gst-plugins-good/ext/qt6/meson.build index d98ab1861b..19dc84182e 100644 --- a/subprojects/gst-plugins-good/ext/qt6/meson.build +++ b/subprojects/gst-plugins-good/ext/qt6/meson.build @@ -1,4 +1,4 @@ -sources = [ +qt6_sources = [ 'gstplugin.cc', 'gstqt6element.cc', 'gstqsg6material.cc', @@ -12,6 +12,20 @@ sources = [ 'qt6glrenderer.cc', ] +qt6_headers = [ + 'gstqml6glsink.h', + 'gstqt6elements.h', + 'qt6glrenderer.h', + 'gstqt6glutility.h', + 'qt6glitem.h', + 'gstqt6gl.h', + 'gstqsg6material.h', + 'qt6glwindow.h', + 'gstqml6glsrc.h', + 'gstqml6glmixer.h', + 'gstqml6gloverlay.h', +] + moc_headers = [ 'qt6glitem.h', 'qt6glwindow.h', @@ -25,6 +39,15 @@ shader_sources = [ { 'glsl': 'YUV_TRIPLANAR.frag' }, ] +doc_sources = [] +foreach s: qt6_sources + qt6_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'qml6': pathsep.join(doc_sources) +} + qt6qml_dep = dependency('', required: false) qt6_option = get_option('qt6') qt6_egl = get_option('qt-egl') @@ -200,7 +223,7 @@ if qt6_option.require(have_qt_windowing, error_message: 'No windowing, enable on resource_file = configure_file(input: 'resources.qrc', output: 'resources.qrc', copy: true) qresources = qt6_mod.compile_resources(sources: resource_file, method: qt6_method) - gstqml6gl = library('gstqml6', sources, moc_files, qresources, + gstqml6gl = library('gstqml6', qt6_sources, moc_files, qresources, cpp_args : gst_plugins_good_args + qt_defines, link_args : noseh_link_args, include_directories: [configinc, libsinc], diff --git a/subprojects/gst-plugins-good/ext/raw1394/meson.build b/subprojects/gst-plugins-good/ext/raw1394/meson.build index 5baae052f0..3d78b196e0 100644 --- a/subprojects/gst-plugins-good/ext/raw1394/meson.build +++ b/subprojects/gst-plugins-good/ext/raw1394/meson.build @@ -2,6 +2,30 @@ raw1394_dep = dependency('libraw1394', version: '>= 2.0.0', required: get_option avc1394_dep = dependency('libavc1394', version: '>= 0.5.4', required: get_option('dv1394')) iec61883_dep = dependency('libiec61883', version: '>= 1.0.0', required: get_option('dv1394')) +gst1394_sources = [ + 'gst1394.c', + 'gst1394probe.c', + 'gstdv1394src.c', + 'gsthdv1394src.c', + 'gst1394clock.c', +] + +gst1394_headers = [ + 'gsthdv1394src.h', + 'gst1394clock.h', + 'gstdv1394src.h', + 'gst1394probe.h', +] + +doc_sources = [] +foreach s: gst1394_sources + gst1394_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + '1394': pathsep.join(doc_sources) +} + have_1394 = false if raw1394_dep.found() and iec61883_dep.found() and avc1394_dep.found() if cc.has_function('avc1394_send_command', dependencies: avc1394_dep) @@ -12,11 +36,13 @@ if raw1394_dep.found() and iec61883_dep.found() and avc1394_dep.found() endif if have_1394 - plugins += [library('gst1394', - 'gst1394.c', 'gst1394probe.c', 'gstdv1394src.c', 'gsthdv1394src.c', 'gst1394clock.c', + gst1394 = library('gst1394', + gst1394_sources, c_args : gst_plugins_good_args + ['-DHAVE_LIBIEC61883'], include_directories : [configinc, libsinc], dependencies : [gstvideo_dep, gstbase_dep, raw1394_dep, avc1394_dep, iec61883_dep], install : true, - install_dir : plugins_install_dir)] + install_dir : plugins_install_dir) + + plugins += [gst1394] endif diff --git a/subprojects/gst-plugins-good/ext/shout2/meson.build b/subprojects/gst-plugins-good/ext/shout2/meson.build index 2eccdc97f2..705449a1b0 100644 --- a/subprojects/gst-plugins-good/ext/shout2/meson.build +++ b/subprojects/gst-plugins-good/ext/shout2/meson.build @@ -1,5 +1,18 @@ shout2_sources = ['gstshout2.c'] +shout2_headers = [ + 'gstshout2.h', +] + +doc_sources = [] +foreach s: shout2_sources + shout2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'shout2': pathsep.join(doc_sources) +} + shout2_dep = dependency('shout', version : '>= 2.4.3', required : get_option('shout2')) if shout2_dep.found() diff --git a/subprojects/gst-plugins-good/ext/soup/meson.build b/subprojects/gst-plugins-good/ext/soup/meson.build index 67966ae8d7..a61ee9c30f 100644 --- a/subprojects/gst-plugins-good/ext/soup/meson.build +++ b/subprojects/gst-plugins-good/ext/soup/meson.build @@ -7,6 +7,23 @@ soup_sources = [ 'gstsouputils.c', ] +soup_headers = [ + 'gstsoupelements.h', + 'gstsouphttpclientsink.h', + 'gstsouphttpsrc.h', + 'gstsouploader.h', + 'gstsouputils.h', +] + +doc_sources = [] +foreach s: soup_sources + soup_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'soup': pathsep.join(doc_sources) +} + soup_opt = get_option('soup') soup_ver_opt = get_option('soup-version') if soup_opt.disabled() diff --git a/subprojects/gst-plugins-good/ext/speex/meson.build b/subprojects/gst-plugins-good/ext/speex/meson.build index 07735fe212..90ef78632a 100644 --- a/subprojects/gst-plugins-good/ext/speex/meson.build +++ b/subprojects/gst-plugins-good/ext/speex/meson.build @@ -5,6 +5,21 @@ speex_sources = [ 'gstspeexenc.c', ] +speex_headers = [ + 'gstspeexenc.h', + 'gstspeexdec.h', + 'gstspeexelements.h', +] + +doc_sources = [] +foreach s: speex_sources + speex_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'speex': pathsep.join(doc_sources) +} + speex_dep = dependency('speex', version : '>=1.1.6', required : get_option('speex')) windows_args = [] if host_system == 'windows' diff --git a/subprojects/gst-plugins-good/ext/taglib/meson.build b/subprojects/gst-plugins-good/ext/taglib/meson.build index cbfcb37992..dcb72d4d44 100644 --- a/subprojects/gst-plugins-good/ext/taglib/meson.build +++ b/subprojects/gst-plugins-good/ext/taglib/meson.build @@ -1,3 +1,5 @@ +taglib_dep = dependency('taglib', version : '>= 1.5', required : get_option('taglib')) + taglib_sources = [ 'gstapev2mux.cc', 'gstid3v2mux.cc', @@ -5,7 +7,20 @@ taglib_sources = [ 'gsttaglibplugin.c', ] -taglib_dep = dependency('taglib', version : '>= 1.5', required : get_option('taglib')) +taglib_headers = [ + 'gsttaglibelements.h', + 'gstapev2mux.h', + 'gstid3v2mux.h', +] + +doc_sources = [] +foreach s: taglib_sources + taglib_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'taglib': pathsep.join(doc_sources) +} if taglib_dep.found() and add_languages('cpp', native: false, required: get_option('taglib')) extra_args = [] diff --git a/subprojects/gst-plugins-good/ext/twolame/meson.build b/subprojects/gst-plugins-good/ext/twolame/meson.build index 07c96fef01..27f285faa4 100644 --- a/subprojects/gst-plugins-good/ext/twolame/meson.build +++ b/subprojects/gst-plugins-good/ext/twolame/meson.build @@ -1,8 +1,25 @@ twolame_dep = dependency('twolame', version : '>= 0.3.10', required : get_option('twolame')) +twolame_sources = [ + 'gsttwolamemp2enc.c', +] + +twolame_headers = [ + 'gsttwolamemp2enc.h', +] + +doc_sources = [] +foreach s: twolame_sources + twolame_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'twolame': pathsep.join(doc_sources) +} + if twolame_dep.found() twolame = library('gsttwolame', - ['gsttwolamemp2enc.c'], + twolame_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstaudio_dep, twolame_dep], diff --git a/subprojects/gst-plugins-good/ext/vpx/meson.build b/subprojects/gst-plugins-good/ext/vpx/meson.build index 9b8b34c67e..c02a6e26af 100644 --- a/subprojects/gst-plugins-good/ext/vpx/meson.build +++ b/subprojects/gst-plugins-good/ext/vpx/meson.build @@ -10,6 +10,28 @@ vpx_sources = [ 'plugin.c', ] +vpx_headers = [ + 'gstvp9enc.h', + 'gstvpxelements.h', + 'gstvpxdec.h', + 'gstvp8utils.h', + 'gstvp9dec.h', + 'gstvp8dec.h', + 'gstvpxenums.h', + 'gstvpxenc.h', + 'gstvpxcompat.h', + 'gstvp8enc.h', +] + +doc_sources = [] +foreach s: vpx_sources + vpx_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'vpx': pathsep.join(doc_sources) +} + vpx_features = [ [ 'vpx/vp8cx.h', 'vpx_codec_vp8_cx_algo', '-DHAVE_VP8_ENCODER', 'VP8 encoder' ], [ 'vpx/vp8dx.h', 'vpx_codec_vp8_dx_algo', '-DHAVE_VP8_DECODER', 'VP8 decoder' ], @@ -31,7 +53,7 @@ if vpx_dep.found() const vpx_codec_iface_t *c = &@1@; return c != 0; }'''.format(header,codec_iface) - # Link-time checks are only compatible with externally supplied libraries + # Link-time checks are only compatible with externally supplied libraries if vpx_dep.type_name() == 'internal' vpx_codec = vpx_dep.get_variable(f.get(3).split(' ')[0].to_lower()) vpx_feature = vpx_dep.get_variable(f.get(3).to_lower().underscorify()) diff --git a/subprojects/gst-plugins-good/ext/wavpack/meson.build b/subprojects/gst-plugins-good/ext/wavpack/meson.build index 4735e90274..35977ab483 100644 --- a/subprojects/gst-plugins-good/ext/wavpack/meson.build +++ b/subprojects/gst-plugins-good/ext/wavpack/meson.build @@ -1,3 +1,4 @@ +wavpack_dep = dependency('wavpack', version : '>= 4.60.0', required : get_option('wavpack')) wavpack_sources = [ 'gstwavpackelement.c', 'gstwavpack.c', @@ -7,7 +8,23 @@ wavpack_sources = [ 'gstwavpackstreamreader.c', ] -wavpack_dep = dependency('wavpack', version : '>= 4.60.0', required : get_option('wavpack')) +wavpack_headers = [ + 'gstwavpackcommon.h', + 'gstwavpackenc.h', + 'gstwavpackelements.h', + 'gstwavpackdec.h', + 'gstwavpackstreamreader.h', +] + +doc_sources = [] +foreach s: wavpack_sources + wavpack_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wavpack': pathsep.join(doc_sources) +} + if wavpack_dep.found() gstwavpack = library('gstwavpack', diff --git a/subprojects/gst-plugins-good/gst/alpha/meson.build b/subprojects/gst-plugins-good/gst/alpha/meson.build index 198462233c..62752c611b 100644 --- a/subprojects/gst-plugins-good/gst/alpha/meson.build +++ b/subprojects/gst-plugins-good/gst/alpha/meson.build @@ -1,4 +1,43 @@ -gstalpha = library('gstalpha', 'gstalpha.c', +alpha_sources = [ + 'gstalpha.c', +] + +alpha_headers = [ + 'gstalpha.h', +] + +alphacolor_sources = [ + 'gstalphacolor.c', +] + +alphacolor_headers = [ + 'gstalphacolor.h', +] + +doc_sources = [] +foreach s: alphacolor_sources + alphacolor_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'alphacolor': pathsep.join(doc_sources) +} + +doc_sources = [] +foreach s: alpha_sources + alpha_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'alpha': pathsep.join(doc_sources) +} + +if get_option('alpha').disabled() + subdir_done() +endif + +gstalpha = library('gstalpha', + alpha_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstvideo_dep, gst_dep, libm], @@ -7,7 +46,8 @@ gstalpha = library('gstalpha', 'gstalpha.c', ) plugins += [gstalpha] -gstalphacolor = library('gstalphacolor', 'gstalphacolor.c', +gstalphacolor = library('gstalphacolor', + alphacolor_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstvideo_dep, gst_dep], diff --git a/subprojects/gst-plugins-good/gst/apetag/meson.build b/subprojects/gst-plugins-good/gst/apetag/meson.build index 7c43e2ee81..78508555e7 100644 --- a/subprojects/gst-plugins-good/gst/apetag/meson.build +++ b/subprojects/gst-plugins-good/gst/apetag/meson.build @@ -1,4 +1,25 @@ -gstapetag = library('gstapetag', 'gstapedemux.c', +apetag_sources = [ + 'gstapedemux.c', +] + +apetag_headers = [ + 'gstapedemux.h', +] + +doc_sources = [] +foreach s: apetag_sources + apetag_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'apetag': pathsep.join(doc_sources) +} + +if get_option('apetag').disabled() + subdir_done() +endif + +gstapetag = library('gstapetag', apetag_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstpbutils_dep, gsttag_dep, gst_dep], diff --git a/subprojects/gst-plugins-good/gst/audiofx/meson.build b/subprojects/gst-plugins-good/gst/audiofx/meson.build index e1502f1f56..d82596be48 100644 --- a/subprojects/gst-plugins-good/gst/audiofx/meson.build +++ b/subprojects/gst-plugins-good/gst/audiofx/meson.build @@ -18,6 +18,39 @@ audiofx_sources = [ 'gststereo.c' ] +audiofx_headers = [ + 'math_compat.h', + 'audiofxbaseiirfilter.h', + 'audioamplify.h', + 'audiowsincband.h', + 'audioecho.h', + 'audiokaraoke.h', + 'audioiirfilter.h', + 'audiochebband.h', + 'gstscaletempo.h', + 'audioinvert.h', + 'gststereo.h', + 'audiodynamic.h', + 'audiopanorama.h', + 'audiowsinclimit.h', + 'audiofirfilter.h', + 'audiofxbasefirfilter.h', + 'audiocheblimit.h', +] + +doc_sources = [] +foreach s: audiofx_sources + audiofx_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audiofx': pathsep.join(doc_sources) +} + +if get_option('audiofx').disabled() + subdir_done() +endif + orcsrc = 'audiopanoramaorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-good/gst/audioparsers/meson.build b/subprojects/gst-plugins-good/gst/audioparsers/meson.build index 1e8f251961..70275cc45d 100644 --- a/subprojects/gst-plugins-good/gst/audioparsers/meson.build +++ b/subprojects/gst-plugins-good/gst/audioparsers/meson.build @@ -1,4 +1,4 @@ -audioparsers_src = [ +audioparsers_sources = [ 'gstaacparse.c', 'gstamrparse.c', 'gstac3parse.c', @@ -10,8 +10,33 @@ audioparsers_src = [ 'plugin.c', ] +audioparsers_headers = [ + 'gstamrparse.h', + 'gstaacparse.h', + 'gstdcaparse.h', + 'gstsbcparse.h', + 'gstmpegaudioparse.h', + 'gstac3parse.h', + 'gstwavpackparse.h', + 'gstflacparse.h', + 'gstaudioparserselements.h', +] + +doc_sources = [] +foreach s: audioparsers_sources + audioparsers_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'audioparsers': pathsep.join(doc_sources) +} + +if get_option('audioparsers').disabled() + subdir_done() +endif + gstaudioparsers = library('gstaudioparsers', - audioparsers_src, + audioparsers_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gst_dep, gstbase_dep, gstpbutils_dep, diff --git a/subprojects/gst-plugins-good/gst/auparse/meson.build b/subprojects/gst-plugins-good/gst/auparse/meson.build index 230a8d4868..f99934494b 100644 --- a/subprojects/gst-plugins-good/gst/auparse/meson.build +++ b/subprojects/gst-plugins-good/gst/auparse/meson.build @@ -1,5 +1,26 @@ -gstauparse = library('gstauparse', +auparse_sources = [ 'gstauparse.c', +] + +auparse_headers = [ + 'gstauparse.h', +] + +doc_sources = [] +foreach s: auparse_sources + auparse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'auparse': pathsep.join(doc_sources) +} + +if get_option('auparse').disabled() + subdir_done() +endif + +gstauparse = library('gstauparse', + auparse_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstaudio_dep, gstbase_dep], diff --git a/subprojects/gst-plugins-good/gst/autodetect/meson.build b/subprojects/gst-plugins-good/gst/autodetect/meson.build index 77eb6c83b0..25878e8f18 100644 --- a/subprojects/gst-plugins-good/gst/autodetect/meson.build +++ b/subprojects/gst-plugins-good/gst/autodetect/meson.build @@ -8,6 +8,28 @@ autodetect_sources = [ 'gstautovideosrc.c', ] +autodetect_headers = [ + 'gstautodetectelements.h', + 'gstautoaudiosink.h', + 'gstautoaudiosrc.h', + 'gstautovideosrc.h', + 'gstautodetect.h', + 'gstautovideosink.h', +] + +doc_sources = [] +foreach s: autodetect_sources + autodetect_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'autodetect': pathsep.join(doc_sources) +} + +if get_option('autodetect').disabled() + subdir_done() +endif + gstautodetect = library('gstautodetect', autodetect_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/avi/meson.build b/subprojects/gst-plugins-good/gst/avi/meson.build index 0f75192e88..a3a4af1b4d 100644 --- a/subprojects/gst-plugins-good/gst/avi/meson.build +++ b/subprojects/gst-plugins-good/gst/avi/meson.build @@ -6,6 +6,27 @@ avi_sources = [ 'gstavisubtitle.c' ] +avi_headers = [ + 'gstavielements.h', + 'avi-ids.h', + 'gstavidemux.h', + 'gstavisubtitle.h', + 'gstavimux.h', +] + +doc_sources = [] +foreach s: avi_sources + avi_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'avi': pathsep.join(doc_sources) +} + +if get_option('avi').disabled() + subdir_done() +endif + gstavi = library('gstavi', avi_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/cutter/meson.build b/subprojects/gst-plugins-good/gst/cutter/meson.build index 23cd4cb25f..9f50b42453 100644 --- a/subprojects/gst-plugins-good/gst/cutter/meson.build +++ b/subprojects/gst-plugins-good/gst/cutter/meson.build @@ -1,4 +1,25 @@ -gstcutter = library('gstcutter', 'gstcutter.c', +cutter_sources = [ + 'gstcutter.c', +] + +cutter_headers = [ + 'gstcutter.h', +] + +doc_sources = [] +foreach s: cutter_sources + cutter_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'cutter': pathsep.join(doc_sources) +} + +if get_option('cutter').disabled() + subdir_done() +endif + +gstcutter = library('gstcutter', cutter_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep, libm], diff --git a/subprojects/gst-plugins-good/gst/debugutils/meson.build b/subprojects/gst-plugins-good/gst/debugutils/meson.build index 4964a28be7..5a159daae7 100644 --- a/subprojects/gst-plugins-good/gst/debugutils/meson.build +++ b/subprojects/gst-plugins-good/gst/debugutils/meson.build @@ -1,14 +1,21 @@ -gstnavigationtest = library('gstnavigationtest', +navigationtest_sources = [ 'gstnavigationtest.c', - c_args : gst_plugins_good_args, - include_directories : [configinc], - dependencies : [gstbase_dep, gstvideo_dep, libm], - install : true, - install_dir : plugins_install_dir, -) -plugins += [gstnavigationtest] +] -gstdebug = library('gstdebug', +navigationtest_headers = [ + 'gstnavigationtest.h', +] + +doc_sources = [] +foreach s: navigationtest_sources + navigationtest_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'navigationtest': pathsep.join(doc_sources) +} + +debug_sources = [ 'gstdebug.c', 'breakmydata.c', 'gstcapssetter.c', @@ -20,6 +27,44 @@ gstdebug = library('gstdebug', 'tests.c', 'cpureport.c', 'testplugin.c', +] + +debug_headers = [ + 'cpureport.h', + 'gstcapsdebug.h', + 'gstcapssetter.h', + 'gstdebugutilselements.h', + 'gstnavseek.h', + 'gstpushfilesrc.h', + 'gsttaginject.h', + 'progressreport.h', +] + +doc_sources = [] +foreach s: debug_sources + debug_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'debug': pathsep.join(doc_sources) +} + +if get_option('debugutils').disabled() + subdir_done() +endif + +gstnavigationtest = library('gstnavigationtest', + navigationtest_sources, + c_args : gst_plugins_good_args, + include_directories : [configinc], + dependencies : [gstbase_dep, gstvideo_dep, libm], + install : true, + install_dir : plugins_install_dir, +) +plugins += [gstnavigationtest] + +gstdebug = library('gstdebug', + debug_sources, c_args: gst_plugins_good_args, include_directories : [configinc], dependencies : [gst_dep, gstbase_dep, gstvideo_dep], diff --git a/subprojects/gst-plugins-good/gst/deinterlace/meson.build b/subprojects/gst-plugins-good/gst/deinterlace/meson.build index c85a58f618..e58245b041 100644 --- a/subprojects/gst-plugins-good/gst/deinterlace/meson.build +++ b/subprojects/gst-plugins-good/gst/deinterlace/meson.build @@ -14,6 +14,26 @@ interlace_sources = [ 'yadif.c' ] +interlace_headers = [ + 'tvtime-dist.h', + 'gstdeinterlacemethod.h', + 'yadif.h', + 'gstdeinterlace.h', +] + +doc_sources = [] +foreach s: interlace_sources + interlace_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'deinterlace': pathsep.join(doc_sources) +} + +if get_option('deinterlace').disabled() + subdir_done() +endif + orcsrc = 'tvtime' if have_orcc orc_h = custom_target(orcsrc + '.h', @@ -97,4 +117,3 @@ gstdeinterlace = library('gstdeinterlace', install_dir : plugins_install_dir, ) plugins += [gstdeinterlace] - diff --git a/subprojects/gst-plugins-good/gst/dtmf/meson.build b/subprojects/gst-plugins-good/gst/dtmf/meson.build index f9f63d5d92..83d40627a0 100644 --- a/subprojects/gst-plugins-good/gst/dtmf/meson.build +++ b/subprojects/gst-plugins-good/gst/dtmf/meson.build @@ -5,6 +5,26 @@ dtmf_sources = [ 'gstdtmf.c' ] +dtmf_headers = [ + 'gstdtmfsrc.h', + 'gstrtpdtmfdepay.h', + 'gstrtpdtmfsrc.h', + 'gstdtmfcommon.h', +] + +doc_sources = [] +foreach s: dtmf_sources + dtmf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dtmf': pathsep.join(doc_sources) +} + +if get_option('dtmf').disabled() + subdir_done() +endif + gstdtmf = library('gstdtmf', dtmf_sources, c_args : gst_plugins_good_args, @@ -14,4 +34,3 @@ gstdtmf = library('gstdtmf', install_dir : plugins_install_dir, ) plugins += [gstdtmf] - diff --git a/subprojects/gst-plugins-good/gst/effectv/meson.build b/subprojects/gst-plugins-good/gst/effectv/meson.build index 852d968ec0..164e20604f 100644 --- a/subprojects/gst-plugins-good/gst/effectv/meson.build +++ b/subprojects/gst-plugins-good/gst/effectv/meson.build @@ -4,6 +4,35 @@ effect_sources = [ 'gstradioac.c', 'gststreak.c', 'gstripple.c' ] +effect_headers = [ + 'gstop.h', + 'gstdice.h', + 'gstrev.h', + 'gstwarp.h', + 'gstaging.h', + 'gstquark.h', + 'gsteffectv.h', + 'gstshagadelic.h', + 'gstripple.h', + 'gstradioac.h', + 'gstedge.h', + 'gststreak.h', + 'gstvertigo.h', +] + +doc_sources = [] +foreach s: effect_sources + effect_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'effectv': pathsep.join(doc_sources) +} + +if get_option('effectv').disabled() + subdir_done() +endif + gsteffectv = library('gsteffectv', effect_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/equalizer/meson.build b/subprojects/gst-plugins-good/gst/equalizer/meson.build index a1bd40f18c..fa82cffcff 100644 --- a/subprojects/gst-plugins-good/gst/equalizer/meson.build +++ b/subprojects/gst-plugins-good/gst/equalizer/meson.build @@ -7,6 +7,26 @@ eq_sources = [ 'gstiirequalizerplugin.c', ] +eq_headers = [ + 'gstiirequalizernbands.h', + 'gstiirequalizer3bands.h', + 'gstiirequalizer.h', + 'gstiirequalizer10bands.h', +] + +doc_sources = [] +foreach s: eq_sources + eq_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'equalizer': pathsep.join(doc_sources) +} + +if get_option('equalizer').disabled() + subdir_done() +endif + gstequalizer = library('gstequalizer', eq_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/flv/meson.build b/subprojects/gst-plugins-good/gst/flv/meson.build index cf21dd1888..431e4d71dd 100644 --- a/subprojects/gst-plugins-good/gst/flv/meson.build +++ b/subprojects/gst-plugins-good/gst/flv/meson.build @@ -1,5 +1,33 @@ +flv_sources = [ + 'gstflvdemux.c', + 'gstflvmux.c', + 'gstflvplugin.c', + 'gstflvelement.c', +] + +flv_headers = [ + 'gstflvelements.h', + 'gstindex.h', + 'gstflvmux.h', + 'amfdefs.h', + 'gstflvdemux.h', +] + +doc_sources = [] +foreach s: flv_sources + flv_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'flv': pathsep.join(doc_sources) +} + +if get_option('flv').disabled() + subdir_done() +endif + gstflv = library('gstflv', - 'gstflvdemux.c', 'gstflvmux.c', 'gstflvplugin.c','gstflvelement.c', + flv_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstpbutils_dep, gstvideo_dep, gsttag_dep, gstaudio_dep], diff --git a/subprojects/gst-plugins-good/gst/flx/meson.build b/subprojects/gst-plugins-good/gst/flx/meson.build index c766eba291..5bc4e8be87 100644 --- a/subprojects/gst-plugins-good/gst/flx/meson.build +++ b/subprojects/gst-plugins-good/gst/flx/meson.build @@ -1,5 +1,29 @@ +flxdec_sources = [ + 'gstflxdec.c', + 'flx_color.c', +] + +flxdec_headers = [ + 'gstflxdec.h', + 'flx_color.h', + 'flx_fmt.h', +] + +doc_sources = [] +foreach s: flxdec_sources + flxdec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'flxdec': pathsep.join(doc_sources) +} + +if get_option('flx').disabled() + subdir_done() +endif + flxdec = library('gstflxdec', - 'gstflxdec.c', 'flx_color.c', + flxdec_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstvideo_dep, gst_dep], diff --git a/subprojects/gst-plugins-good/gst/goom/meson.build b/subprojects/gst-plugins-good/gst/goom/meson.build index a6fee06fb7..0496d9791e 100644 --- a/subprojects/gst-plugins-good/gst/goom/meson.build +++ b/subprojects/gst-plugins-good/gst/goom/meson.build @@ -18,6 +18,46 @@ goom_sources = [ 'graphic.c', ] +goom_headers = [ + 'surf3d.h', + 'gstgoom.h', + 'goom.h', + 'ppc_drawings.h', + 'lines.h', + 'ifs.h', + 'sound_tester.h', + 'v3d.h', + 'motif_goom1.h', + 'drawmethods.h', + 'ppc_zoom_ultimate.h', + 'goom_typedefs.h', + 'goom_plugin_info.h', + 'mmx.h', + 'goom_tools.h', + 'mathtools.h', + 'goom_config_param.h', + 'xmmx.h', + 'motif_goom2.h', + 'tentacle3d.h', + 'goom_graphic.h', + 'goom_config.h', + 'goom_visual_fx.h', + 'goom_fx.h', + 'goom_filters.h', +] + +doc_sources = [] +foreach s: goom_sources + goom_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'goom': pathsep.join(doc_sources) +} + +if get_option('goom').disabled() + subdir_done() +endif gstgoom = library('gstgoom', goom_sources, diff --git a/subprojects/gst-plugins-good/gst/goom2k1/meson.build b/subprojects/gst-plugins-good/gst/goom2k1/meson.build index 1512d59c2f..1d8d378d1e 100644 --- a/subprojects/gst-plugins-good/gst/goom2k1/meson.build +++ b/subprojects/gst-plugins-good/gst/goom2k1/meson.build @@ -29,6 +29,28 @@ goom2k1_sources = [ 'lines.c' ] +goom2k1_headers = [ + 'gstgoom.h', + 'lines.h', + 'goom_tools.h', + 'filters.h', + 'goom_core.h', + 'graphic.h', +] + +doc_sources = [] +foreach s: goom2k1_sources + goom2k1_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'goom2k1': pathsep.join(doc_sources) +} + +if get_option('goom2k1').disabled() + subdir_done() +endif + gstgoom2k1 = library('gstgoom2k1', goom2k1_sources, c_args : gst_plugins_good_args + goom2k1_args + filter_args, diff --git a/subprojects/gst-plugins-good/gst/icydemux/meson.build b/subprojects/gst-plugins-good/gst/icydemux/meson.build index effc8ce88c..22b4fa7f00 100644 --- a/subprojects/gst-plugins-good/gst/icydemux/meson.build +++ b/subprojects/gst-plugins-good/gst/icydemux/meson.build @@ -1,5 +1,26 @@ -gsticydemux = library('gsticydemux', +icydemux_sources = [ 'gsticydemux.c', +] + +icydemux_headers = [ + 'gsticydemux.h', +] + +doc_sources = [] +foreach s: icydemux_sources + icydemux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'icydemux': pathsep.join(doc_sources) +} + +if get_option('icydemux').disabled() + subdir_done() +endif + +gsticydemux = library('gsticydemux', + icydemux_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gst_dep, gstbase_dep, gsttag_dep, zlib_dep], diff --git a/subprojects/gst-plugins-good/gst/id3demux/meson.build b/subprojects/gst-plugins-good/gst/id3demux/meson.build index 6d43d78149..d6627a587e 100644 --- a/subprojects/gst-plugins-good/gst/id3demux/meson.build +++ b/subprojects/gst-plugins-good/gst/id3demux/meson.build @@ -1,5 +1,26 @@ -gstid3demux = library('gstid3demux', +id3demux_sources = [ 'gstid3demux.c', +] + +id3demux_headers = [ + 'gstid3demux.h', +] + +doc_sources = [] +foreach s: id3demux_sources + id3demux_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'id3demux': pathsep.join(doc_sources) +} + +if get_option('id3demux').disabled() + subdir_done() +endif + +gstid3demux = library('gstid3demux', + id3demux_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gst_dep, gstbase_dep, gsttag_dep, gstpbutils_dep], diff --git a/subprojects/gst-plugins-good/gst/imagefreeze/meson.build b/subprojects/gst-plugins-good/gst/imagefreeze/meson.build index 01718a4e38..7c9c83f8fd 100644 --- a/subprojects/gst-plugins-good/gst/imagefreeze/meson.build +++ b/subprojects/gst-plugins-good/gst/imagefreeze/meson.build @@ -1,5 +1,26 @@ -gstimagefreeze = library('gstimagefreeze', +imagefreeze_sources = [ 'gstimagefreeze.c', +] + +imagefreeze_headers = [ + 'gstimagefreeze.h', +] + +doc_sources = [] +foreach s: imagefreeze_sources + imagefreeze_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'imagefreeze': pathsep.join(doc_sources) +} + +if get_option('imagefreeze').disabled() + subdir_done() +endif + +gstimagefreeze = library('gstimagefreeze', + imagefreeze_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gst_dep], diff --git a/subprojects/gst-plugins-good/gst/interleave/meson.build b/subprojects/gst-plugins-good/gst/interleave/meson.build index d0930ea6a4..fd38e1eea1 100644 --- a/subprojects/gst-plugins-good/gst/interleave/meson.build +++ b/subprojects/gst-plugins-good/gst/interleave/meson.build @@ -1,5 +1,30 @@ +interleave_sources = [ + 'plugin.c', + 'interleave.c', + 'deinterleave.c', +] + +interleave_headers = [ + 'deinterleave.h', + 'gstinterleaveelements.h', + 'interleave.h', +] + +doc_sources = [] +foreach s: interleave_sources + interleave_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'interleave': pathsep.join(doc_sources) +} + +if get_option('interleave').disabled() + subdir_done() +endif + gstinterleave = library('gstinterleave', - 'plugin.c', 'interleave.c', 'deinterleave.c', + interleave_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstbase_dep, gstaudio_dep], diff --git a/subprojects/gst-plugins-good/gst/isomp4/meson.build b/subprojects/gst-plugins-good/gst/isomp4/meson.build index 19137be4e3..110fc482b4 100644 --- a/subprojects/gst-plugins-good/gst/isomp4/meson.build +++ b/subprojects/gst-plugins-good/gst/isomp4/meson.build @@ -19,6 +19,44 @@ mp4_sources = [ 'gstqtmuxmap.c' ] +mp4_headers = [ + 'qtdemux.h', + 'gstqtmux.h', + 'gstisoff.h', + 'qtdemux_dump.h', + 'qtdemux_lang.h', + 'qtpalette.h', + 'gstisomp4elements.h', + 'gstrtpxqtdepay.h', + 'gstqtmoovrecover.h', + 'qtdemux_types.h', + 'properties.h', + 'qtdemux_debug.h', + 'qtdemux_tags.h', + 'gstqtmux-doc.h', + 'qtdemux-webvtt.h', + 'atoms.h', + 'descriptors.h', + 'gstqtmuxmap.h', + 'fourcc.h', + 'atomsrecovery.h', + 'qtdemux_tree.h', + 'qtatomparser.h', +] + +doc_sources = [] +foreach s: mp4_sources + mp4_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'isomp4': pathsep.join(doc_sources) +} + +if get_option('isomp4').disabled() + subdir_done() +endif + gstisomp4 = library('gstisomp4', mp4_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/law/meson.build b/subprojects/gst-plugins-good/gst/law/meson.build index 55a556b49d..90e2a6f47a 100644 --- a/subprojects/gst-plugins-good/gst/law/meson.build +++ b/subprojects/gst-plugins-good/gst/law/meson.build @@ -1,5 +1,51 @@ +alaw_sources = [ + 'alaw-encode.c', + 'alaw-decode.c', + 'alaw.c', +] + +alaw_headers = [ + 'alaw-decode.h', + 'alaw-encode.h', +] + +mulaw_sources = [ + 'mulaw-encode.c', + 'mulaw-conversion.c', + 'mulaw-decode.c', + 'mulaw.c', +] + +mulaw_headers = [ + 'mulaw-conversion.h', + 'mulaw-decode.h', + 'mulaw-encode.h', +] + +doc_sources = [] +foreach s: alaw_sources + alaw_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'alaw': pathsep.join(doc_sources) +} + +doc_sources = [] +foreach s: mulaw_sources + mulaw_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mulaw': pathsep.join(doc_sources) +} + +if get_option('law').disabled() + subdir_done() +endif + gstalaw = library('gstalaw', - 'alaw-encode.c', 'alaw-decode.c', 'alaw.c', + alaw_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep], @@ -9,7 +55,7 @@ gstalaw = library('gstalaw', plugins += [gstalaw] gstmulaw = library('gstmulaw', - 'mulaw-encode.c', 'mulaw-conversion.c', 'mulaw-decode.c', 'mulaw.c', + mulaw_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep], diff --git a/subprojects/gst-plugins-good/gst/level/meson.build b/subprojects/gst-plugins-good/gst/level/meson.build index 88419d3d73..6db83c081e 100644 --- a/subprojects/gst-plugins-good/gst/level/meson.build +++ b/subprojects/gst-plugins-good/gst/level/meson.build @@ -1,5 +1,26 @@ -gstlevel = library('gstlevel', +level_sources = [ 'gstlevel.c', +] + +level_headers = [ + 'gstlevel.h', +] + +doc_sources = [] +foreach s: level_sources + level_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'level': pathsep.join(doc_sources) +} + +if get_option('level').disabled() + subdir_done() +endif + +gstlevel = library('gstlevel', + level_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep, libm], diff --git a/subprojects/gst-plugins-good/gst/matroska/meson.build b/subprojects/gst-plugins-good/gst/matroska/meson.build index ab2b6c6261..3dc9292f40 100644 --- a/subprojects/gst-plugins-good/gst/matroska/meson.build +++ b/subprojects/gst-plugins-good/gst/matroska/meson.build @@ -12,6 +12,33 @@ matroska_sources = [ 'lzo.c', ] +matroska_headers = [ + 'ebml-ids.h', + 'ebml-read.h', + 'webm-mux.h', + 'matroska-demux.h', + 'ebml-write.h', + 'matroska-ids.h', + 'matroska-parse.h', + 'gstmatroskaelements.h', + 'matroska-read-common.h', + 'matroska-mux.h', + 'lzo.h', +] + +doc_sources = [] +foreach s: matroska_sources + matroska_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'matroska': pathsep.join(doc_sources) +} + +if get_option('matroska').disabled() + subdir_done() +endif + bz2_dep = cc.find_library('bz2', required : get_option('bz2')) cdata.set('HAVE_BZ2', bz2_dep.found() and cc.has_header('bzlib.h')) diff --git a/subprojects/gst-plugins-good/gst/meson.build b/subprojects/gst-plugins-good/gst/meson.build index 4dfe3b7857..1a2902540c 100644 --- a/subprojects/gst-plugins-good/gst/meson.build +++ b/subprojects/gst-plugins-good/gst/meson.build @@ -7,7 +7,5 @@ foreach plugin : ['alpha', 'apetag', 'audiofx', 'audioparsers', 'auparse', 'rtpmanager', 'rtsp', 'shapewipe', 'smpte', 'spectrum', 'udp', 'videobox', 'videocrop', 'videofilter', 'videomixer', 'wavenc', 'wavparse', 'xingmux', 'y4m'] - if not get_option(plugin).disabled() - subdir(plugin) - endif + subdir(plugin) endforeach diff --git a/subprojects/gst-plugins-good/gst/monoscope/meson.build b/subprojects/gst-plugins-good/gst/monoscope/meson.build index 9a0b21b515..a3c2856469 100644 --- a/subprojects/gst-plugins-good/gst/monoscope/meson.build +++ b/subprojects/gst-plugins-good/gst/monoscope/meson.build @@ -1,7 +1,30 @@ -gstmonoscope = library('gstmonoscope', +monoscope_sources = [ 'gstmonoscope.c', 'monoscope.c', 'convolve.c', +] + +monoscope_headers = [ + 'gstmonoscope.h', + 'convolve.h', + 'monoscope.h', +] + +doc_sources = [] +foreach s: monoscope_sources + monoscope_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'monoscope': pathsep.join(doc_sources) +} + +if get_option('monoscope').disabled() + subdir_done() +endif + +gstmonoscope = library('gstmonoscope', + monoscope_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep, gstvideo_dep], diff --git a/subprojects/gst-plugins-good/gst/multifile/meson.build b/subprojects/gst-plugins-good/gst/multifile/meson.build index ad0559bc65..3c8ed25fc0 100644 --- a/subprojects/gst-plugins-good/gst/multifile/meson.build +++ b/subprojects/gst-plugins-good/gst/multifile/meson.build @@ -11,8 +11,33 @@ multifile_sources = [ 'gstimagesequencesrc.c', ] +multifile_headers = [ + 'gstimagesequencesrc.h', + 'gstmultifilesink.h', + 'gstmultifilesrc.h', + 'gstsplitfilesrc.h', + 'gstsplitmuxpartreader.h', + 'gstsplitmuxsink.h', + 'gstsplitmuxsrc.h', + 'gstsplitutils.h', + 'patternspec.h', +] + +doc_sources = [] +foreach s: multifile_sources + multifile_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'multifile': pathsep.join(doc_sources) +} + +if get_option('multifile').disabled() + subdir_done() +endif + gstmultifile = library('gstmultifile', - multifile_sources, + multifile_sources + multifile_headers, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstvideo_dep, gstbase_dep, diff --git a/subprojects/gst-plugins-good/gst/multipart/meson.build b/subprojects/gst-plugins-good/gst/multipart/meson.build index b3e647a57c..91e6cfde3b 100644 --- a/subprojects/gst-plugins-good/gst/multipart/meson.build +++ b/subprojects/gst-plugins-good/gst/multipart/meson.build @@ -1,7 +1,29 @@ -gstmultipart = library('gstmultipart', +multipart_sources = [ 'multipart.c', 'multipartdemux.c', 'multipartmux.c', +] + +multipart_headers = [ + 'multipartmux.h', + 'multipartdemux.h', +] + +doc_sources = [] +foreach s: multipart_sources + multipart_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'multipart': pathsep.join(doc_sources) +} + +if get_option('multipart').disabled() + subdir_done() +endif + +gstmultipart = library('gstmultipart', + multipart_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep], diff --git a/subprojects/gst-plugins-good/gst/replaygain/meson.build b/subprojects/gst-plugins-good/gst/replaygain/meson.build index 9ca2255d16..bfa28a5574 100644 --- a/subprojects/gst-plugins-good/gst/replaygain/meson.build +++ b/subprojects/gst-plugins-good/gst/replaygain/meson.build @@ -6,6 +6,27 @@ replaygain_sources = [ 'rganalysis.c', ] +replaygain_headers = [ + 'replaygain.h', + 'gstrglimiter.h', + 'rganalysis.h', + 'gstrgvolume.h', + 'gstrganalysis.h', +] + +doc_sources = [] +foreach s: replaygain_sources + replaygain_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'replaygain': pathsep.join(doc_sources) +} + +if get_option('replaygain').disabled() + subdir_done() +endif + gstreplaygain = library('gstreplaygain', replaygain_sources, c_args : gst_plugins_good_args, @@ -15,4 +36,3 @@ gstreplaygain = library('gstreplaygain', install_dir : plugins_install_dir, ) plugins += [gstreplaygain] - diff --git a/subprojects/gst-plugins-good/gst/rtp/meson.build b/subprojects/gst-plugins-good/gst/rtp/meson.build index 000b91d7ef..84cb42d77a 100644 --- a/subprojects/gst-plugins-good/gst/rtp/meson.build +++ b/subprojects/gst-plugins-good/gst/rtp/meson.build @@ -110,12 +110,138 @@ rtp_sources = [ 'gstrtpisacpay.c', ] +rtp_headers = [ + 'gstrtpgsmdepay.h', + 'gstrtpklvpay.h', + 'gstrtpac3pay.h', + 'gstrtpg726depay.h', + 'gstrtpmp4vpay.h', + 'gstrtpgstpay.h', + 'gstrtpj2kcommon.h', + 'gstrtppcmadepay.h', + 'gstrtph263pay.h', + 'gstrtpg729depay.h', + 'gstrtpbvpay.h', + 'gstrtpreddec.h', + 'gstrtpldacpay.h', + 'gstrtph263depay.h', + 'gstrtpulpfecdec.h', + 'gstrtpg726pay.h', + 'gstrtph264pay.h', + 'rtpulpfeccommon.h', + 'gstrtpdvdepay.h', + 'gstrtpL24pay.h', + 'gstrtpceltpay.h', + 'gstrtpvp9depay.h', + 'gstrtpamrdepay.h', + 'gstrtpjpegdepay.h', + 'gstrtpulpfecenc.h', + 'gstrtpmpvdepay.h', + 'gstrtppcmapay.h', + 'gstrtpmpadepay.h', + 'gstrtpspeexpay.h', + 'gstrtpmp2tdepay.h', + 'gstrtpqcelpdepay.h', + 'gstrtpdvpay.h', + 'gstrtpilbcdepay.h', + 'gstrtpsbcdepay.h', + 'rtpredcommon.h', + 'gstrtpvp9pay.h', + 'gstrtpmp4gdepay.h', + 'gstrtpL8depay.h', + 'gstrtph265pay.h', + 'gstrtpvp8pay.h', + 'gstrtpmp2tpay.h', + 'gstrtpmp4gpay.h', + 'gstrtpmp1sdepay.h', + 'gstrtpvrawdepay.h', + 'gstrtptheoradepay.h', + 'gstrtppcmupay.h', + 'gstrtpsbcpay.h', + 'gstrtpstreampay.h', + 'gstrtpredenc.h', + 'gstrtpj2kdepay.h', + 'gstrtpgsmpay.h', + 'gstbuffermemory.h', + 'gstrtpstorage.h', + 'gstrtpklvdepay.h', + 'gstrtpmp4vdepay.h', + 'gstrtpopusdepay.h', + 'gstrtpac3depay.h', + 'gstrtpgstdepay.h', + 'gstrtphdrext-colorspace.h', + 'gstrtph265types.h', + 'gstrtpopuspay.h', + 'gstrtpstreamdepay.h', + 'gstrtpj2kpay.h', + 'gstrtpmpapay.h', + 'dboolhuff.h', + 'gstrtph261depay.h', + 'gstrtpsirenpay.h', + 'gstrtppcmudepay.h', + 'gstrtpjpegpay.h', + 'rtpstoragestream.h', + 'gstrtph265depay.h', + 'gstrtpg729pay.h', + 'gstrtpL16pay.h', + 'gstrtph263ppay.h', + 'gstrtpg723pay.h', + 'gstrtpisacdepay.h', + 'gstrtpvorbisdepay.h', + 'gstrtpmpvpay.h', + 'gstrtpg722pay.h', + 'gstrtptheorapay.h', + 'gstrtph261pay.h', + 'gstrtpilbcpay.h', + 'gstrtpvorbispay.h', + 'gstrtpmparobustdepay.h', + 'rtpstorage.h', + 'gstrtph263pdepay.h', + 'gstrtputils.h', + 'gstasteriskh263.h', + 'gstrtpbvdepay.h', + 'gstrtpL16depay.h', + 'gstrtpg722depay.h', + 'gstrtpL8pay.h', + 'gstrtpqdmdepay.h', + 'gstrtpL24depay.h', + 'gstrtpg723depay.h', + 'gstrtpchannels.h', + 'gstrtph264depay.h', + 'gstrtpmp4adepay.h', + 'gstrtpsv3vdepay.h', + 'gstrtpmp4apay.h', + 'gstrtpelements.h', + 'gstrtpspeexdepay.h', + 'gstrtpceltdepay.h', + 'gstrtpamrpay.h', + 'gstrtpsirendepay.h', + 'fnv1hash.h', + 'gstrtppassthroughpay.h', + 'gstrtpvrawpay.h', + 'gstrtpvp8depay.h', + 'gstrtpisacpay.h', +] + rtp_args = [ '-Dvp8_norm=gst_rtpvp8_vp8_norm', '-Dvp8dx_start_decode=gst_rtpvp8_vp8dx_start_decode', '-Dvp8dx_bool_decoder_fill=gst_rtpvp8_vp8dx_bool_decoder_fill', ] +doc_sources = [] +foreach s: rtp_sources + rtp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtp': pathsep.join(doc_sources) +} + +if get_option('rtp').disabled() + subdir_done() +endif + gstrtp = library('gstrtp', rtp_sources, c_args : gst_plugins_good_args + rtp_args, diff --git a/subprojects/gst-plugins-good/gst/rtpmanager/meson.build b/subprojects/gst-plugins-good/gst/rtpmanager/meson.build index 11435d902f..3a59b79d8e 100644 --- a/subprojects/gst-plugins-good/gst/rtpmanager/meson.build +++ b/subprojects/gst-plugins-good/gst/rtpmanager/meson.build @@ -28,6 +28,48 @@ rtpmanager_sources = [ 'gstrtputils.c' ] +rtpmanager_headers = [ + 'gstrtprtxreceive.h', + 'rtpsession.h', + 'gstrtphdrext-repairedstreamid.h', + 'gstrtprtxqueue.h', + 'rtpsource.h', + 'gstrtpptdemux.h', + 'gstrtpmux.h', + 'gstrtphdrext-mid.h', + 'rtptwcc.h', + 'gstrtprtxsend.h', + 'gstrtphdrext-streamid.h', + 'gstrtpst2022-1-fecenc.h', + 'rtpjitterbuffer.h', + 'rtpstats.h', + 'gstrtpssrcdemux.h', + 'gstrtpbin.h', + 'gstrtphdrext-twcc.h', + 'gstrtphdrext-clientaudiolevel.h', + 'gstrtpfunnel.h', + 'gstrtpjitterbuffer.h', + 'rtptimerqueue.h', + 'gstrtputils.h', + 'gstrtpsession.h', + 'gstrtphdrext-ntp.h', + 'gstrtpst2022-1-fecdec.h', + 'gstrtpdtmfmux.h', +] + +doc_sources = [] +foreach s: rtpmanager_sources + rtpmanager_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtpmanager': pathsep.join(doc_sources) +} + +if get_option('rtpmanager').disabled() + subdir_done() +endif + gstrtpmanager = library('gstrtpmanager', rtpmanager_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/rtsp/meson.build b/subprojects/gst-plugins-good/gst/rtsp/meson.build index 300e85a15a..0cbdc008b4 100644 --- a/subprojects/gst-plugins-good/gst/rtsp/meson.build +++ b/subprojects/gst-plugins-good/gst/rtsp/meson.build @@ -6,6 +6,26 @@ rtsp_sources = [ 'gstrtspext.c', ] +rtsp_headers = [ + 'gstrtpdec.h', + 'gstrtspelements.h', + 'gstrtspsrc.h', + 'gstrtspext.h', +] + +doc_sources = [] +foreach s: rtsp_sources + rtsp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtsp': pathsep.join(doc_sources) +} + +if get_option('rtsp').disabled() + subdir_done() +endif + gstrtsp = library('gstrtsp', rtsp_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/shapewipe/meson.build b/subprojects/gst-plugins-good/gst/shapewipe/meson.build index 6132d59956..e359ef06f9 100644 --- a/subprojects/gst-plugins-good/gst/shapewipe/meson.build +++ b/subprojects/gst-plugins-good/gst/shapewipe/meson.build @@ -1,5 +1,26 @@ -gstshapewipe = library('gstshapewipe', +shapewipe_sources = [ 'gstshapewipe.c', +] + +shapewipe_headers = [ + 'gstshapewipe.h', +] + +doc_sources = [] +foreach s: shapewipe_sources + shapewipe_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'shapewipe': pathsep.join(doc_sources) +} + +if get_option('shapewipe').disabled() + subdir_done() +endif + +gstshapewipe = library('gstshapewipe', + shapewipe_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gst_dep, gstvideo_dep, gio_dep], diff --git a/subprojects/gst-plugins-good/gst/smpte/meson.build b/subprojects/gst-plugins-good/gst/smpte/meson.build index 904da95e20..772647f5f6 100644 --- a/subprojects/gst-plugins-good/gst/smpte/meson.build +++ b/subprojects/gst-plugins-good/gst/smpte/meson.build @@ -7,6 +7,26 @@ smpte_sources = [ 'plugin.c', ] +smpte_headers = [ + 'gstsmptealpha.h', + 'paint.h', + 'gstmask.h', + 'gstsmpte.h', +] + +doc_sources = [] +foreach s: smpte_sources + smpte_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'smpte': pathsep.join(doc_sources) +} + +if get_option('smpte').disabled() + subdir_done() +endif + gstsmpte = library('gstsmpte', smpte_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/spectrum/meson.build b/subprojects/gst-plugins-good/gst/spectrum/meson.build index df206673de..c7f5fe25bc 100644 --- a/subprojects/gst-plugins-good/gst/spectrum/meson.build +++ b/subprojects/gst-plugins-good/gst/spectrum/meson.build @@ -1,5 +1,26 @@ -gstspectrum = library('gstspectrum', +spectrum_sources = [ 'gstspectrum.c', +] + +spectrum_headers = [ + 'gstspectrum.h', +] + +doc_sources = [] +foreach s: spectrum_sources + spectrum_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'spectrum': pathsep.join(doc_sources) +} + +if get_option('spectrum').disabled() + subdir_done() +endif + +gstspectrum = library('gstspectrum', + spectrum_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstfft_dep, gstaudio_dep, libm], diff --git a/subprojects/gst-plugins-good/gst/udp/meson.build b/subprojects/gst-plugins-good/gst/udp/meson.build index c126672e40..1cde77c888 100644 --- a/subprojects/gst-plugins-good/gst/udp/meson.build +++ b/subprojects/gst-plugins-good/gst/udp/meson.build @@ -8,6 +8,28 @@ udp_sources = [ 'gstudpnetutils.c' ] +udp_headers = [ + 'gstmultiudpsink.h', + 'gstudpnetutils.h', + 'gstudpelements.h', + 'gstudpsrc.h', + 'gstdynudpsink.h', + 'gstudpsink.h', +] + +doc_sources = [] +foreach s: udp_sources + udp_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'udp': pathsep.join(doc_sources) +} + +if get_option('udp').disabled() + subdir_done() +endif + gstudp = library('gstudp', udp_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/videobox/meson.build b/subprojects/gst-plugins-good/gst/videobox/meson.build index 0b3d4cfbed..c1a0c038c5 100644 --- a/subprojects/gst-plugins-good/gst/videobox/meson.build +++ b/subprojects/gst-plugins-good/gst/videobox/meson.build @@ -1,3 +1,24 @@ +videobox_sources = [ + 'gstvideobox.c', +] + +videobox_headers = [ + 'gstvideobox.h', +] + +doc_sources = [] +foreach s: videobox_sources + videobox_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videobox': pathsep.join(doc_sources) +} + +if get_option('videobox').disabled() + subdir_done() +endif + orcsrc = 'gstvideoboxorc' if have_orcc orc_h = custom_target(orcsrc + '.h', @@ -19,7 +40,7 @@ else endif gstvideobox = library('gstvideobox', - 'gstvideobox.c', orc_c, orc_h, + videobox_sources + [orc_c, orc_h], c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [orc_dep, gstbase_dep, gstvideo_dep], diff --git a/subprojects/gst-plugins-good/gst/videocrop/meson.build b/subprojects/gst-plugins-good/gst/videocrop/meson.build index b9df010e6b..92689eff3a 100644 --- a/subprojects/gst-plugins-good/gst/videocrop/meson.build +++ b/subprojects/gst-plugins-good/gst/videocrop/meson.build @@ -1,5 +1,30 @@ +videocrop_sources = [ + 'gstvideocrop.c', + 'gstaspectratiocrop.c', + 'gstvideocropplugin.c', +] + +videocrop_headers = [ + 'gstaspectratiocrop.h', + 'gstvideocrop-private.h', + 'gstvideocrop.h', +] + +doc_sources = [] +foreach s: videocrop_sources + videocrop_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videocrop': pathsep.join(doc_sources) +} + +if get_option('videocrop').disabled() + subdir_done() +endif + gstvideocrop = library('gstvideocrop', - 'gstvideocrop.c', 'gstaspectratiocrop.c', 'gstvideocropplugin.c', + videocrop_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gst_dep, gstbase_dep, gstvideo_dep], diff --git a/subprojects/gst-plugins-good/gst/videofilter/meson.build b/subprojects/gst-plugins-good/gst/videofilter/meson.build index d7b6788bef..7ec73753a4 100644 --- a/subprojects/gst-plugins-good/gst/videofilter/meson.build +++ b/subprojects/gst-plugins-good/gst/videofilter/meson.build @@ -6,6 +6,26 @@ vfilter_sources = [ 'gstvideomedian.c', ] +vfilter_headers = [ + 'gstvideomedian.h', + 'gstvideoflip.h', + 'gstvideobalance.h', + 'gstgamma.h', +] + +doc_sources = [] +foreach s: vfilter_sources + vfilter_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videofilter': pathsep.join(doc_sources) +} + +if get_option('videofilter').disabled() + subdir_done() +endif + gstvideofilter = library('gstvideofilter', vfilter_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/videomixer/meson.build b/subprojects/gst-plugins-good/gst/videomixer/meson.build index 09f21ba4e7..2ef68fd651 100644 --- a/subprojects/gst-plugins-good/gst/videomixer/meson.build +++ b/subprojects/gst-plugins-good/gst/videomixer/meson.build @@ -3,6 +3,25 @@ vmixer_sources = [ 'videomixer2.c', ] +vmixer_headers = [ + 'videomixer2pad.h', + 'blend.h', + 'videomixer2.h', +] + +doc_sources = [] +foreach s: vmixer_sources + vmixer_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'videomixer': pathsep.join(doc_sources) +} + +if get_option('videomixer').disabled() + subdir_done() +endif + orcsrc = 'videomixerorc' if have_orcc orc_h = custom_target(orcsrc + '.h', diff --git a/subprojects/gst-plugins-good/gst/wavenc/meson.build b/subprojects/gst-plugins-good/gst/wavenc/meson.build index f3c7065a05..cb0a929430 100644 --- a/subprojects/gst-plugins-good/gst/wavenc/meson.build +++ b/subprojects/gst-plugins-good/gst/wavenc/meson.build @@ -1,5 +1,26 @@ -gstwavenc = library('gstwavenc', +wavenc_sources = [ 'gstwavenc.c', +] + +wavenc_headers = [ + 'gstwavenc.h', +] + +doc_sources = [] +foreach s: wavenc_sources + wavenc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wavenc': pathsep.join(doc_sources) +} + +if get_option('wavenc').disabled() + subdir_done() +endif + +gstwavenc = library('gstwavenc', + wavenc_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstaudio_dep, gstriff_dep], diff --git a/subprojects/gst-plugins-good/gst/wavparse/meson.build b/subprojects/gst-plugins-good/gst/wavparse/meson.build index 9899d5f9a9..e213e38a6e 100644 --- a/subprojects/gst-plugins-good/gst/wavparse/meson.build +++ b/subprojects/gst-plugins-good/gst/wavparse/meson.build @@ -1,5 +1,26 @@ -gstwawparse = library('gstwavparse', +wavparse_sources = [ 'gstwavparse.c', +] + +wavparse_headers = [ + 'gstwavparse.h', +] + +doc_sources = [] +foreach s: wavparse_sources + wavparse_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'wavparse': pathsep.join(doc_sources) +} + +if get_option('wavparse').disabled() + subdir_done() +endif + +gstwawparse = library('gstwavparse', + wavparse_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstbase_dep, gstpbutils_dep, gstriff_dep, gstaudio_dep, diff --git a/subprojects/gst-plugins-good/gst/xingmux/meson.build b/subprojects/gst-plugins-good/gst/xingmux/meson.build index ff8e9d7b1e..169aba801e 100644 --- a/subprojects/gst-plugins-good/gst/xingmux/meson.build +++ b/subprojects/gst-plugins-good/gst/xingmux/meson.build @@ -3,6 +3,23 @@ xing_sources = [ 'gstxingmux.c', ] +xing_headers = [ + 'gstxingmux.h', +] + +doc_sources = [] +foreach s: xing_sources + xing_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'xingmux': pathsep.join(doc_sources) +} + +if get_option('xingmux').disabled() + subdir_done() +endif + gstxingmux = library('gstxingmux', xing_sources, c_args : gst_plugins_good_args, diff --git a/subprojects/gst-plugins-good/gst/y4m/meson.build b/subprojects/gst-plugins-good/gst/y4m/meson.build index 412153d2e2..472dd27644 100644 --- a/subprojects/gst-plugins-good/gst/y4m/meson.build +++ b/subprojects/gst-plugins-good/gst/y4m/meson.build @@ -1,5 +1,26 @@ -gsty4menc = library('gsty4menc', +y4menc_sources = [ 'gsty4mencode.c', +] + +y4menc_headers = [ + 'gsty4mencode.h', +] + +doc_sources = [] +foreach s: y4menc_sources + y4menc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'y4menc': pathsep.join(doc_sources) +} + +if get_option('y4m').disabled() + subdir_done() +endif + +gsty4menc = library('gsty4menc', + y4menc_sources, c_args : gst_plugins_good_args, include_directories : [configinc], dependencies : [gstbase_dep, gstvideo_dep], diff --git a/subprojects/gst-plugins-good/meson.build b/subprojects/gst-plugins-good/meson.build index 237ed98cb2..1b49704385 100644 --- a/subprojects/gst-plugins-good/meson.build +++ b/subprojects/gst-plugins-good/meson.build @@ -35,6 +35,7 @@ api_version = '1.0' plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') plugins = [] +plugin_sources = {} static_build = get_option('default_library') == 'static' host_system = host_machine.system() @@ -518,6 +519,12 @@ if get_option('default_library') == 'shared' plugins_pkgconfig_install_dir = disabler() endif +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + subdir('gst') subdir('sys') subdir('ext') diff --git a/subprojects/gst-plugins-good/sys/directsound/meson.build b/subprojects/gst-plugins-good/sys/directsound/meson.build index c6b34f06d9..365ccae8a4 100644 --- a/subprojects/gst-plugins-good/sys/directsound/meson.build +++ b/subprojects/gst-plugins-good/sys/directsound/meson.build @@ -4,6 +4,11 @@ directsoundsink_sources = [ 'gstdirectsoundplugin.c', ] +directsoundsink_headers = [ + 'gstdirectsounddevice.h', + 'gstdirectsoundsink.h', +] + directsoundsink_device_flags = [ '-DGstDirectSoundDeviceProvider=GstDirectSoundSinkDeviceProvider', '-DGstDirectSoundDeviceProviderClass=GstDirectSoundSinkDeviceProviderClass', @@ -11,6 +16,15 @@ directsoundsink_device_flags = [ '-DGstDirectSoundDeviceClass=GstDirectSoundSinkDeviceClass', ] +doc_sources = [] +foreach s: directsoundsink_sources + directsoundsink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'directsound': pathsep.join(doc_sources) +} + have_dsound = false dsound_option = get_option('directsound') if host_system != 'windows' or dsound_option.disabled() diff --git a/subprojects/gst-plugins-good/sys/oss/meson.build b/subprojects/gst-plugins-good/sys/oss/meson.build index b91b5c02b2..36c1c9ee06 100644 --- a/subprojects/gst-plugins-good/sys/oss/meson.build +++ b/subprojects/gst-plugins-good/sys/oss/meson.build @@ -7,6 +7,34 @@ oss_header_locations = [ ['machine/soundcard.h', 'HAVE_OSS_INCLUDE_IN_MACHINE', 'OSS includes are in machine/'], ] +ossaudio_sources = [ + 'gstossaudio.c', + 'gstossaudioelement.c', + 'gstossdeviceprovider.c', + 'gstosshelper.c', + 'gstosssink.c', + 'gstosssrc.c', +] + +ossaudio_headers = [ + 'gstosshelper.h', + 'gstosssrc.h', + 'gstosssink.h', + 'gstossdeviceprovider.h', + 'common.h', + 'gstossaudioelements.h', + 'gstossdmabuffer.h', +] + +doc_sources = [] +foreach s: ossaudio_sources + ossaudio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ossaudio': pathsep.join(doc_sources) +} + have_oss = false oss_option = get_option('oss') if not oss_option.disabled() @@ -25,11 +53,13 @@ if not oss_option.disabled() endif if have_oss - plugins += [library('gstossaudio', - 'gstossaudio.c', 'gstossaudioelement.c', 'gstossdeviceprovider.c', 'gstosshelper.c', 'gstosssink.c', 'gstosssrc.c', + gstossaudio = library('gstossaudio', + ossaudio_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstaudio_dep, gstbase_dep], install : true, - install_dir : plugins_install_dir)] + install_dir : plugins_install_dir) + + plugins += [gstossaudio] endif diff --git a/subprojects/gst-plugins-good/sys/oss4/meson.build b/subprojects/gst-plugins-good/sys/oss4/meson.build index 414350d825..b25ea306ea 100644 --- a/subprojects/gst-plugins-good/sys/oss4/meson.build +++ b/subprojects/gst-plugins-good/sys/oss4/meson.build @@ -1,3 +1,28 @@ +oss4_sources = [ + 'gstoss4audioplugin.c', + 'oss4-audio.c', + 'oss4-property-probe.c', + 'oss4-sink.c', + 'oss4-source.c', +] + +oss4_headers = [ + 'oss4-property-probe.h', + 'oss4-sink.h', + 'oss4-audio.h', + 'oss4-soundcard.h', + 'oss4-source.h', +] + +doc_sources = [] +foreach s: oss4_sources + oss4_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'oss4': pathsep.join(doc_sources) +} + have_oss4 = false oss4_option = get_option('oss4') if not oss4_option.disabled() @@ -17,13 +42,15 @@ endif if have_oss4 message('Required headers found, building Open Sound System 4 plugin.') - plugins += [library('gstoss4', - 'gstoss4audioplugin.c', 'oss4-audio.c', 'oss4-property-probe.c', 'oss4-sink.c', 'oss4-source.c', + gstoss4 = library('gstoss4', + oss4_sources, c_args : gst_plugins_good_args, include_directories : [configinc, libsinc], dependencies : [gstaudio_dep, gstbase_dep], install : true, - install_dir : plugins_install_dir)] + install_dir : plugins_install_dir) + + plugins += [gstoss4] else message('Not building Open Sound System 4 plugin, required headers not found.') endif diff --git a/subprojects/gst-plugins-good/sys/osxaudio/meson.build b/subprojects/gst-plugins-good/sys/osxaudio/meson.build index f86d7d262b..e19e59cda3 100644 --- a/subprojects/gst-plugins-good/sys/osxaudio/meson.build +++ b/subprojects/gst-plugins-good/sys/osxaudio/meson.build @@ -10,6 +10,36 @@ osxaudio_sources = [ 'gstatenc.c', ] +osxaudio_headers = [ + 'gstosxaudiosink.h', + 'gstosxaudiodeviceprovider.h', + 'gstatenc.h', + 'gstosxaudiosrc.h', + 'gstatdec.h', + 'gstiosaudiosession.h', + 'gstosxaudioelement.h', + 'gstosxaudioringbuffer.h', + 'gstosxcoreaudiocommon.h', + 'gstosxcoreaudio.h', +] + +darwin_sources = [ + 'gstosxaudiodeviceprovider.c' +] + +ios_sources = [ + 'gstiosaudiosession.m' +] + +doc_sources = [] +foreach s: osxaudio_sources + darwin_sources + ios_sources + osxaudio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'osxaudio': pathsep.join(doc_sources) +} + have_osxaudio = false osxaudio_option = get_option('osxaudio') if osxaudio_option.disabled() or not ['darwin', 'ios'].contains(host_system) @@ -19,10 +49,10 @@ endif if host_system == 'darwin' # TODO: https://github.com/mesonbuild/meson/issues/3940 have_osxaudio = cc.has_header('CoreAudio/CoreAudio.h', required: osxaudio_option) - osxaudio_sources += ['gstosxaudiodeviceprovider.c'] + osxaudio_sources += darwin_sources elif host_system == 'ios' have_osxaudio = cc.has_header('CoreAudio/CoreAudioTypes.h', required: osxaudio_option) - osxaudio_sources += ['gstiosaudiosession.m'] + osxaudio_sources += ios_sources endif if have_osxaudio diff --git a/subprojects/gst-plugins-good/sys/osxvideo/meson.build b/subprojects/gst-plugins-good/sys/osxvideo/meson.build index 560c1e236b..63eb86cc76 100644 --- a/subprojects/gst-plugins-good/sys/osxvideo/meson.build +++ b/subprojects/gst-plugins-good/sys/osxvideo/meson.build @@ -1,5 +1,19 @@ osxvideo_sources = ['osxvideosink.m', 'cocoawindow.m'] +osxvideo_headers = [ + 'osxvideosink.h', + 'cocoawindow.h', +] + +doc_sources = [] +foreach s: osxvideo_sources + osxvideo_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'osxvideo': pathsep.join(doc_sources) +} + have_osxvideo = false if host_system != 'darwin' subdir_done() diff --git a/subprojects/gst-plugins-good/sys/rpicamsrc/meson.build b/subprojects/gst-plugins-good/sys/rpicamsrc/meson.build index aa0704879e..028503f8dd 100644 --- a/subprojects/gst-plugins-good/sys/rpicamsrc/meson.build +++ b/subprojects/gst-plugins-good/sys/rpicamsrc/meson.build @@ -7,6 +7,25 @@ rpicamsrc_sources = [ 'RaspiCLI.c', ] +rpicamsrc_headers = [ + 'gstrpicamsrcdeviceprovider.h', + 'gstrpicamsrc.h', + 'RaspiPreview.h', + 'RaspiCapture.h', + 'gstrpicam_types.h', + 'RaspiCLI.h', + 'RaspiCamControl.h', +] + +doc_sources = [] +foreach s: rpicamsrc_sources + rpicamsrc_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rpicamsrc': pathsep.join(doc_sources) +} + if host_system != 'linux' or (host_cpu != 'arm' and host_cpu != 'aarch64') assert(not get_option('rpicamsrc').enabled(), 'rpicamsrc was enabled by options but will not be built') subdir_done() diff --git a/subprojects/gst-plugins-good/sys/v4l2/meson.build b/subprojects/gst-plugins-good/sys/v4l2/meson.build index 026d3920fc..61a6f054fa 100644 --- a/subprojects/gst-plugins-good/sys/v4l2/meson.build +++ b/subprojects/gst-plugins-good/sys/v4l2/meson.build @@ -36,6 +36,51 @@ v4l2_sources = [ 'tunernorm.c' ] +v4l2_headers = [ + 'tunernorm.h', + 'gstv4l2vp8enc.h', + 'gstv4l2colorbalance.h', + 'gstv4l2transform.h', + 'gstv4l2videodec.h', + 'gstv4l2mpeg2codec.h', + 'gstv4l2vp8codec.h', + 'gstv4l2vp9codec.h', + 'gstv4l2h264enc.h', + 'gstv4l2codec.h', + 'gstv4l2vp9enc.h', + 'gstv4l2fwhtenc.h', + 'gstv4l2vidorient.h', + 'gstv4l2h263enc.h', + 'gstv4l2deviceprovider.h', + 'gstv4l2bufferpool.h', + 'gstv4l2tuner.h', + 'gstv4l2elements.h', + 'gstv4l2radio.h', + 'gstv4l2h265codec.h', + 'gstv4l2sink.h', + 'gstv4l2h265enc.h', + 'v4l2-utils.h', + 'gstv4l2mpeg4enc.h', + 'tunerchannel.h', + 'gstv4l2videoenc.h', + 'gstv4l2h264codec.h', + 'gstv4l2src.h', + 'tuner.h', + 'gstv4l2mpeg4codec.h', + 'gstv4l2object.h', + 'gstv4l2jpegenc.h', + 'gstv4l2allocator.h', +] + +doc_sources = [] +foreach s: v4l2_sources + v4l2_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'video4linux2': pathsep.join(doc_sources) +} + v4l2 = get_option('v4l2') if v4l2.disabled() have_v4l2 = false diff --git a/subprojects/gst-plugins-good/sys/waveform/meson.build b/subprojects/gst-plugins-good/sys/waveform/meson.build index f94fda7a47..39ee9c343b 100644 --- a/subprojects/gst-plugins-good/sys/waveform/meson.build +++ b/subprojects/gst-plugins-good/sys/waveform/meson.build @@ -3,6 +3,19 @@ waveformsink_sources = [ 'gstwaveformplugin.c', ] +waveformsink_headers = [ + 'gstwaveformsink.h', +] + +doc_sources = [] +foreach s: waveformsink_sources + waveformsink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'waveform': pathsep.join(doc_sources) +} + have_waveform = false waveform_option = get_option('waveform') if host_system != 'windows' or waveform_option.disabled() diff --git a/subprojects/gst-plugins-good/sys/ximage/meson.build b/subprojects/gst-plugins-good/sys/ximage/meson.build index a7021f109c..964c602f61 100644 --- a/subprojects/gst-plugins-good/sys/ximage/meson.build +++ b/subprojects/gst-plugins-good/sys/ximage/meson.build @@ -1,8 +1,29 @@ x11_dep = dependency('x11', required : get_option('ximagesrc')) +x_sources = ['gstximagesrc.c', 'ximageutil.c'] + +navigation_sources = [ + 'gst-ximage-navigation.c' +] + +x_headers = [ + 'ximageutil.h', + 'gst-ximage-navigation.h', + 'gstximagesrc.h', +] + +doc_sources = [] +foreach s: x_sources + navigation_sources + x_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'ximagesrc': pathsep.join(doc_sources) +} + if x11_dep.found() x_args = [] - x_sources = files(['gstximagesrc.c', 'ximageutil.c']) + xshm_dep = dependency('xext', required : get_option('ximagesrc-xshm')) # FIXME: should add a 'required' arg to cc.has_function() in Meson and use it here if xshm_dep.found() and cc.has_function('XShmAttach', dependencies: xshm_dep) @@ -22,7 +43,7 @@ if x11_dep.found() xtst_dep = dependency('xtst', required : get_option('ximagesrc-navigation')) if xtst_dep.found() x_args += ['-DHAVE_XNAVIGATION'] - x_sources += files(['gst-ximage-navigation.c']) + x_sources += navigation_sources endif gstximagesrc = library('gstximagesrc', diff --git a/subprojects/gst-plugins-ugly/docs/meson.build b/subprojects/gst-plugins-ugly/docs/meson.build index 5c9bd2fb29..a8f4f804ce 100644 --- a/subprojects/gst-plugins-ugly/docs/meson.build +++ b/subprojects/gst-plugins-ugly/docs/meson.build @@ -89,24 +89,28 @@ foreach f: [] excludes += [join_paths(meson.current_source_dir(), root_rel, '..', f)] endforeach -libs_doc = [] -plugins_doc = [] -list_plugin_res = run_command(python3, '-c', -''' -import sys -import json +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') -with open("@0@") as f: - print(':'.join(json.load(f).keys()), end='') -'''.format(plugins_cache), - check: true) cdir = meson.current_source_dir() -if host_machine.system() == 'windows' - pathsep = ';' -else - pathsep = ':' -endif -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--builddir', meson.current_build_dir(), @@ -114,11 +118,12 @@ gst_plugins_doc = run_command( '--sitemap', cdir / 'sitemap.txt', '--index', cdir / 'index.md', '--gst_index', cdir / 'index.md', - '--gst_c_sources', - cdir / root_rel / 'sys/*/*.[ch]', - cdir / root_rel / 'ext/*/*.[ch]', - cdir / root_rel / 'gst/*/*.[ch]', '--gst_c_source_filters', excludes, - '--gst_cache_file', plugins_cache, - check: true, -).stdout().split(pathsep) + '--gst_cache_file', '@INPUT@', + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) diff --git a/subprojects/gst-plugins-ugly/ext/a52dec/meson.build b/subprojects/gst-plugins-ugly/ext/a52dec/meson.build index 85b8115f0c..d140524486 100644 --- a/subprojects/gst-plugins-ugly/ext/a52dec/meson.build +++ b/subprojects/gst-plugins-ugly/ext/a52dec/meson.build @@ -3,13 +3,30 @@ a52dec_opt = get_option('a52dec').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +a52dec_sources = [ + 'gsta52dec.c', +] + +a52dec_headers = [ + 'gsta52dec.h', +] + +doc_sources = [] +foreach s: a52dec_sources + a52dec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'a52dec': pathsep.join(doc_sources) +} + a52_dep = cc.find_library('a52', required : get_option('a52dec')) if a52_dep.found() have_a52_h = cc.has_header_symbol('a52dec/a52.h', 'a52_init', prefix : '#include ') if have_a52_h a52dec = library('gsta52dec', - 'gsta52dec.c', + a52dec_sources, c_args : ugly_args, include_directories : [configinc], dependencies : [gstaudio_dep, orc_dep, a52_dep], @@ -18,6 +35,6 @@ if a52_dep.found() ) plugins += [a52dec] elif a52dec_opt.enabled() - error('a52dec plugin enabled but a52.h not found') + error('a52dec plugin enabled but a52.h not found') endif endif diff --git a/subprojects/gst-plugins-ugly/ext/cdio/meson.build b/subprojects/gst-plugins-ugly/ext/cdio/meson.build index 7662d2ac81..a488361dfd 100644 --- a/subprojects/gst-plugins-ugly/ext/cdio/meson.build +++ b/subprojects/gst-plugins-ugly/ext/cdio/meson.build @@ -3,11 +3,31 @@ cdio_opt = get_option('cdio').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +cdio_sources = [ + 'gstcdio.c', + 'gstcdiocddasrc.c', +] + +cdio_headers = [ + 'gstcdiocddasrc.h', + 'gstcdio.h', +] + +doc_sources = [] +foreach s: cdio_sources + cdio_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'cdio': pathsep.join(doc_sources) +} + cdio_dep = dependency('libcdio', version : '>= 0.76', required : cdio_opt) if cdio_dep.found() + cdio = library('gstcdio', - ['gstcdio.c', 'gstcdiocddasrc.c'], + cdio_sources, c_args : ugly_args, include_directories : [configinc, libsinc], dependencies : [gstaudio_dep, gsttag_dep, cdio_dep], diff --git a/subprojects/gst-plugins-ugly/ext/dvdread/meson.build b/subprojects/gst-plugins-ugly/ext/dvdread/meson.build index 3b3d5bb136..59e11fd153 100644 --- a/subprojects/gst-plugins-ugly/ext/dvdread/meson.build +++ b/subprojects/gst-plugins-ugly/ext/dvdread/meson.build @@ -3,11 +3,28 @@ dvdread_opt = get_option('dvdread').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +dvdread_sources = [ + 'dvdreadsrc.c', +] + +dvdread_headers = [ + 'dvdreadsrc.h', +] + +doc_sources = [] +foreach s: dvdread_sources + dvdread_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvdread': pathsep.join(doc_sources) +} + dvdread_dep = dependency('dvdread', version : '>= 0.5.0', required : dvdread_opt) if dvdread_dep.found() dvdread = library('gstdvdread', - ['dvdreadsrc.c'], + dvdread_sources, c_args : ugly_args, include_directories : [configinc, libsinc], dependencies : [gstbase_dep, gmodule_dep, dvdread_dep], diff --git a/subprojects/gst-plugins-ugly/ext/mpeg2dec/meson.build b/subprojects/gst-plugins-ugly/ext/mpeg2dec/meson.build index 4165bec9e1..1e4ad909ec 100644 --- a/subprojects/gst-plugins-ugly/ext/mpeg2dec/meson.build +++ b/subprojects/gst-plugins-ugly/ext/mpeg2dec/meson.build @@ -3,11 +3,28 @@ mpeg2dec_opt = get_option('mpeg2dec').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +mpeg2dec_sources = [ + 'gstmpeg2dec.c', +] + +mpeg2dec_headers = [ + 'gstmpeg2dec.h', +] + +doc_sources = [] +foreach s: mpeg2dec_sources + mpeg2dec_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'mpeg2dec': pathsep.join(doc_sources) +} + mpeg2_dep = dependency('libmpeg2', version : '>= 0.4.0', required : mpeg2dec_opt) if mpeg2_dep.found() mpeg2dec = library('gstmpeg2dec', - ['gstmpeg2dec.c'], + mpeg2dec_sources, c_args : ugly_args, include_directories : [configinc], dependencies : [gstvideo_dep, mpeg2_dep], diff --git a/subprojects/gst-plugins-ugly/ext/sidplay/meson.build b/subprojects/gst-plugins-ugly/ext/sidplay/meson.build index 4776d6f2c6..819c4b6e99 100644 --- a/subprojects/gst-plugins-ugly/ext/sidplay/meson.build +++ b/subprojects/gst-plugins-ugly/ext/sidplay/meson.build @@ -3,6 +3,23 @@ sidplay_option = get_option('sidplay').require(gpl_allowed, error_message: ''' Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built. ''') +sid_sources = [ + 'gstsiddec.cc', +] + +sid_headers = [ + 'gstsiddec.h', +] + +doc_sources = [] +foreach s: sid_sources + sid_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'sid': pathsep.join(doc_sources) +} + if not add_languages('cpp', native: false, required: sidplay_option) subdir_done() endif @@ -28,7 +45,8 @@ if not cxx.compiles(sid_code, dependencies: sidplay_dep, name : 'sidplay usage') subdir_done() endif -gstsid = library('gstsid', 'gstsiddec.cc', +gstsid = library('gstsid', + sid_sources, cpp_args : ugly_args, include_directories : [configinc], dependencies : [gstaudio_dep, sidplay_dep], diff --git a/subprojects/gst-plugins-ugly/ext/x264/meson.build b/subprojects/gst-plugins-ugly/ext/x264/meson.build index f5e2b585b6..d487ed5aed 100644 --- a/subprojects/gst-plugins-ugly/ext/x264/meson.build +++ b/subprojects/gst-plugins-ugly/ext/x264/meson.build @@ -8,6 +8,20 @@ x264_sources = [ 'gstencoderbitrateprofilemanager.c', ] +x264_headers = [ + 'gstx264enc.h', + 'gstencoderbitrateprofilemanager.h', +] + +doc_sources = [] +foreach s: x264_sources + x264_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'x264': pathsep.join(doc_sources) +} + x264_dep = dependency('x264', version : '>=0.156', required : x264_opt, fallback: ['x264', 'libx264_dep']) diff --git a/subprojects/gst-plugins-ugly/gst/asfdemux/meson.build b/subprojects/gst-plugins-ugly/gst/asfdemux/meson.build index 793d76de0b..935a63eff2 100644 --- a/subprojects/gst-plugins-ugly/gst/asfdemux/meson.build +++ b/subprojects/gst-plugins-ugly/gst/asfdemux/meson.build @@ -8,6 +8,28 @@ asf_sources = [ 'gstrtspwms.c', ] +asf_headers = [ + 'gstasfelements.h', + 'gstasfdemux.h', + 'asfheaders.h', + 'gstrtpasfdepay.h', + 'gstrtspwms.h', + 'asfpacket.h', +] + +doc_sources = [] +foreach s: asf_sources + asf_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'asf': pathsep.join(doc_sources) +} + +if get_option('asfdemux').disabled() + subdir_done() +endif + gstasf = library('gstasf', asf_sources, c_args : ugly_args, diff --git a/subprojects/gst-plugins-ugly/gst/dvdlpcmdec/meson.build b/subprojects/gst-plugins-ugly/gst/dvdlpcmdec/meson.build index 2f064f47ea..4a36632376 100644 --- a/subprojects/gst-plugins-ugly/gst/dvdlpcmdec/meson.build +++ b/subprojects/gst-plugins-ugly/gst/dvdlpcmdec/meson.build @@ -2,6 +2,23 @@ dvdpl_sources = [ 'gstdvdlpcmdec.c' ] +dvdpl_headers = [ + 'gstdvdlpcmdec.h', +] + +doc_sources = [] +foreach s: dvdpl_sources + dvdpl_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvdlpcmdec': pathsep.join(doc_sources) +} + +if get_option('dvdlpcmdec').disabled() + subdir_done() +endif + gstdvdlpcmdec = library('gstdvdlpcmdec', dvdpl_sources, c_args : ugly_args, diff --git a/subprojects/gst-plugins-ugly/gst/dvdsub/meson.build b/subprojects/gst-plugins-ugly/gst/dvdsub/meson.build index 39af1c75ad..94c3eacba0 100644 --- a/subprojects/gst-plugins-ugly/gst/dvdsub/meson.build +++ b/subprojects/gst-plugins-ugly/gst/dvdsub/meson.build @@ -3,6 +3,24 @@ dvdsub_sources = [ 'gstdvdsubparse.c', ] +dvdsub_headers = [ + 'gstdvdsubdec.h', + 'gstdvdsubparse.h', +] + +doc_sources = [] +foreach s: dvdsub_sources + dvdsub_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'dvdsub': pathsep.join(doc_sources) +} + +if get_option('dvdsub').disabled() + subdir_done() +endif + gstdvdsub = library('gstdvdsub', dvdsub_sources, c_args : ugly_args, diff --git a/subprojects/gst-plugins-ugly/gst/meson.build b/subprojects/gst-plugins-ugly/gst/meson.build index b04cc7bbe0..65d846c58d 100644 --- a/subprojects/gst-plugins-ugly/gst/meson.build +++ b/subprojects/gst-plugins-ugly/gst/meson.build @@ -1,5 +1,3 @@ foreach plugin : ['asfdemux', 'dvdlpcmdec', 'dvdsub', 'realmedia'] - if not get_option(plugin).disabled() - subdir(plugin) - endif + subdir(plugin) endforeach diff --git a/subprojects/gst-plugins-ugly/gst/realmedia/meson.build b/subprojects/gst-plugins-ugly/gst/realmedia/meson.build index 626ba88dfc..efb930ec98 100644 --- a/subprojects/gst-plugins-ugly/gst/realmedia/meson.build +++ b/subprojects/gst-plugins-ugly/gst/realmedia/meson.build @@ -5,6 +5,26 @@ real_sources = [ 'realmedia.c' ] +real_headers = [ + 'rmdemux.h', + 'rademux.h', + 'rmutils.h', + 'pnmsrc.h', +] + +doc_sources = [] +foreach s: real_sources + real_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'realmedia': pathsep.join(doc_sources) +} + +if get_option('realmedia').disabled() + subdir_done() +endif + gstrmdemux = library('gstrealmedia', real_sources, c_args : ugly_args, diff --git a/subprojects/gst-plugins-ugly/meson.build b/subprojects/gst-plugins-ugly/meson.build index 51f0febe0d..f55ee63681 100644 --- a/subprojects/gst-plugins-ugly/meson.build +++ b/subprojects/gst-plugins-ugly/meson.build @@ -32,6 +32,7 @@ api_version = '1.0' static_build = get_option('default_library') == 'static' plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') plugins = [] +plugin_sources = {} cc = meson.get_compiler('c') if have_cxx @@ -323,6 +324,12 @@ gpl_allowed = get_option('gpl').allowed() python3 = import('python').find_installation() +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + subdir('gst') subdir('ext') subdir('tests') diff --git a/subprojects/gst-rtsp-server/docs/meson.build b/subprojects/gst-rtsp-server/docs/meson.build index 9d43828511..2873e34609 100644 --- a/subprojects/gst-rtsp-server/docs/meson.build +++ b/subprojects/gst-rtsp-server/docs/meson.build @@ -98,13 +98,29 @@ libs_doc = [hotdoc.generate_doc('gst-rtsp-server', depends: rtsp_server_gir[0], )] -if host_machine.system() == 'windows' - pathsep = ';' -else - pathsep = ':' -endif + +doc_source_file = configure_file(output: 'doc_sources.json', configuration: plugin_sources, output_format: 'json') + +plugin_libraries = {} + +foreach plugin: plugins + if plugin.name().startswith('gst') + plugin_name = plugin.name().substring(3) + else + plugin_name = plugin.name() + endif + + plugin_libraries += { + plugin_name: plugin.full_path() + } +endforeach + +doc_plugin_libs_file = configure_file(output: 'doc_plugin_libs.json', configuration: plugin_libraries, output_format: 'json') + cdir = meson.current_source_dir() -gst_plugins_doc = run_command( +plugin_hotdoc_configs = custom_target( + 'build-hotdoc-configs', + command: [ plugins_cache_generator, 'hotdoc-config', '--builddir', meson.current_build_dir(), @@ -112,9 +128,13 @@ gst_plugins_doc = run_command( '--sitemap', cdir / 'plugins/sitemap.txt', '--index', cdir / 'plugins/index.md', '--gst_index', cdir / 'plugins/index.md', - '--gst_c_sources', cdir / '../gst/rtsp-sink/*.[ch]', - '--gst_cache_file', plugins_cache, - check: true, -).stdout().split(pathsep) + '--gst_cache_file', '@INPUT@', + '--output', '@OUTPUT@', + '--gst_c_source_file', doc_source_file, + '--gst_plugin_libraries_file', doc_plugin_libs_file, + ], + input: plugins_cache, + output: 'hotdoc-configs.json', +) doc = libs_doc[0] diff --git a/subprojects/gst-rtsp-server/gst/meson.build b/subprojects/gst-rtsp-server/gst/meson.build index 59cb3e4750..229c861eed 100644 --- a/subprojects/gst-rtsp-server/gst/meson.build +++ b/subprojects/gst-rtsp-server/gst/meson.build @@ -1,5 +1,2 @@ subdir('rtsp-server') - -if not get_option('rtspclientsink').disabled() - subdir('rtsp-sink') -endif +subdir('rtsp-sink') diff --git a/subprojects/gst-rtsp-server/gst/rtsp-sink/meson.build b/subprojects/gst-rtsp-server/gst/rtsp-sink/meson.build index ddc37b8dcf..a66fbfe129 100644 --- a/subprojects/gst-rtsp-server/gst/rtsp-sink/meson.build +++ b/subprojects/gst-rtsp-server/gst/rtsp-sink/meson.build @@ -3,6 +3,23 @@ rtspsink_sources = [ 'plugin.c', ] +rtspsink_headers = [ + 'gstrtspclientsink.h', +] + +doc_sources = [] +foreach s: rtspsink_sources + rtspsink_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'rtspclientsink': pathsep.join(doc_sources) +} + +if get_option('rtspclientsink').disabled() + subdir_done() +endif + rtspsink = library('gstrtspclientsink', rtspsink_sources, c_args : rtspserver_args + ['-DG_LOG_DOMAIN="GStreamer-rtspclientsink"'], diff --git a/subprojects/gst-rtsp-server/meson.build b/subprojects/gst-rtsp-server/meson.build index 3e71202e00..da88dd1385 100644 --- a/subprojects/gst-rtsp-server/meson.build +++ b/subprojects/gst-rtsp-server/meson.build @@ -195,10 +195,17 @@ if get_option('default_library') == 'shared' endif plugins = [] +plugin_sources = {} pkgconfig_subdirs = ['gstreamer-1.0'] static_build = get_option('default_library') == 'static' gst_libraries = [] +if host_machine.system() == 'windows' + pathsep = ';' +else + pathsep = ':' +endif + subdir('gst') subdir('tests') diff --git a/subprojects/gstreamer/docs/meson.build b/subprojects/gstreamer/docs/meson.build index 4629ef2066..6b680cf5d8 100644 --- a/subprojects/gstreamer/docs/meson.build +++ b/subprojects/gstreamer/docs/meson.build @@ -196,9 +196,6 @@ plugin_hotdoc_configs = custom_target( '--gst_index', cdir / 'plugins/index.md', '--gst_c_source_file', doc_source_file, '--gst_plugin_libraries_file', doc_plugin_libs_file, - '--gst_c_sources', - cdir / '../plugins/*/*.c', - cdir / '../plugins/*/*.h', '--gst_cache_file', '@INPUT@', '--output', '@OUTPUT@', ], diff --git a/subprojects/gstreamer/plugins/meson.build b/subprojects/gstreamer/plugins/meson.build index 697e331278..12c95c3019 100644 --- a/subprojects/gstreamer/plugins/meson.build +++ b/subprojects/gstreamer/plugins/meson.build @@ -1,6 +1,4 @@ plugins = [] plugin_sources = {} subdir('elements') -if not get_option('coretracers').disabled() - subdir('tracers') -endif +subdir('tracers') diff --git a/subprojects/gstreamer/plugins/tracers/meson.build b/subprojects/gstreamer/plugins/tracers/meson.build index a74993e25c..2158852403 100644 --- a/subprojects/gstreamer/plugins/tracers/meson.build +++ b/subprojects/gstreamer/plugins/tracers/meson.build @@ -1,10 +1,3 @@ -if not tracer_hooks - if get_option('coretracers').enabled() - error('coretracers plugin enabled but not tracer_hooks') - endif - subdir_done() -endif - gst_tracers_sources = [ 'gstlatency.c', 'gstleaks.c', @@ -13,6 +6,14 @@ gst_tracers_sources = [ 'gstfactories.c' ] +debug_sources = [ + 'gstlog.c', +] + +getrusage_sources = [ + 'gstrusage.c', +] + gst_tracers_headers = [ 'gstfactories.h', 'gstlatency.h', @@ -22,12 +23,32 @@ gst_tracers_headers = [ 'gststats.h', ] +doc_sources = [] +foreach s: gst_tracers_sources + debug_sources + getrusage_sources + gst_tracers_headers + doc_sources += meson.current_source_dir() / s +endforeach + +plugin_sources += { + 'coretracers': pathsep.join(doc_sources) +} + +if get_option('coretracers').disabled() + subdir_done() +endif + +if not tracer_hooks + if get_option('coretracers').enabled() + error('coretracers plugin enabled but not tracer_hooks') + endif + subdir_done() +endif + if gst_debug - gst_tracers_sources += ['gstlog.c'] + gst_tracers_sources += debug_sources endif if cdata.has('HAVE_GETRUSAGE') - gst_tracers_sources += ['gstrusage.c'] + gst_tracers_sources += getrusage_sources endif thread_dep = dependency('threads', required : false) @@ -41,12 +62,3 @@ gst_tracers = library('gstcoretracers', install_dir : plugins_install_dir, ) plugins += [gst_tracers] - -doc_sources = [] -foreach s: gst_tracers_sources + gst_tracers_headers - doc_sources += meson.current_source_dir() / s -endforeach - -plugin_sources += { - 'coretracers': pathsep.join(doc_sources) -}