meson: docs: build *.html files from *.html.in files

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
This commit is contained in:
Pavel Hrdina 2020-06-18 02:24:51 +02:00
parent 4f577f74f6
commit 0eb7a86f82
2 changed files with 106 additions and 2 deletions

View File

@ -281,8 +281,6 @@ manpages_DATA = $(manpages_html)
dot_html_generated_in = \
hvsupport.html.in \
$(NULL)
dot_html_in = \
$(notdir $(wildcard $(srcdir)/*.html.in))
dot_rst = \
$(notdir $(wildcard $(srcdir)/*.rst))
dot_rst_html_in = \

View File

@ -27,6 +27,84 @@ docs_assets = [
'node.gif',
]
docs_html_in_files = [
'404',
'acl',
'aclpolkit',
'api_extension',
'api',
'apps',
'architecture',
'auditlog',
'auth',
'bindings',
'bugs',
'cgroups',
'compiling',
'contact',
'contribute',
'csharp',
'dbus',
'devguide',
'docs',
'downloads',
'drivers',
'drvbhyve',
'drvesx',
'drvhyperv',
'drvlxc',
'drvnodedev',
'drvopenvz',
'drvqemu',
'drvremote',
'drvsecret',
'drvtest',
'drvvbox',
'drvvirtuozzo',
'drvvmware',
'drvxen',
'errors',
'firewall',
'formatcaps',
'formatdomaincaps',
'formatdomain',
'format',
'formatnetwork',
'formatnetworkport',
'formatnode',
'formatnwfilter',
'formatsecret',
'formatsnapshot',
'formatstoragecaps',
'formatstorageencryption',
'formatstorage',
'goals',
'governance',
'hooks',
'index',
'internals',
'java',
'kbase',
'logging',
'migration',
'nss',
'pci-hotplug',
'php',
'python',
'remote',
'securityprocess',
'storage',
'strategy',
'support',
'testapi',
'testsuites',
'testtck',
'tlscerts',
'uri',
'virshcmdref',
'windows',
]
install_data(docs_assets, install_dir: docs_html_dir)
aclperms_gen = custom_target(
@ -85,3 +163,31 @@ docs_rst2html_gen = generator(
arguments: [ '--strict', '@INPUT@' ],
capture: true,
)
foreach name : docs_html_in_files
html_in_file = '@0@.html.in'.format(name)
html_file = '@0@.html'.format(name)
custom_target(
html_file,
input: html_in_file,
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,
site_xsl,
'@INPUT@',
'@OUTPUT@',
html_in_file,
],
depends: [ aclperms_gen ],
depend_files: [ page_xsl ],
install: true,
install_dir: docs_html_dir,
)
endforeach