qemu-e2k/hw/core
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
..
Kconfig kconfig: introduce kconfig files 2019-03-07 21:45:53 +01:00
Makefile.objs qdev: add qdev_add_vm_change_state_handler() 2019-07-08 16:00:26 +02:00
bus.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
empty_slot.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
fw-path-provider.c Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
generic-loader.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
hotplug.c call HotplugHandler->plug() as the last step in device realization 2018-10-19 13:44:12 +02:00
irq.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
loader-fit.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
loader.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
machine-hmp-cmds.c i386/cpu: Consolidate die-id validity in smp context 2019-07-05 17:08:03 -03:00
machine-qmp-cmds.c Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
machine.c compat: disable edid on virtio-gpu base device 2019-08-06 15:45:59 +01:00
nmi.c Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
null-machine.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
numa.c Include sysemu/sysemu.h a lot less 2019-08-16 13:31:53 +02:00
or-irq.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
platform-bus.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
ptimer.c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
qdev-fw.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
qdev-properties-system.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
qdev-properties.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
qdev.c Clean up inclusion of sysemu/sysemu.h 2019-08-16 13:31:53 +02:00
register.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
reset.c qemu/queue.h: leave head structs anonymous unless necessary 2019-01-11 15:46:55 +01:00
split-irq.c Include hw/qdev-properties.h less 2019-08-16 13:31:53 +02:00
stream.c Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
sysbus.c Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
uboot_image.h Support u-boot noload images for arm as used by, NetBSD/evbarm GENERIC kernel. 2019-01-07 15:46:20 +00:00
vm-change-state-handler.c Include sysemu/sysemu.h a lot less 2019-08-16 13:31:53 +02:00