NetworkManager/man/meson.build
Thomas Haller 3c11116c48
docs: in "generate-docs-nm-settings-docs-merge.py" only take properties from first setting
Especially for "nm-settings-docs-nmcli.xml", the first XML to merge is
"clients/cli/generate-docs-nm-settings-nmcli.xml". That file is
generated with the meta data from nmcli, and it contains all the
properties that are supported. Properties from other XML files,
that are passed as additional arguments should not be merged.

In most cases, there is no difference. It only matters for
"ipv6.dad-timeout" and "user.data". For example, "ipv6.dad-timeout"
is supported by GObject (part of "libnm/nm-settings-docs-gir.xml"),
but not by nmcli. Don't include it in the manual.

This also drops the now empty settings "dummy", "user", and "generic".
2020-06-12 10:26:27 +02:00

128 lines
3.3 KiB
Meson

# SPDX-License-Identifier: LGPL-2.1+
common_ent_file = configure_file(
input: 'common.ent.in',
output: '@BASENAME@',
configuration: data_conf,
)
xsltproc_options = [
xsltproc,
'--output', '@OUTPUT@',
'--path', meson.current_build_dir(),
'--xinclude',
'--nonet',
'--stringparam', 'man.output.quietly', '1',
'--stringparam', 'funcsynopsis.style', 'ansi',
'--stringparam', 'man.th.extra1.suppress', '1',
'--stringparam', 'man.authors.section.enabled', '0',
'--stringparam', 'man.copyright.section.enabled', '0',
'--stringparam', 'man.th.title.max.length', '30',
]
docbook_xls = 'http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl'
mans_xmls = []
mans = [
['NetworkManager', '8'],
['NetworkManager.conf', '5'],
['nm-online', '1'],
['nmcli-examples', '7'],
['nmcli', '1'],
['nmtui', '1'],
['nm-initrd-generator', '8'],
]
if enable_ovs
mans += [['nm-openvswitch', '7']]
endif
foreach man: mans
input = man[0] + '.xml'
content_files += join_paths(meson.current_source_dir(), input)
output = '@0@.@1@'.format(man[0], man[1])
custom_target(
output,
input: input,
output: output,
command: xsltproc_options + [docbook_xls, '@INPUT@'],
depend_files: common_ent_file,
install: true,
install_dir: join_paths(nm_mandir, 'man' + man[1]),
)
endforeach
if enable_introspection
name = 'dbus'
nm_settings_docs_xml_dbus = custom_target(
'nm-settings-docs-' + name + '.xml',
input: [nm_settings_docs_xml_gir, nm_property_infos_xml[name]],
output: 'nm-settings-docs-' + name + '.xml',
command: [
python.path(),
join_paths(meson.source_root(), 'tools', 'generate-docs-nm-settings-docs-merge.py'),
'@OUTPUT@',
nm_property_infos_xml[name],
nm_settings_docs_xml_gir,
],
)
name = 'nmcli'
nm_settings_docs_xml_nmcli = custom_target(
'nm-settings-docs-' + name + '.xml',
input: [nm_settings_docs_xml_gir, nm_property_infos_xml[name]],
output: 'nm-settings-docs-' + name + '.xml',
command: [
python.path(),
join_paths(meson.source_root(), 'tools', 'generate-docs-nm-settings-docs-merge.py'),
'@OUTPUT@',
'--only-from-first',
generate_docs_nm_settings_nmcli_xml,
nm_property_infos_xml[name],
nm_settings_docs_xml_gir,
],
)
nm_settings_docs_xml = {
'gir': nm_settings_docs_xml_gir,
'dbus': nm_settings_docs_xml_dbus,
'nmcli': nm_settings_docs_xml_nmcli,
}
mans = [
['nm-settings-keyfile', '5', nm_property_infos_xml['keyfile']],
['nm-settings-dbus', '5', nm_settings_docs_xml['dbus']],
['nm-settings-nmcli', '5', nm_settings_docs_xml['nmcli']],
]
if enable_ifcfg_rh
mans += [['nm-settings-ifcfg-rh', '5', nm_property_infos_xml['ifcfg-rh']]]
endif
foreach man: mans
output = man[0] + '.xml'
input = custom_target(
output,
input: man[2],
output: output,
command: xsltproc_options + [join_paths(meson.current_source_dir(), man[0] + '.xsl'), '@INPUT@'],
)
content_files += input.full_path()
output = '@0@.@1@'.format(man[0], man[1])
custom_target(
output,
input: input,
output: output,
command: xsltproc_options + [docbook_xls, '@INPUT@'],
install: true,
install_dir: join_paths(nm_mandir, 'man' + man[1]),
)
endforeach
endif