qemu-patch-raspberry4/hw/char
Markus Armbruster 46517dd497 Include sysemu/sysemu.h a lot less
In my "build everything" tree, changing sysemu/sysemu.h triggers a
recompile of some 5400 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).

hw/qdev-core.h includes sysemu/sysemu.h since recent commit e965ffa70a
"qdev: add qdev_add_vm_change_state_handler()".  This is a bad idea:
hw/qdev-core.h is widely included.

Move the declaration of qdev_add_vm_change_state_handler() to
sysemu/sysemu.h, and drop the problematic include from hw/qdev-core.h.

Touching sysemu/sysemu.h now recompiles some 1800 objects.
qemu/uuid.h also drops from 5400 to 1800.  A few more headers show
smaller improvement: qemu/notify.h drops from 5600 to 5200,
qemu/timer.h from 5600 to 4500, and qapi/qapi-types-run-state.h from
5500 to 5000.

Cc: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20190812052359.30071-28-armbru@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
2019-08-16 13:31:53 +02:00
..
bcm2835_aux.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
cadence_uart.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
cmsdk-apb-uart.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
debugcon.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
digic-uart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
escc.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
etraxfs_ser.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
exynos4210_uart.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
grlib_apbuart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
imx_serial.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
ipoctal232.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
Kconfig hw/char: Move multi-serial devices into separate file 2019-05-17 15:19:39 +02:00
lm32_juart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
lm32_uart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
Makefile.objs hw/char: Move multi-serial devices into separate file 2019-05-17 15:19:39 +02:00
mcf_uart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
milkymist-uart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
nrf51_uart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
omap_uart.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
parallel-isa.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
parallel.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
pl011.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
sclpconsole-lm.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
sclpconsole.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
serial-isa.c Include sysemu/sysemu.h a lot less 2019-08-16 13:31:53 +02:00
serial-pci-multi.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
serial-pci.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
serial.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
sh_serial.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
spapr_vty.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
stm32f2xx_usart.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
terminal3270.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
trace-events trace-events: Fix attribution of trace points to source 2019-03-22 16:18:07 +00:00
virtio-console.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
virtio-serial-bus.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
xen_console.c Include sysemu/sysemu.h a lot less 2019-08-16 13:31:53 +02:00
xilinx_uartlite.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00