Kevin Wolf <kw...@redhat.com> writes: > Both the system emulators and tools with QMP support (specifically, the > planned storage daemon) will need to parse monitor options, so move that > code to monitor/monitor.c, which can be linked into binaries that aren't > a system emulator. > > Signed-off-by: Kevin Wolf <kw...@redhat.com> > Reviewed-by: Markus Armbruster <arm...@redhat.com> > --- > include/monitor/monitor.h | 4 ++++ > include/sysemu/sysemu.h | 1 - > monitor/monitor.c | 48 +++++++++++++++++++++++++++++++++++++++ > vl.c | 45 +----------------------------------- > 4 files changed, 53 insertions(+), 45 deletions(-) > > diff --git a/include/monitor/monitor.h b/include/monitor/monitor.h > index a81eeff5f8..ecf6cce827 100644 > --- a/include/monitor/monitor.h > +++ b/include/monitor/monitor.h > @@ -3,6 +3,7 @@ > > #include "block/block.h" > #include "qapi/qapi-types-misc.h" > +#include "qemu/option.h"
Superfluous; qemu/typedefs.h already provides what you need. > #include "qemu/readline.h" > > extern __thread Monitor *cur_mon; > @@ -10,12 +11,15 @@ typedef struct MonitorHMP MonitorHMP; > > #define QMP_REQ_QUEUE_LEN_MAX 8 > > +extern QemuOptsList qemu_mon_opts; > + > bool monitor_cur_is_qmp(void); > > void monitor_init_globals(void); > void monitor_init_globals_core(void); > void monitor_init_qmp(Chardev *chr, bool pretty); > void monitor_init_hmp(Chardev *chr, bool use_readline); > +int monitor_init_opts(QemuOpts *opts, Error **errp); > void monitor_cleanup(void); > > int monitor_suspend(Monitor *mon); [...] With the superfluous #include dropped: Reviewed-by: Markus Armbruster <arm...@redhat.com>