2020-06-25 12:33:22 +00:00
|
|
|
# docs_man_files
|
|
|
|
# each entry is a dictionary with following items:
|
|
|
|
# name - man page name (required)
|
|
|
|
# section - man page section (required)
|
|
|
|
# install - whether to build and install the man page (required)
|
|
|
|
# file - generated RST file (optional, default none)
|
|
|
|
|
|
|
|
docs_man_files = [
|
|
|
|
{ 'name': 'index', 'section': '', 'install': false },
|
|
|
|
|
|
|
|
{ 'name': 'virsh', 'section': '1', 'install': true },
|
|
|
|
{ 'name': 'virt-admin', 'section': '1', 'install': true },
|
|
|
|
{ 'name': 'virt-host-validate', 'section': '1', 'install': conf.has('WITH_HOST_VALIDATE') },
|
|
|
|
{ 'name': 'virt-login-shell', 'section': '1', 'install': conf.has('WITH_LOGIN_SHELL') },
|
|
|
|
{ 'name': 'virt-pki-validate', 'section': '1', 'install': true },
|
|
|
|
{ 'name': 'virt-qemu-run', 'section': '1', 'install': conf.has('WITH_QEMU') },
|
|
|
|
{ 'name': 'virt-xml-validate', 'section': '1', 'install': true },
|
|
|
|
|
|
|
|
{ 'name': 'libvirtd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
2020-08-05 08:04:12 +00:00
|
|
|
{ 'name': 'virt-sanlock-cleanup', 'section': '8', 'install': conf.has('WITH_SANLOCK') },
|
2020-06-25 12:33:22 +00:00
|
|
|
{ 'name': 'virtlockd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
|
|
|
{ 'name': 'virtlogd', 'section': '8', 'install': conf.has('WITH_LIBVIRTD') },
|
|
|
|
]
|
|
|
|
|
|
|
|
foreach name : keycode_list
|
|
|
|
rst_file = custom_target(
|
|
|
|
'virkeycode-@0@.rst'.format(name),
|
|
|
|
input: keymap_src_file,
|
|
|
|
output: 'virkeycode-@0@.rst'.format(name),
|
|
|
|
command: [
|
|
|
|
meson_python_prog, python3_prog.path(), keymap_gen_prog.path(), 'code-docs',
|
|
|
|
'--lang', 'rst',
|
|
|
|
'--title', 'virkeycode-@0@'.format(name),
|
|
|
|
'--subtitle', 'Key code values for @0@'.format(name),
|
|
|
|
'@INPUT@', name,
|
|
|
|
],
|
|
|
|
capture: true,
|
|
|
|
build_by_default: true,
|
|
|
|
)
|
|
|
|
|
|
|
|
docs_man_files += {
|
|
|
|
'name': 'virkeycode-@0@'.format(name), 'section': '7', 'install': true, 'file': rst_file,
|
|
|
|
}
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
foreach name : keyname_list
|
|
|
|
rst_file = custom_target(
|
|
|
|
'virkeyname-@0@.rst'.format(name),
|
|
|
|
input: keymap_src_file,
|
|
|
|
output: 'virkeyname-@0@.rst'.format(name),
|
|
|
|
command: [
|
|
|
|
meson_python_prog, python3_prog.path(), keymap_gen_prog.path(), 'name-docs',
|
|
|
|
'--lang', 'rst',
|
|
|
|
'--title', 'virkeyname-@0@'.format(name),
|
|
|
|
'--subtitle', 'Key name values for @0@'.format(name),
|
|
|
|
'@INPUT@', name,
|
|
|
|
],
|
|
|
|
capture: true,
|
|
|
|
build_by_default: true,
|
|
|
|
)
|
|
|
|
|
|
|
|
docs_man_files += {
|
|
|
|
'name': 'virkeyname-@0@'.format(name), 'section': '7', 'install': true, 'file': rst_file,
|
|
|
|
}
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
docs_man_conf = configuration_data()
|
|
|
|
docs_man_conf.set('SYSCONFDIR', sysconfdir)
|
|
|
|
docs_man_conf.set('RUNSTATEDIR', runstatedir)
|
|
|
|
|
|
|
|
foreach data : docs_man_files
|
|
|
|
rst_in_file = '@0@.rst'.format(data['name'])
|
|
|
|
html_in_file = '@0@.html.in'.format(data['name'])
|
|
|
|
html_file = '@0@.html'.format(data['name'])
|
|
|
|
|
|
|
|
if data.has_key('file')
|
|
|
|
rst_file = data['file']
|
|
|
|
else
|
|
|
|
rst_file = configure_file(
|
|
|
|
input: rst_in_file,
|
|
|
|
output: '@0@.rst'.format(data['name']),
|
|
|
|
configuration: docs_man_conf,
|
|
|
|
)
|
|
|
|
endif
|
|
|
|
|
|
|
|
if data['install']
|
|
|
|
man_file = '@0@.@1@'.format(data['name'], data['section'])
|
|
|
|
man_page = custom_target(
|
|
|
|
man_file,
|
|
|
|
input: rst_file,
|
|
|
|
output: man_file,
|
2020-09-23 13:13:57 +00:00
|
|
|
# 'contents' element is the table of contents which is undesired in manpage
|
|
|
|
command: [ rst2man_prog, '--strip-elements-with-class', 'contents', '--strict', '@INPUT@', '@OUTPUT@' ],
|
2020-06-25 12:33:22 +00:00
|
|
|
install: true,
|
|
|
|
install_dir: mandir / 'man@0@'.format(data['section']),
|
|
|
|
)
|
|
|
|
endif
|
|
|
|
|
|
|
|
html_in = custom_target(
|
|
|
|
html_in_file,
|
|
|
|
input: rst_file,
|
|
|
|
output: html_in_file,
|
2020-08-03 05:32:29 +00:00
|
|
|
command: [ rst2html_prog, '--stylesheet=', '--strict', '@INPUT@' ],
|
2020-06-25 12:33:22 +00:00
|
|
|
capture: true,
|
|
|
|
)
|
|
|
|
|
2020-07-23 16:40:12 +00:00
|
|
|
out_file = custom_target(
|
2020-06-25 12:33:22 +00:00
|
|
|
html_file,
|
|
|
|
input: html_in,
|
|
|
|
output: html_file,
|
|
|
|
command: [
|
|
|
|
meson_python_prog,
|
|
|
|
python3_prog.path(),
|
|
|
|
meson_html_gen_prog.path(),
|
|
|
|
xsltproc_prog.path(),
|
|
|
|
xmllint_prog.path(),
|
|
|
|
meson.build_root(),
|
|
|
|
docs_timestamp,
|
|
|
|
subsite_xsl,
|
|
|
|
'@INPUT@',
|
|
|
|
'@OUTPUT@',
|
2020-08-17 10:06:13 +00:00
|
|
|
'docs/manpages' / rst_in_file,
|
2020-06-25 12:33:22 +00:00
|
|
|
],
|
|
|
|
depends: [ aclperms_gen ],
|
|
|
|
depend_files: [ page_xsl ],
|
|
|
|
install: true,
|
|
|
|
install_dir: docs_html_dir / 'manpages',
|
|
|
|
)
|
2020-07-23 16:40:12 +00:00
|
|
|
|
|
|
|
install_web_deps += out_file
|
|
|
|
install_web_files += '@0@:@1@'.format(out_file.full_path(), docs_html_dir / 'manpages')
|
2020-06-25 12:33:22 +00:00
|
|
|
endforeach
|