From: Paolo Bonzini <pbonzini@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: Peter Maydell <peter.maydell@linaro.org>,
qemu-devel@nongnu.org, Stefan Hajnoczi <stefanha@redhat.com>
Subject: Re: [Qemu-devel] Our use of #include is undisciplined, and what to do about it
Date: Tue, 15 Mar 2016 15:51:53 +0100 [thread overview]
Message-ID: <56E82189.9080501@redhat.com> (raw)
In-Reply-To: <87oaagj5m9.fsf@blackfin.pond.sub.org>
On 15/03/2016 13:19, Markus Armbruster wrote:
> Paolo Bonzini <pbonzini@redhat.com> writes:
>
>> On 15/03/2016 10:29, Markus Armbruster wrote:
>>> NEED_CPU_H further adds
>>>
>>> include/disas/bfd.h
>>> include/exec/cpu-all.h
>>> include/exec/cpu-common.h
>>> include/exec/cpu-defs.h
>>> include/exec/exec-all.h
>>> include/exec/hwaddr.h
>>> include/exec/memattrs.h
>>> include/exec/memory.h
>>> include/hw/hotplug.h
>>> include/hw/i386/apic.h
>>> include/hw/irq.h
>>> include/hw/qdev-core.h
>>> include/qemu/bitmap.h
>>> include/qemu/bitops.h
>>> include/qemu/int128.h
>>> include/qemu/log.h
>>> include/qemu/notify.h
>>> include/qemu/rcu.h
>>> include/qemu/thread-posix.h
>>> include/qemu/thread.h
>>> include/qom/cpu.h
>>> include/qom/object.h
>>> include/standard-headers/asm-x86/hyperv.h
>>> include/standard-headers/linux/types.h
>>> target-i386/cpu-qom.h
>>> target-i386/cpu.h
>>> target-i386/svm.h
>>> tcg/i386/tcg-target.h
>>> x86_64-softmmu/config-target.h
>>
>> FWIW, I'm going to do something about this in 2.7. I have patches to
>> remove cpu.h inclusion from qemu-common.h.
>
> Appreciated!
Now pushed to github.com/bonzini/qemu.git branch need-cpu-h.
Shortlog follows:
Paolo Bonzini (48):
include: move some definitions out of qemu-common.h
log: do not use CONFIG_USER_ONLY
hw: explicitly include qemu-common.h and cpu.h
cpu: make cpu-qom.h only include-able from cpu.h
target-alpha: make cpu-qom.h not target specific
target-arm: make cpu-qom.h not target specific
target-cris: make cpu-qom.h not target specific
target-i386: make cpu-qom.h not target specific
target-lm32: make cpu-qom.h not target specific
target-m68k: make cpu-qom.h not target specific
target-microblaze: make cpu-qom.h not target specific
target-mips: make cpu-qom.h not target specific
target-ppc: do not use target_ulong in cpu-qom.h
target-ppc: make cpu-qom.h not target specific
target-s390x: make cpu-qom.h not target specific
target-sh4: make cpu-qom.h not target specific
target-sparc: make cpu-qom.h not target specific
target-tricore: make cpu-qom.h not target specific
target-unicore32: make cpu-qom.h not target specific
target-xtensa: make cpu-qom.h not target specific
arm: include cpu-qom.h in files that require ARMCPU
m68k: include cpu-qom.h in files that require M68KCPU
sh4: include cpu-qom.h in files that require M68KCPU
alpha: include cpu-qom.h in files that require AlphaCPU
mips: use MIPSCPU instead of CPUMIPSState
ppc: use PowerPCCPU instead of CPUPPCState
arm: remove useless cpu.h inclusion
explicitly include qom/cpu.h
explicitly include hw/qdev-core.h
explicitly include linux/kvm.h
apic: move target-dependent definitions to cpu.h
include: poison symbols in osdep.h
hw: do not use VMSTATE_*TL
hw: move CPU state serialization to migration/cpu.h
hw: cannot include hw/hw.h from user emulation
cpu: move endian-dependent load/store functions to cpu-all.h
qemu-common: stop including qemu/bswap.h from qemu-common.h
qemu-common: stop including qemu/host-utils.h from qemu-common.h
gdbstub: remove includes from gdbstub-xml.c
dma: do not depend on kvm_enabled()
do not include qemu-common.h in hw/hw.h
s390x: move stuff out of cpu.h
qemu-common: push cpu.h inclusion out of qemu-common.h
arm: move arm_log_exception into .c file
mips: move CP0 functions out of cpu.h
hw: explicitly include qemu/log.h
exec: extract exec/tb-context.h
cpu: move exec-all.h inclusion out of cpu.h
next prev parent reply other threads:[~2016-03-15 14:52 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-15 9:29 [Qemu-devel] Our use of #include is undisciplined, and what to do about it Markus Armbruster
2016-03-15 9:40 ` Paolo Bonzini
2016-03-15 12:19 ` Markus Armbruster
2016-03-15 14:51 ` Paolo Bonzini [this message]
2016-03-15 10:03 ` Peter Maydell
2016-03-15 12:28 ` Markus Armbruster
2016-03-15 12:56 ` Peter Maydell
2016-03-15 13:39 ` Stefan Hajnoczi
2016-03-15 13:51 ` Daniel P. Berrange
2016-03-15 13:56 ` Dr. David Alan Gilbert
2016-03-16 18:23 ` Stefan Hajnoczi
2016-03-16 18:27 ` Dr. David Alan Gilbert
2016-03-17 11:25 ` Stefan Hajnoczi
2016-03-17 16:29 ` Dr. David Alan Gilbert
2016-03-17 19:21 ` Paolo Bonzini
2016-03-17 19:43 ` Dr. David Alan Gilbert
2016-03-17 19:58 ` Paolo Bonzini
2016-03-17 20:14 ` Richard Henderson
2016-03-17 20:27 ` Peter Maydell
2016-03-17 20:29 ` Richard Henderson
2016-03-17 21:02 ` Paolo Bonzini
2016-03-17 20:59 ` Paolo Bonzini
2016-03-17 19:40 ` Richard Henderson
2019-05-27 13:12 ` Markus Armbruster
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56E82189.9080501@redhat.com \
--to=pbonzini@redhat.com \
--cc=armbru@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).