cdb6610ae4
Linking code from multiple separate QAPI schemata into the same program is possible, but involves some weirdness around built-in types: * We generate code for built-in types into .c only with option --builtins. The user is responsible for generating code for exactly one QAPI schema per program with --builtins. * We generate code for built-in types into .h regardless of --builtins, but guarded by #ifndef QAPI_VISIT_BUILTIN. Because all copies of this code are exactly the same, including any combination of these headers works. Replace this contraption by something more conventional: generate code for built-in types into their very own files: qapi-builtin-types.c, qapi-builtin-visit.c, qapi-builtin-types.h, qapi-builtin-visit.h, but only with --builtins. Obey --output-dir, but ignore --prefix for them. Make qapi-types.h include qapi-builtin-types.h. With multiple schemata you now have multiple qapi-types.[ch], but only one qapi-builtin-types.[ch]. Same for qapi-visit.[ch] and qapi-builtin-visit.[ch]. Bonus: if all you need is built-in stuff, you can include a much smaller header. To be exploited shortly. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <20180211093607.27351-21-armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> [eblake: fix octal constant for python 3] Signed-off-by: Eric Blake <eblake@redhat.com>
146 lines
2.5 KiB
Plaintext
146 lines
2.5 KiB
Plaintext
/config-devices.*
|
|
/config-all-devices.*
|
|
/config-all-disas.*
|
|
/config-host.*
|
|
/config-target.*
|
|
/config.status
|
|
/config-temp
|
|
/trace-events-all
|
|
/trace/generated-events.h
|
|
/trace/generated-events.c
|
|
/trace/generated-helpers-wrappers.h
|
|
/trace/generated-helpers.h
|
|
/trace/generated-helpers.c
|
|
/trace/generated-tcg-tracers.h
|
|
/ui/shader/texture-blit-frag.h
|
|
/ui/shader/texture-blit-vert.h
|
|
/ui/shader/texture-blit-flip-vert.h
|
|
/ui/input-keymap-*.c
|
|
*-timestamp
|
|
/*-softmmu
|
|
/*-darwin-user
|
|
/*-linux-user
|
|
/*-bsd-user
|
|
/ivshmem-client
|
|
/ivshmem-server
|
|
/libdis*
|
|
/libuser
|
|
/linux-headers/asm
|
|
/qga/qapi-generated
|
|
/qapi-generated
|
|
/qapi-gen-timestamp
|
|
/qapi-builtin-types.[ch]
|
|
/qapi-builtin-visit.[ch]
|
|
/qapi-types.[ch]
|
|
/qapi-visit.[ch]
|
|
/qapi-event.[ch]
|
|
/qapi-doc.texi
|
|
/qmp-commands.[ch]
|
|
/qmp-introspect.[ch]
|
|
/qemu-doc.html
|
|
/qemu-doc.info
|
|
/qemu-doc.txt
|
|
/qemu-img
|
|
/qemu-nbd
|
|
/qemu-options.def
|
|
/qemu-options.texi
|
|
/qemu-img-cmds.texi
|
|
/qemu-img-cmds.h
|
|
/qemu-io
|
|
/qemu-ga
|
|
/qemu-bridge-helper
|
|
/qemu-keymap
|
|
/qemu-monitor.texi
|
|
/qemu-monitor-info.texi
|
|
/qemu-version.h
|
|
/qemu-version.h.tmp
|
|
/module_block.h
|
|
/scsi/qemu-pr-helper
|
|
/vhost-user-scsi
|
|
/vhost-user-blk
|
|
/fsdev/virtfs-proxy-helper
|
|
*.tmp
|
|
*.[1-9]
|
|
*.a
|
|
*.aux
|
|
*.cp
|
|
*.exe
|
|
*.msi
|
|
*.dll
|
|
*.so
|
|
*.mo
|
|
*.fn
|
|
*.ky
|
|
*.log
|
|
*.pdf
|
|
*.pod
|
|
*.cps
|
|
*.fns
|
|
*.kys
|
|
*.pg
|
|
*.pyc
|
|
*.toc
|
|
*.tp
|
|
*.vr
|
|
*.d
|
|
!/scripts/qemu-guest-agent/fsfreeze-hook.d
|
|
*.o
|
|
.sdk
|
|
*.gcda
|
|
*.gcno
|
|
/pc-bios/bios-pq/status
|
|
/pc-bios/vgabios-pq/status
|
|
/pc-bios/optionrom/linuxboot.asm
|
|
/pc-bios/optionrom/linuxboot.bin
|
|
/pc-bios/optionrom/linuxboot.raw
|
|
/pc-bios/optionrom/linuxboot.img
|
|
/pc-bios/optionrom/linuxboot_dma.asm
|
|
/pc-bios/optionrom/linuxboot_dma.bin
|
|
/pc-bios/optionrom/linuxboot_dma.raw
|
|
/pc-bios/optionrom/linuxboot_dma.img
|
|
/pc-bios/optionrom/multiboot.asm
|
|
/pc-bios/optionrom/multiboot.bin
|
|
/pc-bios/optionrom/multiboot.raw
|
|
/pc-bios/optionrom/multiboot.img
|
|
/pc-bios/optionrom/kvmvapic.asm
|
|
/pc-bios/optionrom/kvmvapic.bin
|
|
/pc-bios/optionrom/kvmvapic.raw
|
|
/pc-bios/optionrom/kvmvapic.img
|
|
/pc-bios/s390-ccw/s390-ccw.elf
|
|
/pc-bios/s390-ccw/s390-ccw.img
|
|
/docs/interop/qemu-ga-qapi.texi
|
|
/docs/interop/qemu-ga-ref.html
|
|
/docs/interop/qemu-ga-ref.info*
|
|
/docs/interop/qemu-ga-ref.txt
|
|
/docs/interop/qemu-qmp-qapi.texi
|
|
/docs/interop/qemu-qmp-ref.html
|
|
/docs/interop/qemu-qmp-ref.info*
|
|
/docs/interop/qemu-qmp-ref.txt
|
|
/docs/version.texi
|
|
*.tps
|
|
.stgit-*
|
|
.git-submodule-status
|
|
cscope.*
|
|
tags
|
|
TAGS
|
|
docker-src.*
|
|
*~
|
|
*.ast_raw
|
|
*.depend_raw
|
|
trace.h
|
|
trace.c
|
|
trace-ust.h
|
|
trace-ust.h
|
|
trace-dtrace.h
|
|
trace-dtrace.dtrace
|
|
trace-root.h
|
|
trace-root.c
|
|
trace-ust-root.h
|
|
trace-ust-root.h
|
|
trace-ust-all.h
|
|
trace-ust-all.c
|
|
trace-dtrace-root.h
|
|
trace-dtrace-root.dtrace
|
|
trace-ust-all.h
|
|
trace-ust-all.c
|