xemu/hw
Markus Armbruster db72581598 Include qemu/main-loop.h less
In my "build everything" tree, changing qemu/main-loop.h triggers a
recompile of some 5600 out of 6600 objects (not counting tests and
objects that don't depend on qemu/osdep.h).  It includes block/aio.h,
which in turn includes qemu/event_notifier.h, qemu/notify.h,
qemu/processor.h, qemu/qsp.h, qemu/queue.h, qemu/thread-posix.h,
qemu/thread.h, qemu/timer.h, and a few more.

Include qemu/main-loop.h only where it's needed.  Touching it now
recompiles only some 1700 objects.  For block/aio.h and
qemu/event_notifier.h, these numbers drop from 5600 to 2800.  For the
others, they shrink only slightly.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20190812052359.30071-21-armbru@redhat.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
2019-08-16 13:31:52 +02:00
..
9pfs Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
acpi Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
adc Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
alpha Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
arm Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
audio Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
block Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
bt Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
char Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
core Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
cpu Include hw/irq.h a lot less 2019-08-16 13:31:52 +02:00
cris Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
display Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
dma Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
gpio Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
hppa Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
hyperv Include qemu/module.h where needed, drop it from qemu-common.h 2019-06-12 13:18:33 +02:00
i2c Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
i386 Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
ide Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
input Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
intc Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
ipack Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
ipmi Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
isa Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
lm32 Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
m68k Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
mem Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
microblaze Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
mips Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
misc Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
moxie Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
net Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
nios2 Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
nvram Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
openrisc Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
pci Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
pci-bridge Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
pci-host Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
pcmcia Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
ppc Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
rdma Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
riscv Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
s390x Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
scsi Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
sd Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
semihosting semihosting: split console_out into string and char versions 2019-06-12 17:53:22 +01:00
sh4 Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
smbios Clean up inclusion of exec/cpu-common.h 2019-08-16 13:31:52 +02:00
sparc Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
sparc64 Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
ssi Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
timer Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
tpm Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
tricore Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
unicore32 Include hw/irq.h a lot less 2019-08-16 13:31:52 +02:00
usb Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
vfio Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
virtio Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
watchdog Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
xen Include qemu/main-loop.h less 2019-08-16 13:31:52 +02:00
xenpv Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
xtensa Include hw/hw.h exactly where needed 2019-08-16 13:31:52 +02:00
Kconfig semihosting: introduce CONFIG_SEMIHOSTING 2019-05-28 10:28:50 +01:00
Makefile.objs Makefile: do not repeat $(CONFIG_SOFTMMU) in hw/Makefile.objs 2019-07-15 20:58:37 +02:00