pipewire/doc/meson.build
Peter Hutterer ac05f6bb03 doc: add the various markdown prose docs to the doxygen output
Note that the order of the includes matters - that's how doxygen will sort
them. There is no specific structure other than the include order - one reason
why the headers are being changed. Without polluting the markdown files with
doxygen commands we cannot use \subpage, so all files convert to a regular
\page and are listed as flat hierarchy in the sidebar (and in Related Pages).

Changing the headers at least provides some visual grouping with comon
prefixes.
2021-05-07 10:27:26 +10:00

60 lines
1.6 KiB
Meson

doxyfile_conf = configuration_data()
doxyfile_conf.set('PACKAGE_NAME', meson.project_name())
doxyfile_conf.set('PACKAGE_VERSION', meson.project_version())
doxyfile_conf.set('top_srcdir', meson.source_root())
doxyfile_conf.set('top_builddir', meson.build_root())
if find_program('dot', required: false).found()
doxyfile_conf.set('HAVE_DOT', 'YES')
else
doxyfile_conf.set('HAVE_DOT', 'NO')
endif
inputs = []
foreach h : pipewire_headers
inputs += meson.source_root() / 'src' / 'pipewire' / h
endforeach
foreach h : pipewire_sources
inputs += meson.source_root() / 'src' / 'pipewire' / h
endforeach
extra_docs = [
'overview.md',
'design.txt',
'architecture.md',
'objects_design.md',
'tutorial-index.md',
'tutorial1.md',
'tutorial2.md',
'tutorial3.md',
'tutorial4.md',
'tutorial5.md',
'tutorial6.md',
'spa/index.md',
'spa/design.md',
'spa/pod.md',
'spa/buffer.md',
'pulseaudio.md',
]
foreach extra : extra_docs
inputs += meson.source_root() / 'doc' / extra
endforeach
doxyfile_conf.set('inputs', ' '.join(inputs))
doxyfile = configure_file(input: 'Doxyfile.in',
output: 'Doxyfile',
configuration: doxyfile_conf)
docdir = get_option('docdir')
if docdir == ''
docdir = pipewire_datadir / 'doc' / meson.project_name()
endif
html_target = custom_target('pipewire-docs',
input: [ doxyfile ] + inputs,
output: [ 'html' ],
command: [ doxygen, doxyfile ],
install: true,
install_dir: docdir)