diff --git a/docs/Makefile.am b/docs/Makefile.am index f1ac68f1d5..73d3d26422 100644 --- a/docs/Makefile.am +++ b/docs/Makefile.am @@ -277,10 +277,6 @@ manpages/virkeyname-%.rst: $(top_srcdir)/src/keycodemapdb/data/keymaps.csv \ manpagesdir = $(HTML_DIR)/manpages manpages_DATA = $(manpages_html) -# Generate hvsupport.html first, since it takes one extra step. -dot_html_generated_in = \ - hvsupport.html.in \ - $(NULL) dot_rst_html_in = \ news.html.in \ $(NULL) @@ -295,15 +291,6 @@ html_DATA = $(dot_html) schemadir = $(pkgdatadir)/schemas schema_DATA = $(wildcard $(srcdir)/schemas/*.rng) -hvsupport.html: hvsupport.html.in - -hvsupport.html.in: $(top_srcdir)/scripts/hvsupport.py $(api_DATA) \ - $(top_srcdir)/src/libvirt_public.syms \ - $(top_srcdir)/src/libvirt_qemu.syms $(top_srcdir)/src/libvirt_lxc.syms \ - $(top_srcdir)/src/driver.h - $(AM_V_GEN)$(RUNUTF8) $(PYTHON) $(top_srcdir)/scripts/hvsupport.py \ - $(top_srcdir) $(top_builddir) > $@ || { rm $@ && exit 1; } - manpages/%.html.in: manpages/%.rst $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \ grep -v '^:Manual ' < $< | \ diff --git a/docs/meson.build b/docs/meson.build index ee2b1d0637..a9e8c1a74f 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -228,6 +228,32 @@ foreach name : docs_rst_files } endforeach +hvsupport_html_in = custom_target( + 'hvsupport.html.in', + output: 'hvsupport.html.in', + command: [ + meson_python_prog, + python3_prog.path(), + hvsupport_prog.path(), + meson.source_root(), + meson.build_root(), + ], + capture: true, + depend_files: [ + public_sym_file, + libvirt_qemu_syms, + libvirt_lxc_syms, + driver_header, + ], + depends: [ + docs_api_generated, + ], +) +docs_html_in_gen += { + 'name': 'hvsupport', + 'file': hvsupport_html_in, +} + foreach data : docs_html_in_gen html_file = '@0@.html'.format(data['name']) rst_in_file = '@0@.rst'.format(data['name']) diff --git a/src/meson.build b/src/meson.build index d56e36b31d..b1c9993bc0 100644 --- a/src/meson.build +++ b/src/meson.build @@ -89,7 +89,7 @@ rpc_probe_files = [] # symbol files -public_sym_file = 'libvirt_public.syms' +public_sym_file = files('libvirt_public.syms') used_sym_files = [ 'libvirt_private.syms', @@ -305,6 +305,8 @@ driver_headers = [ 'driver-stream.h', ] +driver_header = files('driver.h') + driver_lib = static_library( 'virt_driver', [