Hi, I tried to move the definition of HOST_LONG_BITS from configure to qemu-common.h. While doing this, I noticed that the different QEMU targets use includes in non-uniform ways.
So the simple goal resulted in quite a lot of patches. Patch 1 simply removes a derived macro. This patch is independent of the others. The next patches try to implement a more uniform include scheme for the TCG targets than today: * cpu.h always starts with config.h and qemu-common.h. * config.h is not needed before cpu.h * qemu-common.h is not needed after cpu.h. * Standard includes are not needed because they are already in qemu-common.h This also avoids potential errors when qemu-common.h is included without a preceding config.h. Future code changes should be easier as soon as all targets use a uniform include scheme. The last patch finally achieves my initial goal. Regards, Stefan Weil [PATCH 01/15] Remove macro HOST_LONG_SIZE [PATCH 02/15] target-alpha: Clean includes [PATCH 03/15] target-arm: Clean includes [PATCH 04/15] target-cris: Clean includes [PATCH 05/15] target-i386: Clean includes [PATCH 06/15] target-lm32: Clean includes [PATCH 07/15] target-m68k: Clean includes [PATCH 08/15] target-microblaze: Clean includes [PATCH 09/15] target-mips: Clean includes [PATCH 10/15] target-ppc: Clean includes [PATCH 11/15] target-s390x: Clean includes [PATCH 12/15] target-sh4: Clean includes [PATCH 13/15] target-unicore32: Clean includes [PATCH 14/15] target-xtensa: Clean includes [PATCH 15/15] Move definition of HOST_LONG_BITS to qemu-common.h