aboutsummaryrefslogtreecommitdiffstats
path: root/doc/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'doc/meson.build')
-rw-r--r--doc/meson.build38
1 files changed, 38 insertions, 0 deletions
diff --git a/doc/meson.build b/doc/meson.build
new file mode 100644
index 00000000..13ce7f1d
--- /dev/null
+++ b/doc/meson.build
@@ -0,0 +1,38 @@
+docdir = get_option('datadir') / 'doc'
+
+doxygen = find_program('doxygen', required: get_option('docs'))
+dox_to_sphinx = files('../scripts/dox_to_sphinx.py')
+sphinx_build = find_program('sphinx-build', required: get_option('docs'))
+mandoc = find_program('mandoc', required: false)
+
+build_docs = doxygen.found() and sphinx_build.found()
+
+if build_docs
+ subdir('c')
+endif
+
+mandoc_css = files('mandoc.css')
+
+if not get_option('tests').disabled()
+ stylelint = find_program('stylelint', required: false)
+ if stylelint.found()
+ test('stylelint', stylelint, args: [mandoc_css], suite: 'data')
+ endif
+endif
+
+if mandoc.found()
+ configure_file(input: mandoc_css, output: '@PLAINNAME@', copy: true)
+
+ serdi_html = custom_target(
+ 'serdi.html',
+ build_by_default: true,
+ capture: true,
+ command: [mandoc, '-Thtml', '-Werror', '-O', 'style=mandoc.css', '@INPUT@'],
+ input: files('serdi.1'),
+ output: 'serdi.html',
+ )
+endif
+
+if not meson.is_subproject()
+ summary('API Documentation', build_docs, bool_yn: true)
+endif