2020-08-19 15:44:56 +03:00
|
|
|
util_ss.add(files(
|
|
|
|
'opts-visitor.c',
|
|
|
|
'qapi-clone-visitor.c',
|
|
|
|
'qapi-dealloc-visitor.c',
|
|
|
|
'qapi-util.c',
|
|
|
|
'qapi-visit-core.c',
|
|
|
|
'qobject-input-visitor.c',
|
|
|
|
'qobject-output-visitor.c',
|
|
|
|
'string-input-visitor.c',
|
|
|
|
'string-output-visitor.c',
|
|
|
|
))
|
2021-01-22 23:44:39 +03:00
|
|
|
if have_system or have_tools
|
|
|
|
util_ss.add(files(
|
|
|
|
'qmp-dispatch.c',
|
|
|
|
'qmp-event.c',
|
|
|
|
'qmp-registry.c',
|
|
|
|
))
|
|
|
|
endif
|
2020-08-19 15:44:56 +03:00
|
|
|
|
|
|
|
qapi_all_modules = [
|
|
|
|
'authz',
|
|
|
|
'block',
|
2020-09-24 18:26:48 +03:00
|
|
|
'block-core',
|
|
|
|
'block-export',
|
2020-08-19 15:44:56 +03:00
|
|
|
'char',
|
|
|
|
'common',
|
2021-03-18 18:55:10 +03:00
|
|
|
'compat',
|
2020-08-19 15:44:56 +03:00
|
|
|
'control',
|
|
|
|
'crypto',
|
|
|
|
'dump',
|
|
|
|
'error',
|
|
|
|
'introspect',
|
|
|
|
'job',
|
|
|
|
'machine',
|
|
|
|
'machine-target',
|
|
|
|
'migration',
|
|
|
|
'misc',
|
|
|
|
'misc-target',
|
|
|
|
'net',
|
|
|
|
'pragma',
|
|
|
|
'qom',
|
2020-10-03 20:13:14 +03:00
|
|
|
'replay',
|
2020-08-19 15:44:56 +03:00
|
|
|
'run-state',
|
|
|
|
'sockets',
|
|
|
|
'trace',
|
|
|
|
'transaction',
|
2020-12-28 18:08:41 +03:00
|
|
|
'yank',
|
2020-08-19 15:44:56 +03:00
|
|
|
]
|
2021-01-22 23:44:38 +03:00
|
|
|
if have_system
|
|
|
|
qapi_all_modules += [
|
2021-01-22 23:44:40 +03:00
|
|
|
'acpi',
|
|
|
|
'audio',
|
2021-01-22 23:44:38 +03:00
|
|
|
'qdev',
|
2021-01-22 23:44:40 +03:00
|
|
|
'pci',
|
|
|
|
'rdma',
|
|
|
|
'rocker',
|
|
|
|
'tpm',
|
2021-01-22 23:44:38 +03:00
|
|
|
]
|
|
|
|
endif
|
2021-01-22 23:44:41 +03:00
|
|
|
if have_system or have_tools
|
|
|
|
qapi_all_modules += [
|
|
|
|
'ui',
|
|
|
|
]
|
|
|
|
endif
|
2020-08-19 15:44:56 +03:00
|
|
|
|
|
|
|
qapi_storage_daemon_modules = [
|
|
|
|
'block-core',
|
2020-09-24 18:26:48 +03:00
|
|
|
'block-export',
|
2020-08-19 15:44:56 +03:00
|
|
|
'char',
|
|
|
|
'common',
|
|
|
|
'control',
|
|
|
|
'crypto',
|
|
|
|
'introspect',
|
|
|
|
'job',
|
|
|
|
'qom',
|
|
|
|
'sockets',
|
|
|
|
'pragma',
|
|
|
|
'transaction',
|
|
|
|
]
|
|
|
|
|
|
|
|
qapi_nonmodule_outputs = [
|
|
|
|
'qapi-introspect.c', 'qapi-introspect.h',
|
|
|
|
'qapi-types.c', 'qapi-types.h',
|
|
|
|
'qapi-visit.h', 'qapi-visit.c',
|
|
|
|
'qapi-commands.h', 'qapi-commands.c',
|
|
|
|
'qapi-init-commands.h', 'qapi-init-commands.c',
|
|
|
|
'qapi-events.h', 'qapi-events.c',
|
|
|
|
'qapi-emit-events.c', 'qapi-emit-events.h',
|
|
|
|
]
|
|
|
|
|
|
|
|
# First build all sources
|
|
|
|
qapi_util_outputs = [
|
|
|
|
'qapi-builtin-types.c', 'qapi-builtin-visit.c',
|
|
|
|
'qapi-builtin-types.h', 'qapi-builtin-visit.h',
|
|
|
|
]
|
|
|
|
|
|
|
|
qapi_inputs = []
|
|
|
|
qapi_specific_outputs = []
|
|
|
|
foreach module : qapi_all_modules
|
|
|
|
qapi_inputs += [ files(module + '.json') ]
|
|
|
|
qapi_module_outputs = [
|
|
|
|
'qapi-types-@0@.c'.format(module),
|
|
|
|
'qapi-types-@0@.h'.format(module),
|
|
|
|
'qapi-visit-@0@.c'.format(module),
|
|
|
|
'qapi-visit-@0@.h'.format(module),
|
|
|
|
]
|
2021-02-24 20:16:42 +03:00
|
|
|
if have_system or have_tools
|
|
|
|
qapi_module_outputs += [
|
|
|
|
'qapi-events-@0@.c'.format(module),
|
|
|
|
'qapi-events-@0@.h'.format(module),
|
|
|
|
'qapi-commands-@0@.c'.format(module),
|
|
|
|
'qapi-commands-@0@.h'.format(module),
|
|
|
|
]
|
|
|
|
endif
|
2020-08-19 15:44:56 +03:00
|
|
|
if module.endswith('-target')
|
|
|
|
qapi_specific_outputs += qapi_module_outputs
|
|
|
|
else
|
|
|
|
qapi_util_outputs += qapi_module_outputs
|
|
|
|
endif
|
|
|
|
endforeach
|
|
|
|
|
|
|
|
qapi_files = custom_target('shared QAPI source files',
|
docs/interop: Convert qemu-qmp-ref to rST
Convert qemu-qmp-ref to rST format. This includes dropping
the plain-text, pdf and info format outputs for this document;
as with all our other Sphinx-based documentation, we provide
HTML and manpage only.
The qemu-qmp-ref.rst is somewhat more stripped down than
the .texi was, because we do not (currently) attempt to
generate indexes for the commands, events and data types
being documented.
Again, we drop the direct link from index.html.in now that
the QMP ref is part of the interop manual.
This commit removes the code from the root meson.build file that
handled the various Texinfo-based outputs, because we no longer
generate any documentation except for the Sphinx HTML manuals and the
manpages, and the code can't handle having an empty list of files
to process.. We'll do further cleanup of the remainders of
Texinfo support in subsequent commits.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20200925162316.21205-10-peter.maydell@linaro.org>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
[Unicode legacy literal dumbed down to plain string literal, TODO
comment on displaying QEMU version added, "make html" fixed,
storage-daemon/qapi/meson.build updated]
Signed-off-by: Markus Armbruster <armbru@redhat.com>
2020-09-25 19:23:04 +03:00
|
|
|
output: qapi_util_outputs + qapi_specific_outputs + qapi_nonmodule_outputs,
|
2020-08-19 15:44:56 +03:00
|
|
|
input: [ files('qapi-schema.json') ],
|
|
|
|
command: [ qapi_gen, '-o', 'qapi', '-b', '@INPUT0@' ],
|
|
|
|
depend_files: [ qapi_inputs, qapi_gen_depends ])
|
|
|
|
|
|
|
|
# Now go through all the outputs and add them to the right sourceset.
|
|
|
|
# These loops must be synchronized with the output of the above custom target.
|
|
|
|
|
|
|
|
i = 0
|
|
|
|
foreach output : qapi_util_outputs
|
|
|
|
if output.endswith('.h')
|
|
|
|
genh += qapi_files[i]
|
|
|
|
endif
|
|
|
|
util_ss.add(qapi_files[i])
|
|
|
|
i = i + 1
|
|
|
|
endforeach
|
|
|
|
|
2019-08-15 11:01:26 +03:00
|
|
|
foreach output : qapi_specific_outputs + qapi_nonmodule_outputs
|
|
|
|
if output.endswith('.h')
|
|
|
|
genh += qapi_files[i]
|
|
|
|
endif
|
|
|
|
specific_ss.add(when: 'CONFIG_SOFTMMU', if_true: qapi_files[i])
|
|
|
|
i = i + 1
|
|
|
|
endforeach
|