]> git.proxmox.com Git - mirror_qemu.git/commit - vl.c
Include less of the generated modular QAPI headers
authorMarkus Armbruster <armbru@redhat.com>
Sun, 11 Feb 2018 09:36:01 +0000 (10:36 +0100)
committerEric Blake <eblake@redhat.com>
Fri, 2 Mar 2018 19:45:50 +0000 (13:45 -0600)
commit9af2398977a78d37bf184d6ff6bd04c72bfbf006
tree9d73bacd7a689fb319b81f9fdaa65e39fc21fd89
parent252dc3105fc494182e236e97fe20f2d6b1d652cb
Include less of the generated modular QAPI headers

In my "build everything" tree, a change to the types in
qapi-schema.json triggers a recompile of about 4800 out of 5100
objects.

The previous commit split up qmp-commands.h, qmp-event.h, qmp-visit.h,
qapi-types.h.  Each of these headers still includes all its shards.
Reduce compile time by including just the shards we actually need.

To illustrate the benefits: adding a type to qapi/migration.json now
recompiles some 2300 instead of 4800 objects.  The next commit will
improve it further.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Message-Id: <20180211093607.27351-24-armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
[eblake: rebase to master]
Signed-off-by: Eric Blake <eblake@redhat.com>
115 files changed:
backends/cryptodev.c
backends/hostmem.c
block.c
block/block-backend.c
block/crypto.c
block/nbd.c
block/nfs.c
block/qapi.c
block/qcow2.c
block/quorum.c
block/sheepdog.c
block/ssh.c
block/throttle-groups.c
block/write-threshold.c
blockdev-nbd.c
blockdev.c
blockjob.c
chardev/char-fe.c
chardev/char-ringbuf.c
chardev/char-socket.c
chardev/char.c
cpus.c
crypto/cipherpriv.h
hmp.c
hw/acpi/core.c
hw/block/block.c
hw/block/hd-geometry.c
hw/char/virtio-console.c
hw/core/machine.c
hw/i386/pc.c
hw/mem/nvdimm.c
hw/net/rocker/qmp-norocker.c
hw/net/rocker/rocker.c
hw/net/rocker/rocker_fp.c
hw/net/rocker/rocker_of_dpa.c
hw/net/virtio-net.c
hw/ppc/spapr_rtas.c
hw/tpm/tpm_emulator.c
hw/tpm/tpm_passthrough.c
hw/watchdog/watchdog.c
include/block/block.h
include/block/dirty-bitmap.h
include/block/nbd.h
include/chardev/char.h
include/crypto/cipher.h
include/crypto/hash.h
include/crypto/hmac.h
include/crypto/secret.h
include/crypto/tlscreds.h
include/hw/block/block.h
include/hw/block/fdc.h
include/hw/ppc/spapr_drc.h
include/hw/qdev-properties.h
include/io/dns-resolver.h
include/migration/colo.h
include/migration/failover.h
include/migration/global_state.h
include/monitor/monitor.h
include/net/filter.h
include/net/net.h
include/qapi/clone-visitor.h
include/qapi/error.h
include/qapi/qmp/qobject.h
include/qapi/visitor.h
include/qemu/sockets.h
include/qemu/throttle.h
include/qom/cpu.h
include/qom/object.h
include/sysemu/dump.h
include/sysemu/hostmem.h
include/sysemu/replay.h
include/sysemu/sysemu.h
include/sysemu/tpm.h
include/sysemu/watchdog.h
include/ui/console.h
include/ui/input.h
io/channel-socket.c
io/dns-resolver.c
migration/colo-failover.c
migration/colo.c
migration/migration.c
migration/migration.h
migration/ram.c
migration/ram.h
net/colo-compare.c
net/filter-buffer.c
net/filter-mirror.c
net/filter-rewriter.c
net/net.c
net/tap_int.h
net/vhost-user.c
qemu-img.c
qom/object.c
qom/object_interfaces.c
replay/replay-input.c
replication.h
scripts/qapi/commands.py
scripts/qapi/events.py
scripts/qapi/types.py
scripts/qapi/visit.py
stubs/tpm.c
target/s390x/kvm.c
target/s390x/sigp.c
tests/test-char.c
tests/test-qmp-event.c
tpm.c
trace/qmp.c
ui/console.c
ui/input-legacy.c
ui/input.c
ui/spice-core.c
ui/vnc.c
ui/vnc.h
util/qemu-sockets.c
vl.c