diff options
author | Markus Armbruster <armbru@redhat.com> | 2019-08-12 07:23:31 +0200 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2019-08-16 13:31:51 +0200 |
commit | ec150c7e09071bcf51bfaa8071fe23efb6df69f7 (patch) | |
tree | 1226162aa31d0fc73ee0ed389fe3719d79ff7201 /include/hw/s390x | |
parent | f8f2eac4e5de8ce8ef17591ee1b84904437be25b (diff) |
include: Make headers more self-contained
Back in 2016, we discussed[1] rules for headers, and these were
generally liked:
1. Have a carefully curated header that's included everywhere first. We
got that already thanks to Peter: osdep.h.
2. Headers should normally include everything they need beyond osdep.h.
If exceptions are needed for some reason, they must be documented in
the header. If all that's needed from a header is typedefs, put
those into qemu/typedefs.h instead of including the header.
3. Cyclic inclusion is forbidden.
This patch gets include/ closer to obeying 2.
It's actually extracted from my "[RFC] Baby steps towards saner
headers" series[2], which demonstrates a possible path towards
checking 2 automatically. It passes the RFC test there.
[1] Message-ID: <87h9g8j57d.fsf@blackfin.pond.sub.org>
https://lists.nongnu.org/archive/html/qemu-devel/2016-03/msg03345.html
[2] Message-Id: <20190711122827.18970-1-armbru@redhat.com>
https://lists.nongnu.org/archive/html/qemu-devel/2019-07/msg02715.html
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20190812052359.30071-2-armbru@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Diffstat (limited to 'include/hw/s390x')
-rw-r--r-- | include/hw/s390x/ap-device.h | 3 | ||||
-rw-r--r-- | include/hw/s390x/css-bridge.h | 3 | ||||
-rw-r--r-- | include/hw/s390x/css.h | 1 | ||||
-rw-r--r-- | include/hw/s390x/tod.h | 2 |
4 files changed, 7 insertions, 2 deletions
diff --git a/include/hw/s390x/ap-device.h b/include/hw/s390x/ap-device.h index 765e9082a3..8df9cd2954 100644 --- a/include/hw/s390x/ap-device.h +++ b/include/hw/s390x/ap-device.h @@ -7,9 +7,12 @@ * your option) any later version. See the COPYING file in the top-level * directory. */ + #ifndef HW_S390X_AP_DEVICE_H #define HW_S390X_AP_DEVICE_H +#include "hw/qdev-core.h" + #define AP_DEVICE_TYPE "ap-device" typedef struct APDevice { diff --git a/include/hw/s390x/css-bridge.h b/include/hw/s390x/css-bridge.h index 5a0203be5f..f7ed2d9a03 100644 --- a/include/hw/s390x/css-bridge.h +++ b/include/hw/s390x/css-bridge.h @@ -12,8 +12,9 @@ #ifndef HW_S390X_CSS_BRIDGE_H #define HW_S390X_CSS_BRIDGE_H + #include "qom/object.h" -#include "hw/qdev-core.h" +#include "hw/sysbus.h" /* virtual css bridge */ typedef struct VirtualCssBridge { diff --git a/include/hw/s390x/css.h b/include/hw/s390x/css.h index d033387fba..f46bcafb16 100644 --- a/include/hw/s390x/css.h +++ b/include/hw/s390x/css.h @@ -17,6 +17,7 @@ #include "hw/s390x/s390_flic.h" #include "hw/s390x/ioinst.h" #include "sysemu/kvm.h" +#include "target/s390x/cpu-qom.h" /* Channel subsystem constants. */ #define MAX_DEVNO 65535 diff --git a/include/hw/s390x/tod.h b/include/hw/s390x/tod.h index 9c4a6000c3..d71f4ea8a7 100644 --- a/include/hw/s390x/tod.h +++ b/include/hw/s390x/tod.h @@ -12,7 +12,7 @@ #define HW_S390_TOD_H #include "hw/qdev.h" -#include "s390-tod.h" +#include "target/s390x/s390-tod.h" typedef struct S390TOD { uint8_t high; |