Hardware convenience library
The only target dependency for most hardware is sizeof(target_phys_addr_t).
Build these files into a convenience library, and use that instead of
building for every target.
Remove and poison various target specific macros to avoid bogus target
dependencies creeping back in.
Big/Little endian is not handled because devices should not know or care
about this to start with.
Signed-off-by: Paul Brook <paul@codesourcery.com>
diff --git a/hw/hw.h b/hw/hw.h
index d0cf598..c990d1a 100644
--- a/hw/hw.h
+++ b/hw/hw.h
@@ -3,6 +3,13 @@
#define QEMU_HW_H
#include "qemu-common.h"
+
+#if defined(TARGET_PHYS_ADDR_BITS) && !defined(NEED_CPU_H)
+#include "targphys.h"
+#include "poison.h"
+#include "cpu-common.h"
+#endif
+
#include "irq.h"
/* VM Load/Save */