diff mbox

[RFC,v3,1/5] tests: New make target check-source

Message ID 1467291213-13393-2-git-send-email-armbru@redhat.com
State New
Headers show

Commit Message

Markus Armbruster June 30, 2016, 12:53 p.m. UTC
Make target check-source is for checking the source code itself.  For
now, there's just one such check, make target check-headers.  It
checks basic header sanity: for each header "FOO.h", test whether

	#include "qemu/osdep.h"
	#include "FOO.h"
	#include "FOO.h"

compiles.  A large number of headers don't pass this test, by design
or by accident.

Third-party headers we don't intend to clean up are excluded from this
test.  See make variable excluded-headers.

Some headers fail the test because they need to be compiled with
-DNEED_CPU_H, and testing them is not yet implemented.  They are
marked with a comment

    /* NOTE: May only be included into target-dependent code */

Other headers known to fail the test are marked with

    /* FIXME Does not pass make check-headers, yet! */

or, if they fail only with CONFIG_WIN32, with

    /* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */

New make target check-bad-headers helps with examining how these fail.

The test works only in a git tree, with git installed.  It is skipped
unless $(SRC_PATH)/.git exists.

Known bug: we have headers that may only be included when certain
CONFIG_* are present.  The test fails if they aren't.  For instance,
/include/ui/shader.h doesn't compile unless we have CONFIG_OPENGL.
This needs to be addressed before this test can be merged.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
---
 audio/audio_int.h                         |  3 ++
 audio/audio_template.h                    |  2 ++
 audio/audio_win_int.h                     |  2 ++
 audio/dsound_template.h                   |  3 ++
 audio/mixeng_template.h                   |  2 ++
 audio/rate_template.h                     |  2 ++
 block/qcow2.h                             |  2 ++
 block/raw-aio.h                           |  3 ++
 block/vhdx.h                              |  2 ++
 bsd-user/i386/target_signal.h             |  2 ++
 bsd-user/i386/target_syscall.h            |  2 ++
 bsd-user/qemu.h                           |  3 ++
 bsd-user/sparc/target_signal.h            |  2 ++
 bsd-user/sparc/target_syscall.h           |  2 ++
 bsd-user/sparc64/target_signal.h          |  2 ++
 bsd-user/sparc64/target_syscall.h         |  2 ++
 bsd-user/syscall_defs.h                   |  2 ++
 bsd-user/x86_64/target_signal.h           |  2 ++
 bsd-user/x86_64/target_syscall.h          |  2 ++
 contrib/ivshmem-client/ivshmem-client.h   |  2 ++
 contrib/ivshmem-server/ivshmem-server.h   |  2 ++
 fpu/softfloat-macros.h                    |  2 ++
 fpu/softfloat-specialize.h                |  2 ++
 fsdev/file-op-9p.h                        |  3 ++
 fsdev/qemu-fsdev.h                        |  3 ++
 hw/9pfs/9p-proxy.h                        |  3 ++
 hw/9pfs/9p-synth.h                        |  3 ++
 hw/9pfs/9p-xattr.h                        |  3 ++
 hw/9pfs/9p.h                              |  2 ++
 hw/9pfs/coth.h                            |  2 ++
 hw/9pfs/virtio-9p.h                       |  2 ++
 hw/audio/fmopl.h                          |  2 ++
 hw/audio/hda-codec-common.h               |  2 ++
 hw/audio/lm4549.h                         |  2 ++
 hw/block/nvme.h                           |  2 ++
 hw/block/xen_blkif.h                      |  2 ++
 hw/cris/boot.h                            |  2 ++
 hw/display/cirrus_vga_rop.h               |  2 ++
 hw/display/cirrus_vga_rop2.h              |  2 ++
 hw/display/milkymist-vgafb_template.h     |  2 ++
 hw/display/omap_lcd_template.h            |  2 ++
 hw/display/pl110_template.h               |  2 ++
 hw/display/pxa2xx_template.h              |  2 ++
 hw/display/qxl.h                          |  2 ++
 hw/display/sm501_template.h               |  2 ++
 hw/display/tc6393xb_template.h            |  2 ++
 hw/display/vga-helpers.h                  |  2 ++
 hw/display/vga_int.h                      |  3 ++
 hw/i386/intel_iommu_internal.h            |  6 ++--
 hw/ide/ahci.h                             |  2 ++
 hw/lm32/lm32.h                            |  2 ++
 hw/lm32/lm32_hwsetup.h                    |  2 ++
 hw/lm32/milkymist-hw.h                    |  2 ++
 hw/microblaze/boot.h                      |  2 ++
 hw/net/e1000e_core.h                      |  2 ++
 hw/net/e1000x_common.h                    |  2 ++
 hw/net/ne2000.h                           |  2 ++
 hw/net/pcnet.h                            |  2 ++
 hw/net/rocker/rocker_desc.h               |  2 ++
 hw/net/rocker/rocker_fp.h                 |  2 ++
 hw/net/rocker/rocker_of_dpa.h             |  2 ++
 hw/net/rocker/rocker_tlv.h                |  2 ++
 hw/net/rocker/rocker_world.h              |  2 ++
 hw/net/vmware_utils.h                     |  2 ++
 hw/ppc/ppc405.h                           |  2 ++
 hw/s390x/ipl.h                            |  2 ++
 hw/s390x/s390-pci-inst.h                  |  2 ++
 hw/s390x/s390-virtio.h                    |  2 ++
 hw/scsi/mptsas.h                          |  2 ++
 hw/scsi/viosrp.h                          |  3 ++
 hw/tpm/tpm_int.h                          |  3 ++
 hw/tpm/tpm_tis.h                          |  3 ++
 hw/usb/desc.h                             |  2 ++
 hw/usb/quirks.h                           |  2 ++
 hw/vfio/pci.h                             |  3 ++
 hw/xen/xen_pt.h                           |  2 ++
 hw/xenpv/xen_domainbuild.h                |  2 ++
 hw/xtensa/bootparam.h                     |  2 ++
 include/block/write-threshold.h           |  3 ++
 include/disas/disas.h                     |  2 ++
 include/exec/cpu-all.h                    |  3 ++
 include/exec/cpu-defs.h                   |  3 ++
 include/exec/cpu_ldst.h                   |  2 ++
 include/exec/cpu_ldst_template.h          |  2 ++
 include/exec/cpu_ldst_useronly_template.h |  2 ++
 include/exec/cputlb.h                     |  3 ++
 include/exec/exec-all.h                   |  2 ++
 include/exec/gen-icount.h                 |  2 ++
 include/exec/helper-gen.h                 |  2 ++
 include/exec/helper-proto.h               |  2 ++
 include/exec/helper-tcg.h                 |  2 ++
 include/exec/ioport.h                     |  2 ++
 include/exec/memory-internal.h            |  2 ++
 include/exec/ram_addr.h                   |  2 ++
 include/exec/softmmu-semi.h               |  3 ++
 include/exec/tb-hash.h                    |  2 ++
 include/exec/user/abitypes.h              |  2 ++
 include/exec/user/thunk.h                 |  3 ++
 include/hw/acpi/piix4.h                   |  2 ++
 include/hw/acpi/tco.h                     |  3 ++
 include/hw/arm/allwinner-a10.h            |  2 ++
 include/hw/arm/bcm2836.h                  |  2 ++
 include/hw/arm/digic.h                    |  2 ++
 include/hw/arm/fsl-imx25.h                |  2 ++
 include/hw/arm/fsl-imx31.h                |  2 ++
 include/hw/arm/fsl-imx6.h                 |  2 ++
 include/hw/arm/sharpsl.h                  |  3 ++
 include/hw/arm/xlnx-zynqmp.h              |  2 ++
 include/hw/block/fdc.h                    |  2 ++
 include/hw/block/flash.h                  |  2 ++
 include/hw/char/escc.h                    |  2 ++
 include/hw/char/pl011.h                   |  2 ++
 include/hw/char/xilinx_uartlite.h         |  2 ++
 include/hw/cris/etraxfs.h                 |  2 ++
 include/hw/cris/etraxfs_dma.h             |  2 ++
 include/hw/elf_ops.h                      |  2 ++
 include/hw/empty_slot.h                   |  2 ++
 include/hw/i2c/aspeed_i2c.h               |  3 ++
 include/hw/i2c/i2c-ddc.h                  |  2 ++
 include/hw/i2c/pm_smbus.h                 |  2 ++
 include/hw/i386/apic_internal.h           |  3 ++
 include/hw/i386/intel_iommu.h             |  6 ++--
 include/hw/i386/ioapic_internal.h         |  2 ++
 include/hw/input/hid.h                    |  2 ++
 include/hw/intc/allwinner-a10-pic.h       |  2 ++
 include/hw/isa/i8257.h                    |  2 ++
 include/hw/isa/vt82c686.h                 |  2 ++
 include/hw/kvm/clock.h                    |  2 ++
 include/hw/mips/bios.h                    |  2 ++
 include/hw/mips/cpudevs.h                 |  2 ++
 include/hw/mips/mips.h                    |  2 ++
 include/hw/misc/mips_cmgcr.h              |  2 ++
 include/hw/misc/mips_cpc.h                |  2 ++
 include/hw/misc/mips_itu.h                |  2 ++
 include/hw/net/allwinner_emac.h           |  3 ++
 include/hw/nvram/openbios_firmware_abi.h  |  2 ++
 include/hw/pci-host/apb.h                 |  2 ++
 include/hw/pci-host/spapr.h               |  3 ++
 include/hw/pci/pci_bus.h                  |  2 ++
 include/hw/pci/pcie_aer.h                 |  2 ++
 include/hw/ppc/ppc.h                      |  2 ++
 include/hw/ppc/ppc4xx.h                   |  2 ++
 include/hw/ppc/spapr.h                    |  2 ++
 include/hw/ppc/spapr_cpu_core.h           |  3 ++
 include/hw/ppc/spapr_drc.h                |  3 ++
 include/hw/ppc/spapr_vio.h                |  2 ++
 include/hw/ppc/xics.h                     |  3 ++
 include/hw/sparc/grlib.h                  |  2 ++
 include/hw/sparc/sparc32_dma.h            |  2 ++
 include/hw/ssi/xilinx_spips.h             |  2 ++
 include/hw/timer/allwinner-a10-pit.h      |  2 ++
 include/hw/timer/aspeed_timer.h           |  3 ++
 include/hw/timer/i8254_internal.h         |  2 ++
 include/hw/timer/m48t59.h                 |  2 ++
 include/hw/virtio/virtio-access.h         |  3 ++
 include/hw/virtio/virtio-input.h          |  2 ++
 include/hw/virtio/virtio-rng.h            |  2 ++
 include/hw/xen/xen_backend.h              |  2 ++
 include/hw/xen/xen_common.h               |  2 ++
 include/libdecnumber/decNumberLocal.h     |  2 ++
 include/migration/cpu.h                   |  3 ++
 include/monitor/hmp-target.h              |  3 ++
 include/qemu/compatfd.h                   |  2 ++
 include/qemu/ratelimit.h                  |  2 ++
 include/qemu/thread-win32.h               |  2 ++
 include/qemu/xattr.h                      |  3 ++
 include/sysemu/balloon.h                  |  2 ++
 include/sysemu/cpus.h                     |  2 ++
 include/sysemu/dump.h                     |  2 ++
 include/sysemu/iothread.h                 |  2 ++
 include/sysemu/kvm_int.h                  |  2 ++
 include/sysemu/memory_mapping.h           |  2 ++
 include/sysemu/os-posix.h                 |  2 ++
 include/sysemu/os-win32.h                 |  2 ++
 include/sysemu/seccomp.h                  |  3 ++
 include/sysemu/tpm.h                      |  3 ++
 include/sysemu/xen-mapcache.h             |  2 ++
 include/trace-tcg.h                       |  2 ++
 include/ui/egl-context.h                  |  2 ++
 include/ui/egl-helpers.h                  |  2 ++
 include/ui/gtk.h                          |  2 ++
 include/ui/input.h                        |  2 ++
 include/ui/pixel_ops.h                    |  2 ++
 include/ui/sdl2.h                         |  2 ++
 include/ui/shader.h                       |  2 ++
 include/ui/spice-display.h                |  2 ++
 linux-headers/asm-arm/kvm.h               |  2 ++
 linux-headers/asm-arm/kvm_para.h          |  2 ++
 linux-headers/asm-arm64/kvm.h             |  2 ++
 linux-headers/asm-arm64/kvm_para.h        |  2 ++
 linux-headers/asm-arm64/unistd.h          |  2 ++
 linux-headers/asm-mips/kvm.h              |  2 ++
 linux-headers/asm-mips/unistd.h           |  3 ++
 linux-headers/asm-powerpc/kvm.h           |  2 ++
 linux-headers/asm-powerpc/kvm_para.h      |  2 ++
 linux-headers/asm-s390/kvm.h              |  2 ++
 linux-headers/asm-x86/kvm.h               |  2 ++
 linux-headers/asm-x86/kvm_para.h          |  2 ++
 linux-headers/asm-x86/unistd.h            |  2 ++
 linux-headers/linux/kvm.h                 |  2 ++
 linux-headers/linux/kvm_para.h            |  2 ++
 linux-headers/linux/userfaultfd.h         |  2 ++
 linux-headers/linux/vfio.h                |  3 ++
 linux-headers/linux/vhost.h               |  2 ++
 linux-user/aarch64/target_cpu.h           |  3 ++
 linux-user/aarch64/target_signal.h        |  2 ++
 linux-user/aarch64/target_structs.h       |  3 ++
 linux-user/aarch64/termbits.h             |  2 ++
 linux-user/alpha/target_cpu.h             |  3 ++
 linux-user/alpha/target_signal.h          |  2 ++
 linux-user/alpha/target_structs.h         |  3 ++
 linux-user/alpha/target_syscall.h         |  2 ++
 linux-user/alpha/termbits.h               |  2 ++
 linux-user/arm/nwfpe/fpa11.h              |  2 ++
 linux-user/arm/nwfpe/fpopcode.h           |  2 ++
 linux-user/arm/target_cpu.h               |  3 ++
 linux-user/arm/target_signal.h            |  2 ++
 linux-user/arm/target_structs.h           |  3 ++
 linux-user/arm/target_syscall.h           |  2 ++
 linux-user/arm/termbits.h                 |  2 ++
 linux-user/cris/target_cpu.h              |  3 ++
 linux-user/cris/target_signal.h           |  2 ++
 linux-user/cris/target_structs.h          |  3 ++
 linux-user/cris/termbits.h                |  2 ++
 linux-user/flat.h                         |  2 ++
 linux-user/host/aarch64/hostdep.h         |  2 ++
 linux-user/host/arm/hostdep.h             |  2 ++
 linux-user/host/i386/hostdep.h            |  2 ++
 linux-user/host/ppc64/hostdep.h           |  2 ++
 linux-user/host/s390x/hostdep.h           |  2 ++
 linux-user/host/x86_64/hostdep.h          |  2 ++
 linux-user/i386/target_cpu.h              |  2 ++
 linux-user/i386/target_signal.h           |  2 ++
 linux-user/i386/target_structs.h          |  3 ++
 linux-user/i386/target_syscall.h          |  2 ++
 linux-user/i386/termbits.h                |  2 ++
 linux-user/ioctls.h                       |  2 ++
 linux-user/linux_loop.h                   |  3 ++
 linux-user/m68k/target_cpu.h              |  2 ++
 linux-user/m68k/target_signal.h           |  2 ++
 linux-user/m68k/target_structs.h          |  3 ++
 linux-user/m68k/target_syscall.h          |  2 ++
 linux-user/m68k/termbits.h                |  2 ++
 linux-user/microblaze/target_cpu.h        |  3 ++
 linux-user/microblaze/target_signal.h     |  2 ++
 linux-user/microblaze/target_structs.h    |  3 ++
 linux-user/microblaze/termbits.h          |  2 ++
 linux-user/mips/target_cpu.h              |  3 ++
 linux-user/mips/target_signal.h           |  2 ++
 linux-user/mips/target_structs.h          |  3 ++
 linux-user/mips/target_syscall.h          |  2 ++
 linux-user/mips/termbits.h                |  2 ++
 linux-user/mips64/syscall_nr.h            |  2 ++
 linux-user/mips64/target_cpu.h            |  3 ++
 linux-user/mips64/target_signal.h         |  2 ++
 linux-user/mips64/target_structs.h        |  2 ++
 linux-user/mips64/target_syscall.h        |  2 ++
 linux-user/mips64/termbits.h              |  2 ++
 linux-user/openrisc/target_cpu.h          |  2 ++
 linux-user/openrisc/target_signal.h       |  2 ++
 linux-user/openrisc/target_structs.h      |  3 ++
 linux-user/openrisc/target_syscall.h      |  2 ++
 linux-user/openrisc/termbits.h            |  2 ++
 linux-user/ppc/syscall_nr.h               |  3 ++
 linux-user/ppc/target_cpu.h               |  3 ++
 linux-user/ppc/target_signal.h            |  2 ++
 linux-user/ppc/target_structs.h           |  3 ++
 linux-user/ppc/target_syscall.h           |  2 ++
 linux-user/ppc/termbits.h                 |  2 ++
 linux-user/qemu.h                         |  2 ++
 linux-user/s390x/target_cpu.h             |  3 ++
 linux-user/s390x/target_signal.h          |  2 ++
 linux-user/s390x/target_structs.h         |  3 ++
 linux-user/s390x/target_syscall.h         |  2 ++
 linux-user/s390x/termbits.h               |  2 ++
 linux-user/sh4/target_cpu.h               |  3 ++
 linux-user/sh4/target_signal.h            |  2 ++
 linux-user/sh4/target_structs.h           |  3 ++
 linux-user/sh4/termbits.h                 |  2 ++
 linux-user/socket.h                       |  1 +
 linux-user/sparc/target_cpu.h             |  3 ++
 linux-user/sparc/target_signal.h          |  2 ++
 linux-user/sparc/target_structs.h         |  3 ++
 linux-user/sparc/target_syscall.h         |  2 ++
 linux-user/sparc/termbits.h               |  2 ++
 linux-user/sparc64/target_cpu.h           |  2 ++
 linux-user/sparc64/target_signal.h        |  2 ++
 linux-user/sparc64/target_structs.h       |  3 ++
 linux-user/sparc64/target_syscall.h       |  2 ++
 linux-user/sparc64/termbits.h             |  2 ++
 linux-user/syscall_defs.h                 |  2 ++
 linux-user/syscall_types.h                |  2 ++
 linux-user/tilegx/target_cpu.h            |  3 ++
 linux-user/tilegx/target_signal.h         |  2 ++
 linux-user/tilegx/target_structs.h        |  3 ++
 linux-user/tilegx/target_syscall.h        |  2 ++
 linux-user/uname.h                        |  2 ++
 linux-user/unicore32/target_cpu.h         |  3 ++
 linux-user/unicore32/target_signal.h      |  3 ++
 linux-user/unicore32/target_structs.h     |  3 ++
 linux-user/unicore32/target_syscall.h     |  3 ++
 linux-user/unicore32/termbits.h           |  3 ++
 linux-user/x86_64/target_cpu.h            |  2 ++
 linux-user/x86_64/target_signal.h         |  2 ++
 linux-user/x86_64/target_structs.h        |  3 ++
 linux-user/x86_64/target_syscall.h        |  2 ++
 linux-user/x86_64/termbits.h              |  2 ++
 qemu-options-wrapper.h                    |  1 +
 qga/guest-agent-core.h                    |  3 ++
 qga/service-win32.h                       |  3 ++
 qga/vss-win32/requester.h                 |  2 ++
 qga/vss-win32/vss-common.h                |  2 ++
 replay/replay-internal.h                  |  2 ++
 scripts/tracetool/format/tcg_h.py         |  2 ++
 slirp/bootp.h                             |  3 ++
 slirp/ip.h                                |  2 ++
 slirp/ip6_icmp.h                          |  2 ++
 slirp/ip_icmp.h                           |  2 ++
 slirp/main.h                              |  3 ++
 slirp/mbuf.h                              |  2 ++
 slirp/misc.h                              |  2 ++
 slirp/sbuf.h                              |  2 ++
 slirp/socket.h                            |  2 ++
 slirp/tcp.h                               |  2 ++
 slirp/tcp_timer.h                         |  2 ++
 slirp/tcp_var.h                           |  2 ++
 slirp/tcpip.h                             |  2 ++
 slirp/tftp.h                              |  3 ++
 slirp/udp.h                               |  2 ++
 softmmu_template.h                        |  3 ++
 target-alpha/cpu.h                        |  2 ++
 target-alpha/helper.h                     |  2 ++
 target-arm/arm_ldst.h                     |  2 ++
 target-arm/cpu.h                          |  3 ++
 target-arm/helper-a64.h                   |  3 ++
 target-arm/helper.h                       |  2 ++
 target-arm/internals.h                    |  2 ++
 target-arm/kvm_arm.h                      |  2 ++
 target-arm/op_addsub.h                    |  2 ++
 target-arm/translate.h                    |  2 ++
 target-cris/cpu.h                         |  3 ++
 target-cris/helper.h                      |  2 ++
 target-cris/mmu.h                         |  2 ++
 target-i386/cc_helper_template.h          |  2 ++
 target-i386/cpu-qom.h                     |  3 ++
 target-i386/cpu.h                         |  3 ++
 target-i386/helper.h                      |  2 ++
 target-i386/hyperv.h                      |  2 ++
 target-i386/kvm_i386.h                    |  2 ++
 target-i386/ops_sse.h                     |  2 ++
 target-i386/ops_sse_header.h              |  3 ++
 target-i386/shift_helper_template.h       |  2 ++
 target-lm32/cpu.h                         |  2 ++
 target-lm32/helper.h                      |  2 ++
 target-m68k/cpu.h                         |  3 ++
 target-m68k/helper.h                      |  2 ++
 target-microblaze/cpu.h                   |  3 ++
 target-microblaze/helper.h                |  2 ++
 target-microblaze/mmu.h                   |  2 ++
 target-mips/cpu-qom.h                     |  3 ++
 target-mips/cpu.h                         |  2 ++
 target-mips/helper.h                      |  2 ++
 target-mips/kvm_mips.h                    |  4 ++-
 target-mips/mips-defs.h                   |  2 ++
 target-moxie/cpu.h                        |  3 ++
 target-moxie/helper.h                     |  2 ++
 target-moxie/machine.h                    |  2 ++
 target-moxie/mmu.h                        |  2 ++
 target-openrisc/cpu.h                     |  2 ++
 target-openrisc/exception.h               |  2 ++
 target-openrisc/helper.h                  |  2 ++
 target-ppc/cpu-models.h                   |  3 ++
 target-ppc/cpu-qom.h                      |  3 ++
 target-ppc/cpu.h                          |  3 ++
 target-ppc/helper.h                       |  2 ++
 target-ppc/helper_regs.h                  |  2 ++
 target-ppc/kvm_ppc.h                      |  2 ++
 target-ppc/mmu-hash32.h                   |  2 ++
 target-ppc/mmu-hash64.h                   |  2 ++
 target-s390x/cpu.h                        |  3 ++
 target-s390x/helper.h                     |  2 ++
 target-sh4/cpu.h                          |  3 ++
 target-sh4/helper.h                       |  2 ++
 target-sparc/cpu-qom.h                    |  3 ++
 target-sparc/cpu.h                        |  2 ++
 target-sparc/helper.h                     |  2 ++
 target-tilegx/cpu.h                       |  3 ++
 target-tilegx/helper.h                    |  2 ++
 target-tricore/cpu.h                      |  3 ++
 target-tricore/helper.h                   |  2 ++
 target-tricore/tricore-defs.h             |  2 ++
 target-tricore/tricore-opcodes.h          |  2 ++
 target-unicore32/cpu.h                    |  3 ++
 target-unicore32/helper.h                 |  2 ++
 target-xtensa/cpu.h                       |  2 ++
 target-xtensa/helper.h                    |  2 ++
 target-xtensa/overlay_tool.h              |  2 ++
 tcg/mips/tcg-target.h                     |  3 ++
 tcg/tcg-be-ldst.h                         |  2 ++
 tcg/tcg-be-null.h                         |  2 ++
 tcg/tcg-op.h                              |  2 ++
 tcg/tcg-opc.h                             |  2 ++
 tcg/tcg-runtime.h                         |  2 ++
 tcg/tcg.h                                 |  2 ++
 tests/Makefile.include                    | 48 +++++++++++++++++++++++++++++--
 tests/crypto-tls-x509-helpers.h           |  2 ++
 tests/header-test-template.c              | 16 +++++++++++
 trace/control-internal.h                  |  2 ++
 trace/mem-internal.h                      |  2 ++
 trace/mem.h                               |  2 ++
 trace/simple.h                            |  2 ++
 translate-all.h                           |  3 ++
 ui/curses_keys.h                          |  2 ++
 ui/sdl2-keymap.h                          |  1 +
 ui/sdl_keysym.h                           |  1 +
 ui/sdl_zoom.h                             |  2 ++
 ui/sdl_zoom_template.h                    |  2 ++
 ui/vgafont.h                              |  2 ++
 ui/vnc-auth-sasl.h                        |  2 ++
 ui/vnc-auth-vencrypt.h                    |  2 ++
 ui/vnc-enc-hextile-template.h             |  2 ++
 ui/vnc-jobs.h                             |  2 ++
 ui/vnc-ws.h                               |  2 ++
 ui/vnc_keysym.h                           |  1 +
 424 files changed, 1006 insertions(+), 7 deletions(-)
 create mode 100644 tests/header-test-template.c

Comments

Paolo Bonzini June 30, 2016, 1:27 p.m. UTC | #1
On 30/06/2016 14:53, Markus Armbruster wrote:
> +bad-header-comment := /* FIXME Does not pass make check-headers$(bad-header-with-y), yet!
> +bad-headers := $(shell cd $(SRC_PATH) && fgrep -l '$(bad-header-comment)' $(src-headers))
> +bad-headers += $(shell fgrep -l '$(bad-header-comment)' $(gen-headers))
> +# Headers that require -DNEED_CPU_H etc.
> +target-header-comment := /* NOTE: May only be included into target-dependent code */

Perhaps accept a "FIXME" as well here?  You don't have to use the right
one in the patch of course.

> diff --git a/target-sparc/cpu-qom.h b/target-sparc/cpu-qom.h
> index f63af72..30d112c 100644
> --- a/target-sparc/cpu-qom.h
> +++ b/target-sparc/cpu-qom.h
> @@ -17,6 +17,9 @@
>   * License along with this library; if not, see
>   * <http://www.gnu.org/licenses/lgpl-2.1.html>
>   */
> +
> +/* NOTE: May only be included into target-dependent code */

This shouldn't be true for cpu-qom.h.

Perhaps
Paolo

>  #ifndef QEMU_SPARC_CPU_QOM_H
>  #define QEMU_SPARC_CPU_QOM_H
>
Markus Armbruster June 30, 2016, 2:30 p.m. UTC | #2
Paolo Bonzini <pbonzini@redhat.com> writes:

> On 30/06/2016 14:53, Markus Armbruster wrote:
>> +bad-header-comment := /* FIXME Does not pass make check-headers$(bad-header-with-y), yet!
>> +bad-headers := $(shell cd $(SRC_PATH) && fgrep -l '$(bad-header-comment)' $(src-headers))
>> +bad-headers += $(shell fgrep -l '$(bad-header-comment)' $(gen-headers))
>> +# Headers that require -DNEED_CPU_H etc.
>> +target-header-comment := /* NOTE: May only be included into target-dependent code */
>
> Perhaps accept a "FIXME" as well here?  You don't have to use the right
> one in the patch of course.

Makes sense.

I guess the same argument could be made for the other magic comments.

>> diff --git a/target-sparc/cpu-qom.h b/target-sparc/cpu-qom.h
>> index f63af72..30d112c 100644
>> --- a/target-sparc/cpu-qom.h
>> +++ b/target-sparc/cpu-qom.h
>> @@ -17,6 +17,9 @@
>>   * License along with this library; if not, see
>>   * <http://www.gnu.org/licenses/lgpl-2.1.html>
>>   */
>> +
>> +/* NOTE: May only be included into target-dependent code */
>
> This shouldn't be true for cpu-qom.h.
>
> Perhaps
> Paolo

Here's what made me mark the header:

    $ make tests/headers/target-sparc/cpu-qom.o
    [...]
      CC    tests/headers/target-sparc/cpu-qom.o
    In file included from tests/headers/target-sparc/cpu-qom.c:14:0:
    /work/armbru/qemu/target-sparc/cpu-qom.h:28:8: error: attempt to use poisoned "TARGET_SPARC64"
     #ifdef TARGET_SPARC64
            ^
    /work/armbru/qemu/rules.mak:59: recipe for target 'tests/headers/target-sparc/cpu-qom.o' failed
    make: *** [tests/headers/target-sparc/cpu-qom.o] Error 1

Error context:

    #ifdef TARGET_SPARC64
    #define TYPE_SPARC_CPU "sparc64-cpu"
    #else
    #define TYPE_SPARC_CPU "sparc-cpu"
    #endif
Paolo Bonzini June 30, 2016, 2:31 p.m. UTC | #3
On 30/06/2016 16:30, Markus Armbruster wrote:
>>> >> +
>>> >> +/* NOTE: May only be included into target-dependent code */
>> >
>> > This shouldn't be true for cpu-qom.h.
>> >
>> > Perhaps
>> > Paolo
> Here's what made me mark the header:
> 
>     $ make tests/headers/target-sparc/cpu-qom.o
>     [...]
>       CC    tests/headers/target-sparc/cpu-qom.o
>     In file included from tests/headers/target-sparc/cpu-qom.c:14:0:
>     /work/armbru/qemu/target-sparc/cpu-qom.h:28:8: error: attempt to use poisoned "TARGET_SPARC64"
>      #ifdef TARGET_SPARC64
>             ^
>     /work/armbru/qemu/rules.mak:59: recipe for target 'tests/headers/target-sparc/cpu-qom.o' failed
>     make: *** [tests/headers/target-sparc/cpu-qom.o] Error 1
> 
> Error context:
> 
>     #ifdef TARGET_SPARC64
>     #define TYPE_SPARC_CPU "sparc64-cpu"
>     #else
>     #define TYPE_SPARC_CPU "sparc-cpu"
>     #endif

Good, this one is a FIXME then. :)

Paolo
Sascha Silbe July 5, 2016, 5:17 p.m. UTC | #4
Dear Markus,


I looked into the s390x specific failures as it would be nice to get
them fixed up right away. Fortunately it looks like all of them are
related to known shortcomings of the header check rather than actual
issues with the header files, so there's nothing for me to do. ;)


Markus Armbruster <armbru@redhat.com> writes:

[...]
> Some headers fail the test because they need to be compiled with
> -DNEED_CPU_H, and testing them is not yet implemented.  They are
> marked with a comment
>
>     /* NOTE: May only be included into target-dependent code */

The following header files either include target-s390x/cpu.h themselves
or expect it to have been included already so they should be marked with
the above note rather than the FIXME:

- hw/s390x/ipl.h
- hw/s390x/s390-pci-inst.h
- hw/s390x/s390-virtio.h


[linux-headers/asm-s390/kvm.h]
> +/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */

Is this because of the linux/types.h include or is there some other
issue? Should we even check these imported headers?


[linux-user/host/*/hostdep.h]
> +/* FIXME Does not pass make check-headers, yet! */

The "struct ucontext" definition used by hostdep.h differs between host
architectures. Not sure if testing the headers for "foreign" host
architectures is possible; we should probably just skip them instead of
marking them with a FIXME.


Many or even most other non-softmmu target failures smell like
NEED_CPU_H.


[*/helper.h]
> +/* FIXME Does not pass make check-headers, yet! */

Probably never will. Looks like it's meant to be included only by some
magic preprocessor code.

Sascha
diff mbox

Patch

diff --git a/audio/audio_int.h b/audio/audio_int.h
index 566df5e..9054747 100644
--- a/audio/audio_int.h
+++ b/audio/audio_int.h
@@ -21,6 +21,9 @@ 
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_AUDIO_INT_H
 #define QEMU_AUDIO_INT_H
 
diff --git a/audio/audio_template.h b/audio/audio_template.h
index 99b27b2..7a518cc 100644
--- a/audio/audio_template.h
+++ b/audio/audio_template.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifdef DAC
 #define NAME "playback"
 #define HWBUF hw->mix_buf
diff --git a/audio/audio_win_int.h b/audio/audio_win_int.h
index fa5b3cb..5716458 100644
--- a/audio/audio_win_int.h
+++ b/audio/audio_win_int.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef AUDIO_WIN_INT_H
 #define AUDIO_WIN_INT_H
 
diff --git a/audio/dsound_template.h b/audio/dsound_template.h
index b439f33..a6c78ad 100644
--- a/audio/dsound_template.h
+++ b/audio/dsound_template.h
@@ -21,6 +21,9 @@ 
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifdef DSBTYPE_IN
 #define NAME "capture buffer"
 #define NAME2 "DirectSoundCapture"
diff --git a/audio/mixeng_template.h b/audio/mixeng_template.h
index 77cc89b..7db272d 100644
--- a/audio/mixeng_template.h
+++ b/audio/mixeng_template.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * Tusen tack till Mike Nordell
  * dec++'ified by Dscho
diff --git a/audio/rate_template.h b/audio/rate_template.h
index bd4b1c7..625775a 100644
--- a/audio/rate_template.h
+++ b/audio/rate_template.h
@@ -23,6 +23,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * Processed signed long samples from ibuf to obuf.
  * Return number of samples processed.
diff --git a/block/qcow2.h b/block/qcow2.h
index b36a7bf..b45d47e 100644
--- a/block/qcow2.h
+++ b/block/qcow2.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef BLOCK_QCOW2_H
 #define BLOCK_QCOW2_H
 
diff --git a/block/raw-aio.h b/block/raw-aio.h
index a4cdbbf..63bc12d 100644
--- a/block/raw-aio.h
+++ b/block/raw-aio.h
@@ -12,6 +12,9 @@ 
  * Contributions after 2012-01-13 are licensed under the terms of the
  * GNU GPL, version 2 or (at your option) any later version.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_RAW_AIO_H
 #define QEMU_RAW_AIO_H
 
diff --git a/block/vhdx.h b/block/vhdx.h
index 7003ab7..a72559c 100644
--- a/block/vhdx.h
+++ b/block/vhdx.h
@@ -15,6 +15,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef BLOCK_VHDX_H
 #define BLOCK_VHDX_H
 
diff --git a/bsd-user/i386/target_signal.h b/bsd-user/i386/target_signal.h
index 2ef36d1..5505f2e 100644
--- a/bsd-user/i386/target_signal.h
+++ b/bsd-user/i386/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/bsd-user/i386/target_syscall.h b/bsd-user/i386/target_syscall.h
index 82d1c58..00f011c 100644
--- a/bsd-user/i386/target_syscall.h
+++ b/bsd-user/i386/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/bsd-user/qemu.h b/bsd-user/qemu.h
index 53163b8..e1496fc 100644
--- a/bsd-user/qemu.h
+++ b/bsd-user/qemu.h
@@ -14,6 +14,9 @@ 
  *  You should have received a copy of the GNU General Public License
  *  along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_H
 #define QEMU_H
 
diff --git a/bsd-user/sparc/target_signal.h b/bsd-user/sparc/target_signal.h
index 5b2abba..15ead76 100644
--- a/bsd-user/sparc/target_signal.h
+++ b/bsd-user/sparc/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/bsd-user/sparc/target_syscall.h b/bsd-user/sparc/target_syscall.h
index c7eec6b..1929857 100644
--- a/bsd-user/sparc/target_syscall.h
+++ b/bsd-user/sparc/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/bsd-user/sparc64/target_signal.h b/bsd-user/sparc64/target_signal.h
index 5b2abba..15ead76 100644
--- a/bsd-user/sparc64/target_signal.h
+++ b/bsd-user/sparc64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/bsd-user/sparc64/target_syscall.h b/bsd-user/sparc64/target_syscall.h
index 2f06100..c7c4a13 100644
--- a/bsd-user/sparc64/target_syscall.h
+++ b/bsd-user/sparc64/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/bsd-user/syscall_defs.h b/bsd-user/syscall_defs.h
index 207ddee..c27339c 100644
--- a/bsd-user/syscall_defs.h
+++ b/bsd-user/syscall_defs.h
@@ -1,6 +1,8 @@ 
 /*      $OpenBSD: signal.h,v 1.19 2006/01/08 14:20:16 millert Exp $     */
 /*      $NetBSD: signal.h,v 1.21 1996/02/09 18:25:32 christos Exp $     */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * Copyright (c) 1982, 1986, 1989, 1991, 1993
  *      The Regents of the University of California.  All rights reserved.
diff --git a/bsd-user/x86_64/target_signal.h b/bsd-user/x86_64/target_signal.h
index 659cd40..7abab10 100644
--- a/bsd-user/x86_64/target_signal.h
+++ b/bsd-user/x86_64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/bsd-user/x86_64/target_syscall.h b/bsd-user/x86_64/target_syscall.h
index 85a9766..beda4dd 100644
--- a/bsd-user/x86_64/target_syscall.h
+++ b/bsd-user/x86_64/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/contrib/ivshmem-client/ivshmem-client.h b/contrib/ivshmem-client/ivshmem-client.h
index 54cde17..3101f34 100644
--- a/contrib/ivshmem-client/ivshmem-client.h
+++ b/contrib/ivshmem-client/ivshmem-client.h
@@ -6,6 +6,8 @@ 
  * top-level directory.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _IVSHMEM_CLIENT_H_
 #define _IVSHMEM_CLIENT_H_
 
diff --git a/contrib/ivshmem-server/ivshmem-server.h b/contrib/ivshmem-server/ivshmem-server.h
index d37ca85..9097a79 100644
--- a/contrib/ivshmem-server/ivshmem-server.h
+++ b/contrib/ivshmem-server/ivshmem-server.h
@@ -6,6 +6,8 @@ 
  * top-level directory.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _IVSHMEM_SERVER_H_
 #define _IVSHMEM_SERVER_H_
 
diff --git a/fpu/softfloat-macros.h b/fpu/softfloat-macros.h
index 9cc6158..06fce52 100644
--- a/fpu/softfloat-macros.h
+++ b/fpu/softfloat-macros.h
@@ -15,6 +15,8 @@ 
  * indicated otherwise.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
 ===============================================================================
 This C source fragment is part of the SoftFloat IEC/IEEE Floating-point
diff --git a/fpu/softfloat-specialize.h b/fpu/softfloat-specialize.h
index 43d0890..bec4028 100644
--- a/fpu/softfloat-specialize.h
+++ b/fpu/softfloat-specialize.h
@@ -15,6 +15,8 @@ 
  * indicated otherwise.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 /*
 ===============================================================================
 This C source fragment is part of the SoftFloat IEC/IEEE Floating-point
diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h
index 5561494..ff9eaed 100644
--- a/fsdev/file-op-9p.h
+++ b/fsdev/file-op-9p.h
@@ -10,6 +10,9 @@ 
  * the COPYING file in the top-level directory.
  *
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _FILEOP_H
 #define _FILEOP_H
 #include <dirent.h>
diff --git a/fsdev/qemu-fsdev.h b/fsdev/qemu-fsdev.h
index 29c9622..7cbbb78 100644
--- a/fsdev/qemu-fsdev.h
+++ b/fsdev/qemu-fsdev.h
@@ -10,6 +10,9 @@ 
  * the COPYING file in the top-level directory.
  *
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_FSDEV_H
 #define QEMU_FSDEV_H
 #include "qemu/option.h"
diff --git a/hw/9pfs/9p-proxy.h b/hw/9pfs/9p-proxy.h
index ba9ca20..5097f1a 100644
--- a/hw/9pfs/9p-proxy.h
+++ b/hw/9pfs/9p-proxy.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2.  See
  * the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _QEMU_9P_PROXY_H
 #define _QEMU_9P_PROXY_H
 
diff --git a/hw/9pfs/9p-synth.h b/hw/9pfs/9p-synth.h
index 7c8441b..d4eceb4 100644
--- a/hw/9pfs/9p-synth.h
+++ b/hw/9pfs/9p-synth.h
@@ -10,6 +10,9 @@ 
  * the COPYING file in the top-level directory.
  *
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_9PFS_SYNTH_H
 #define HW_9PFS_SYNTH_H 1
 
diff --git a/hw/9pfs/9p-xattr.h b/hw/9pfs/9p-xattr.h
index 4d39a20..7e79426 100644
--- a/hw/9pfs/9p-xattr.h
+++ b/hw/9pfs/9p-xattr.h
@@ -10,6 +10,9 @@ 
  * the COPYING file in the top-level directory.
  *
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _QEMU_9P_XATTR_H
 #define _QEMU_9P_XATTR_H
 
diff --git a/hw/9pfs/9p.h b/hw/9pfs/9p.h
index d2030fd..6887137 100644
--- a/hw/9pfs/9p.h
+++ b/hw/9pfs/9p.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _QEMU_9P_H
 #define _QEMU_9P_H
 
diff --git a/hw/9pfs/coth.h b/hw/9pfs/coth.h
index 5b02a63..b9b245e 100644
--- a/hw/9pfs/coth.h
+++ b/hw/9pfs/coth.h
@@ -12,6 +12,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _QEMU_9P_COTH_H
 #define _QEMU_9P_COTH_H
 
diff --git a/hw/9pfs/virtio-9p.h b/hw/9pfs/virtio-9p.h
index 7f6d885..4973db1 100644
--- a/hw/9pfs/virtio-9p.h
+++ b/hw/9pfs/virtio-9p.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _QEMU_VIRTIO_9P_H
 #define _QEMU_VIRTIO_9P_H
 
diff --git a/hw/audio/fmopl.h b/hw/audio/fmopl.h
index 24ba5f4..6ccc78a 100644
--- a/hw/audio/fmopl.h
+++ b/hw/audio/fmopl.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __FMOPL_H_
 #define __FMOPL_H_
 
diff --git a/hw/audio/hda-codec-common.h b/hw/audio/hda-codec-common.h
index b4fdb51..6e05901 100644
--- a/hw/audio/hda-codec-common.h
+++ b/hw/audio/hda-codec-common.h
@@ -20,6 +20,8 @@ 
  * along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * HDA codec descriptions
  */
diff --git a/hw/audio/lm4549.h b/hw/audio/lm4549.h
index 812a7a4..503c8e9 100644
--- a/hw/audio/lm4549.h
+++ b/hw/audio/lm4549.h
@@ -9,6 +9,8 @@ 
  * *****************************************************************
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_LM4549_H
 #define HW_LM4549_H
 
diff --git a/hw/block/nvme.h b/hw/block/nvme.h
index 8fb0c10..f33acd4 100644
--- a/hw/block/nvme.h
+++ b/hw/block/nvme.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_NVME_H
 #define HW_NVME_H
 #include "qemu/cutils.h"
diff --git a/hw/block/xen_blkif.h b/hw/block/xen_blkif.h
index 0738684..e565a6a 100644
--- a/hw/block/xen_blkif.h
+++ b/hw/block/xen_blkif.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __XEN_BLKIF_H__
 #define __XEN_BLKIF_H__
 
diff --git a/hw/cris/boot.h b/hw/cris/boot.h
index c4d3fa6..2aa4355 100644
--- a/hw/cris/boot.h
+++ b/hw/cris/boot.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _CRIS_BOOT_H
 #define HW_CRIS_BOOT_H 1
 
diff --git a/hw/display/cirrus_vga_rop.h b/hw/display/cirrus_vga_rop.h
index 0925a00..f73a6a0 100644
--- a/hw/display/cirrus_vga_rop.h
+++ b/hw/display/cirrus_vga_rop.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 static inline void glue(rop_8_,ROP_NAME)(uint8_t *dst, uint8_t src)
 {
     *dst = ROP_FN(*dst, src);
diff --git a/hw/display/cirrus_vga_rop2.h b/hw/display/cirrus_vga_rop2.h
index d28bcc6..559554b 100644
--- a/hw/display/cirrus_vga_rop2.h
+++ b/hw/display/cirrus_vga_rop2.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if DEPTH == 8
 #define PUTPIXEL()    ROP_OP(&d[0], col)
 #elif DEPTH == 16
diff --git a/hw/display/milkymist-vgafb_template.h b/hw/display/milkymist-vgafb_template.h
index 4883780..45ebdff 100644
--- a/hw/display/milkymist-vgafb_template.h
+++ b/hw/display/milkymist-vgafb_template.h
@@ -18,6 +18,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if BITS == 8
 #define COPY_PIXEL(to, r, g, b)                    \
     do {                                           \
diff --git a/hw/display/omap_lcd_template.h b/hw/display/omap_lcd_template.h
index 1025ff3..c4cd242 100644
--- a/hw/display/omap_lcd_template.h
+++ b/hw/display/omap_lcd_template.h
@@ -27,6 +27,8 @@ 
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #if DEPTH == 32
 # define BPP 4
 # define PIXEL_TYPE uint32_t
diff --git a/hw/display/pl110_template.h b/hw/display/pl110_template.h
index 36ba791..79dc292 100644
--- a/hw/display/pl110_template.h
+++ b/hw/display/pl110_template.h
@@ -9,6 +9,8 @@ 
  * Framebuffer format conversion routines.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef ORDER
 
 #if BITS == 8
diff --git a/hw/display/pxa2xx_template.h b/hw/display/pxa2xx_template.h
index c64eebc..fef72eb 100644
--- a/hw/display/pxa2xx_template.h
+++ b/hw/display/pxa2xx_template.h
@@ -9,6 +9,8 @@ 
  * Framebuffer format conversion routines.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 # define SKIP_PIXEL(to)		to += deststep
 #if BITS == 8
 # define COPY_PIXEL(to, from)  do { *to = from; SKIP_PIXEL(to); } while (0)
diff --git a/hw/display/qxl.h b/hw/display/qxl.h
index 2ddf065..9fb6f81 100644
--- a/hw/display/qxl.h
+++ b/hw/display/qxl.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef HW_QXL_H
 #define HW_QXL_H 1
 
diff --git a/hw/display/sm501_template.h b/hw/display/sm501_template.h
index f33e499..3f68f49 100644
--- a/hw/display/sm501_template.h
+++ b/hw/display/sm501_template.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #if DEPTH == 8
 #define BPP 1
 #define PIXEL_TYPE uint8_t
diff --git a/hw/display/tc6393xb_template.h b/hw/display/tc6393xb_template.h
index 78629c0..927282c 100644
--- a/hw/display/tc6393xb_template.h
+++ b/hw/display/tc6393xb_template.h
@@ -21,6 +21,8 @@ 
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if BITS == 8
 # define SET_PIXEL(addr, color)  (*(uint8_t *)addr = color)
 #elif BITS == 15 || BITS == 16
diff --git a/hw/display/vga-helpers.h b/hw/display/vga-helpers.h
index 94f6de2..101491d 100644
--- a/hw/display/vga-helpers.h
+++ b/hw/display/vga-helpers.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 static inline void vga_draw_glyph_line(uint8_t *d, uint32_t font_data,
                                        uint32_t xorcol, uint32_t bgcol)
 {
diff --git a/hw/display/vga_int.h b/hw/display/vga_int.h
index 3ce5544..81b35f5 100644
--- a/hw/display/vga_int.h
+++ b/hw/display/vga_int.h
@@ -21,6 +21,9 @@ 
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_VGA_INT_H
 #define HW_VGA_INT_H 1
 
diff --git a/hw/i386/intel_iommu_internal.h b/hw/i386/intel_iommu_internal.h
index e5f514c..303b922 100644
--- a/hw/i386/intel_iommu_internal.h
+++ b/hw/i386/intel_iommu_internal.h
@@ -9,12 +9,12 @@ 
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
-
+ *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
-
+ *
  * You should have received a copy of the GNU General Public License along
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  *
@@ -25,6 +25,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_I386_INTEL_IOMMU_INTERNAL_H
 #define HW_I386_INTEL_IOMMU_INTERNAL_H
 #include "hw/i386/intel_iommu.h"
diff --git a/hw/ide/ahci.h b/hw/ide/ahci.h
index bc777ed..17a3e6f 100644
--- a/hw/ide/ahci.h
+++ b/hw/ide/ahci.h
@@ -21,6 +21,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_IDE_AHCI_H
 #define HW_IDE_AHCI_H
 
diff --git a/hw/lm32/lm32.h b/hw/lm32/lm32.h
index e338bfe..3991c39 100644
--- a/hw/lm32/lm32.h
+++ b/hw/lm32/lm32.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_LM32_H
 #define HW_LM32_H 1
 
diff --git a/hw/lm32/lm32_hwsetup.h b/hw/lm32/lm32_hwsetup.h
index b71e6ea..eaa3900 100644
--- a/hw/lm32/lm32_hwsetup.h
+++ b/hw/lm32/lm32_hwsetup.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 /*
  * These are helper functions for creating the hardware description blob used
  * in the Theobroma's uClinux port.
diff --git a/hw/lm32/milkymist-hw.h b/hw/lm32/milkymist-hw.h
index eb6a3a2..0ca3b61 100644
--- a/hw/lm32/milkymist-hw.h
+++ b/hw/lm32/milkymist-hw.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HW_MILKYMIST_H
 #define QEMU_HW_MILKYMIST_H
 
diff --git a/hw/microblaze/boot.h b/hw/microblaze/boot.h
index 0eb7f8e..3c29eb3 100644
--- a/hw/microblaze/boot.h
+++ b/hw/microblaze/boot.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __MICROBLAZE_BOOT__
 #define __MICROBLAZE_BOOT__
 
diff --git a/hw/net/e1000e_core.h b/hw/net/e1000e_core.h
index 5f413a9..fcc1ca2 100644
--- a/hw/net/e1000e_core.h
+++ b/hw/net/e1000e_core.h
@@ -33,6 +33,8 @@ 
 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define E1000E_PHY_PAGE_SIZE    (0x20)
 #define E1000E_PHY_PAGES        (0x07)
 #define E1000E_MAC_SIZE         (0x8000)
diff --git a/hw/net/e1000x_common.h b/hw/net/e1000x_common.h
index 21bf28e..d81a8ee 100644
--- a/hw/net/e1000x_common.h
+++ b/hw/net/e1000x_common.h
@@ -22,6 +22,8 @@ 
 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "e1000_regs.h"
 
 #define defreg(x)   x = (E1000_##x >> 2)
diff --git a/hw/net/ne2000.h b/hw/net/ne2000.h
index d022b28..72b602f 100644
--- a/hw/net/ne2000.h
+++ b/hw/net/ne2000.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_NE2000_H
 #define HW_NE2000_H 1
 
diff --git a/hw/net/pcnet.h b/hw/net/pcnet.h
index dec8de8..012e2ea 100644
--- a/hw/net/pcnet.h
+++ b/hw/net/pcnet.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_PCNET_H
 #define HW_PCNET_H 1
 
diff --git a/hw/net/rocker/rocker_desc.h b/hw/net/rocker/rocker_desc.h
index d4041f5..f0a0032 100644
--- a/hw/net/rocker/rocker_desc.h
+++ b/hw/net/rocker/rocker_desc.h
@@ -14,6 +14,8 @@ 
  * GNU General Public License for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 
 #ifndef _ROCKER_DESC_H_
 #define _ROCKER_DESC_H_
diff --git a/hw/net/rocker/rocker_fp.h b/hw/net/rocker/rocker_fp.h
index 04592bb..5aed927 100644
--- a/hw/net/rocker/rocker_fp.h
+++ b/hw/net/rocker/rocker_fp.h
@@ -14,6 +14,8 @@ 
  * GNU General Public License for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _ROCKER_FP_H_
 #define _ROCKER_FP_H_
 
diff --git a/hw/net/rocker/rocker_of_dpa.h b/hw/net/rocker/rocker_of_dpa.h
index f3f6d77..8a46b88 100644
--- a/hw/net/rocker/rocker_of_dpa.h
+++ b/hw/net/rocker/rocker_of_dpa.h
@@ -14,6 +14,8 @@ 
  * GNU General Public License for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _ROCKER_OF_DPA_H_
 #define _ROCKER_OF_DPA_H_
 
diff --git a/hw/net/rocker/rocker_tlv.h b/hw/net/rocker/rocker_tlv.h
index 8856164..8e31584 100644
--- a/hw/net/rocker/rocker_tlv.h
+++ b/hw/net/rocker/rocker_tlv.h
@@ -14,6 +14,8 @@ 
  * GNU General Public License for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _ROCKER_TLV_H_
 #define _ROCKER_TLV_H_
 
diff --git a/hw/net/rocker/rocker_world.h b/hw/net/rocker/rocker_world.h
index 58ade47..84fcf1b 100644
--- a/hw/net/rocker/rocker_world.h
+++ b/hw/net/rocker/rocker_world.h
@@ -14,6 +14,8 @@ 
  * GNU General Public License for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _ROCKER_WORLD_H_
 #define _ROCKER_WORLD_H_
 
diff --git a/hw/net/vmware_utils.h b/hw/net/vmware_utils.h
index 5500601..cad4098 100644
--- a/hw/net/vmware_utils.h
+++ b/hw/net/vmware_utils.h
@@ -14,6 +14,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef VMWARE_UTILS_H
 #define VMWARE_UTILS_H
 
diff --git a/hw/ppc/ppc405.h b/hw/ppc/ppc405.h
index 1c5f04f..1d91fad 100644
--- a/hw/ppc/ppc405.h
+++ b/hw/ppc/ppc405.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(PPC_405_H)
 #define PPC_405_H
 
diff --git a/hw/s390x/ipl.h b/hw/s390x/ipl.h
index 9aa4d94..cbc9fdf 100644
--- a/hw/s390x/ipl.h
+++ b/hw/s390x/ipl.h
@@ -9,6 +9,8 @@ 
  * directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_S390_IPL_H
 #define HW_S390_IPL_H
 
diff --git a/hw/s390x/s390-pci-inst.h b/hw/s390x/s390-pci-inst.h
index b084f23..32eee3c 100644
--- a/hw/s390x/s390-pci-inst.h
+++ b/hw/s390x/s390-pci-inst.h
@@ -11,6 +11,8 @@ 
  * directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_S390_PCI_INST_H
 #define HW_S390_PCI_INST_H
 
diff --git a/hw/s390x/s390-virtio.h b/hw/s390x/s390-virtio.h
index ffd014c..15507f3 100644
--- a/hw/s390x/s390-virtio.h
+++ b/hw/s390x/s390-virtio.h
@@ -9,6 +9,8 @@ 
  * directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_S390_VIRTIO_H
 #define HW_S390_VIRTIO_H 1
 
diff --git a/hw/scsi/mptsas.h b/hw/scsi/mptsas.h
index 595f81f..b1b138d 100644
--- a/hw/scsi/mptsas.h
+++ b/hw/scsi/mptsas.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef MPTSAS_H
 #define MPTSAS_H
 
diff --git a/hw/scsi/viosrp.h b/hw/scsi/viosrp.h
index d8e365d..05fe773 100644
--- a/hw/scsi/viosrp.h
+++ b/hw/scsi/viosrp.h
@@ -31,6 +31,9 @@ 
 /* of Linux and other operating systems (AIX, OS/400) that talk this protocol*/
 /* between logical partitions                                                */
 /*****************************************************************************/
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef PPC_VIOSRP_H
 #define PPC_VIOSRP_H
 
diff --git a/hw/tpm/tpm_int.h b/hw/tpm/tpm_int.h
index f2f285b..d5d1ece 100644
--- a/hw/tpm/tpm_int.h
+++ b/hw/tpm/tpm_int.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TPM_TPM_INT_H
 #define TPM_TPM_INT_H
 
diff --git a/hw/tpm/tpm_tis.h b/hw/tpm/tpm_tis.h
index a1df41f..e9ddc17 100644
--- a/hw/tpm/tpm_tis.h
+++ b/hw/tpm/tpm_tis.h
@@ -14,6 +14,9 @@ 
  * http://www.trustedcomputinggroup.org
  *
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TPM_TPM_TIS_H
 #define TPM_TPM_TIS_H
 
diff --git a/hw/usb/desc.h b/hw/usb/desc.h
index 4d81c68..b6663f3 100644
--- a/hw/usb/desc.h
+++ b/hw/usb/desc.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HW_USB_DESC_H
 #define QEMU_HW_USB_DESC_H
 
diff --git a/hw/usb/quirks.h b/hw/usb/quirks.h
index 8dc6065..4ee6210 100644
--- a/hw/usb/quirks.h
+++ b/hw/usb/quirks.h
@@ -12,6 +12,8 @@ 
  * (at your option) any later version.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /* 1 on 1 copy of linux/drivers/usb/serial/ftdi_sio_ids.h */
 #include "quirks-ftdi-ids.h"
 /* 1 on 1 copy of linux/drivers/usb/serial/pl2303.h */
diff --git a/hw/vfio/pci.h b/hw/vfio/pci.h
index b3eb0d8..7cb0d1b 100644
--- a/hw/vfio/pci.h
+++ b/hw/vfio/pci.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2.  See
  * the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef HW_VFIO_VFIO_PCI_H
 #define HW_VFIO_VFIO_PCI_H
 
diff --git a/hw/xen/xen_pt.h b/hw/xen/xen_pt.h
index c2f8e1f..e787188 100644
--- a/hw/xen/xen_pt.h
+++ b/hw/xen/xen_pt.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef XEN_PT_H
 #define XEN_PT_H
 
diff --git a/hw/xenpv/xen_domainbuild.h b/hw/xenpv/xen_domainbuild.h
index 29a91ea..547aee6 100644
--- a/hw/xenpv/xen_domainbuild.h
+++ b/hw/xenpv/xen_domainbuild.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_HW_XEN_DOMAINBUILD_H
 #define QEMU_HW_XEN_DOMAINBUILD_H 1
 
diff --git a/hw/xtensa/bootparam.h b/hw/xtensa/bootparam.h
index 955f4e8..27c0017 100644
--- a/hw/xtensa/bootparam.h
+++ b/hw/xtensa/bootparam.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_XTENSA_BOOTPARAM
 #define HW_XTENSA_BOOTPARAM
 
diff --git a/include/block/write-threshold.h b/include/block/write-threshold.h
index 234d219..b2cfd11 100644
--- a/include/block/write-threshold.h
+++ b/include/block/write-threshold.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU LGPL, version 2 or later.
  * See the COPYING.LIB file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef BLOCK_WRITE_THRESHOLD_H
 #define BLOCK_WRITE_THRESHOLD_H
 
diff --git a/include/disas/disas.h b/include/disas/disas.h
index 4930d78..b665558 100644
--- a/include/disas/disas.h
+++ b/include/disas/disas.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _QEMU_DISAS_H
 #define _QEMU_DISAS_H
 
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
index 9f38edf..311e4c8 100644
--- a/include/exec/cpu-all.h
+++ b/include/exec/cpu-all.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_ALL_H
 #define CPU_ALL_H
 
diff --git a/include/exec/cpu-defs.h b/include/exec/cpu-defs.h
index 5f4e303..d8c0b8c 100644
--- a/include/exec/cpu-defs.h
+++ b/include/exec/cpu-defs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_DEFS_H
 #define CPU_DEFS_H
 
diff --git a/include/exec/cpu_ldst.h b/include/exec/cpu_ldst.h
index b573df5..103d015 100644
--- a/include/exec/cpu_ldst.h
+++ b/include/exec/cpu_ldst.h
@@ -16,6 +16,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * Generate inline load/store functions for all MMU modes (typically
  * at least _user and _kernel) as well as _data versions, for all data
diff --git a/include/exec/cpu_ldst_template.h b/include/exec/cpu_ldst_template.h
index eaf69a1..ac7d5c8 100644
--- a/include/exec/cpu_ldst_template.h
+++ b/include/exec/cpu_ldst_template.h
@@ -24,6 +24,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(SOFTMMU_CODE_ACCESS)
 #include "trace.h"
 #endif
diff --git a/include/exec/cpu_ldst_useronly_template.h b/include/exec/cpu_ldst_useronly_template.h
index b1378bf..e41aae9 100644
--- a/include/exec/cpu_ldst_useronly_template.h
+++ b/include/exec/cpu_ldst_useronly_template.h
@@ -23,6 +23,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(CODE_ACCESS)
 #include "trace.h"
 #endif
diff --git a/include/exec/cputlb.h b/include/exec/cputlb.h
index d454c00..4115c06 100644
--- a/include/exec/cputlb.h
+++ b/include/exec/cputlb.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef CPUTLB_H
 #define CPUTLB_H
 
diff --git a/include/exec/exec-all.h b/include/exec/exec-all.h
index c1f59fa..930f72b 100644
--- a/include/exec/exec-all.h
+++ b/include/exec/exec-all.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef _EXEC_ALL_H_
 #define _EXEC_ALL_H_
 
diff --git a/include/exec/gen-icount.h b/include/exec/gen-icount.h
index a011324..7982eb3 100644
--- a/include/exec/gen-icount.h
+++ b/include/exec/gen-icount.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef GEN_ICOUNT_H
 #define GEN_ICOUNT_H 1
 
diff --git a/include/exec/helper-gen.h b/include/exec/helper-gen.h
index 0d0da3a..ccbfc11 100644
--- a/include/exec/helper-gen.h
+++ b/include/exec/helper-gen.h
@@ -1,6 +1,8 @@ 
 /* Helper file for declaring TCG helper functions.
    This one expands generation functions for tcg opcodes.  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HELPER_GEN_H
 #define HELPER_GEN_H 1
 
diff --git a/include/exec/helper-proto.h b/include/exec/helper-proto.h
index effdd43..9cad3d4 100644
--- a/include/exec/helper-proto.h
+++ b/include/exec/helper-proto.h
@@ -1,6 +1,8 @@ 
 /* Helper file for declaring TCG helper functions.
    This one expands prototypes for the helper functions.  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HELPER_PROTO_H
 #define HELPER_PROTO_H 1
 
diff --git a/include/exec/helper-tcg.h b/include/exec/helper-tcg.h
index 79fa3c8..86bc83c 100644
--- a/include/exec/helper-tcg.h
+++ b/include/exec/helper-tcg.h
@@ -1,6 +1,8 @@ 
 /* Helper file for declaring TCG helper functions.
    This one defines data structures private to tcg.c.  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HELPER_TCG_H
 #define HELPER_TCG_H 1
 
diff --git a/include/exec/ioport.h b/include/exec/ioport.h
index a298b89..51cf14e 100644
--- a/include/exec/ioport.h
+++ b/include/exec/ioport.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /**************************************************************************
  * IO ports API
  */
diff --git a/include/exec/memory-internal.h b/include/exec/memory-internal.h
index fb467ac..68497f0 100644
--- a/include/exec/memory-internal.h
+++ b/include/exec/memory-internal.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /*
  * This header is for use by exec.c and memory.c ONLY.  Do not include it.
  * The functions declared here will be removed soon.
diff --git a/include/exec/ram_addr.h b/include/exec/ram_addr.h
index 2a9465d..627a84e 100644
--- a/include/exec/ram_addr.h
+++ b/include/exec/ram_addr.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 /*
  * This header is for use by exec.c and memory.c ONLY.  Do not include it.
  * The functions declared here will be removed soon.
diff --git a/include/exec/softmmu-semi.h b/include/exec/softmmu-semi.h
index 3a58c3f..c899345 100644
--- a/include/exec/softmmu-semi.h
+++ b/include/exec/softmmu-semi.h
@@ -6,6 +6,9 @@ 
  *
  * This code is licensed under the GPL
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef SOFTMMU_SEMI_H
 #define SOFTMMU_SEMI_H 1
 
diff --git a/include/exec/tb-hash.h b/include/exec/tb-hash.h
index 1d0200b..0239c13 100644
--- a/include/exec/tb-hash.h
+++ b/include/exec/tb-hash.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef EXEC_TB_HASH
 #define EXEC_TB_HASH
 
diff --git a/include/exec/user/abitypes.h b/include/exec/user/abitypes.h
index 80eedac..4c61626 100644
--- a/include/exec/user/abitypes.h
+++ b/include/exec/user/abitypes.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_TYPES_H
 #define QEMU_TYPES_H
 #include "cpu.h"
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
index f19ef4b..700da95 100644
--- a/include/exec/user/thunk.h
+++ b/include/exec/user/thunk.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef THUNK_H
 #define THUNK_H
 
diff --git a/include/hw/acpi/piix4.h b/include/hw/acpi/piix4.h
index 26c2370..ee60a31 100644
--- a/include/hw/acpi/piix4.h
+++ b/include/hw/acpi/piix4.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_ACPI_PIIX4_H
 #define HW_ACPI_PIIX4_H
 
diff --git a/include/hw/acpi/tco.h b/include/hw/acpi/tco.h
index 52ad767..d7ff814 100644
--- a/include/hw/acpi/tco.h
+++ b/include/hw/acpi/tco.h
@@ -6,6 +6,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_ACPI_TCO_H
 #define HW_ACPI_TCO_H
 
diff --git a/include/hw/arm/allwinner-a10.h b/include/hw/arm/allwinner-a10.h
index 6b32a99..cfd9137 100644
--- a/include/hw/arm/allwinner-a10.h
+++ b/include/hw/arm/allwinner-a10.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef ALLWINNER_H_
 
 #include "qemu-common.h"
diff --git a/include/hw/arm/bcm2836.h b/include/hw/arm/bcm2836.h
index 76de199..62ef648 100644
--- a/include/hw/arm/bcm2836.h
+++ b/include/hw/arm/bcm2836.h
@@ -8,6 +8,8 @@ 
  * This code is licensed under the GNU GPLv2 and later.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef BCM2836_H
 #define BCM2836_H
 
diff --git a/include/hw/arm/digic.h b/include/hw/arm/digic.h
index 63785ba..2a58574 100644
--- a/include/hw/arm/digic.h
+++ b/include/hw/arm/digic.h
@@ -15,6 +15,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_ARM_DIGIC_H
 #define HW_ARM_DIGIC_H
 
diff --git a/include/hw/arm/fsl-imx25.h b/include/hw/arm/fsl-imx25.h
index d0e8e9d..2795700 100644
--- a/include/hw/arm/fsl-imx25.h
+++ b/include/hw/arm/fsl-imx25.h
@@ -14,6 +14,8 @@ 
  * for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef FSL_IMX25_H
 #define FSL_IMX25_H
 
diff --git a/include/hw/arm/fsl-imx31.h b/include/hw/arm/fsl-imx31.h
index d408abb..fb77d94 100644
--- a/include/hw/arm/fsl-imx31.h
+++ b/include/hw/arm/fsl-imx31.h
@@ -14,6 +14,8 @@ 
  * for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef FSL_IMX31_H
 #define FSL_IMX31_H
 
diff --git a/include/hw/arm/fsl-imx6.h b/include/hw/arm/fsl-imx6.h
index ec6c509..5b3f7ec 100644
--- a/include/hw/arm/fsl-imx6.h
+++ b/include/hw/arm/fsl-imx6.h
@@ -14,6 +14,8 @@ 
  * for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef FSL_IMX6_H
 #define FSL_IMX6_H
 
diff --git a/include/hw/arm/sharpsl.h b/include/hw/arm/sharpsl.h
index 13981a6..a899cbd 100644
--- a/include/hw/arm/sharpsl.h
+++ b/include/hw/arm/sharpsl.h
@@ -3,6 +3,9 @@ 
  *
  * This file is licensed under the GNU GPL.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_SHARPSL_H
 #define QEMU_SHARPSL_H
 
diff --git a/include/hw/arm/xlnx-zynqmp.h b/include/hw/arm/xlnx-zynqmp.h
index c2931bf..4eefeaf 100644
--- a/include/hw/arm/xlnx-zynqmp.h
+++ b/include/hw/arm/xlnx-zynqmp.h
@@ -15,6 +15,8 @@ 
  * for more details.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef XLNX_ZYNQMP_H
 
 #include "qemu-common.h"
diff --git a/include/hw/block/fdc.h b/include/hw/block/fdc.h
index 1749dab..3e9013b 100644
--- a/include/hw/block/fdc.h
+++ b/include/hw/block/fdc.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_FDC_H
 #define HW_FDC_H
 
diff --git a/include/hw/block/flash.h b/include/hw/block/flash.h
index 50ccbbc..c67b073 100644
--- a/include/hw/block/flash.h
+++ b/include/hw/block/flash.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_FLASH_H
 #define HW_FLASH_H 1
 
diff --git a/include/hw/char/escc.h b/include/hw/char/escc.h
index 2742d70..99c6a68 100644
--- a/include/hw/char/escc.h
+++ b/include/hw/char/escc.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_ESCC_H
 #define HW_ESCC_H 1
 
diff --git a/include/hw/char/pl011.h b/include/hw/char/pl011.h
index 93bd7ee..da127ba 100644
--- a/include/hw/char/pl011.h
+++ b/include/hw/char/pl011.h
@@ -12,6 +12,8 @@ 
  * this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef PL011_UART_H
 #define PL011_UART_H
 
diff --git a/include/hw/char/xilinx_uartlite.h b/include/hw/char/xilinx_uartlite.h
index 8b4fc54..7652174 100644
--- a/include/hw/char/xilinx_uartlite.h
+++ b/include/hw/char/xilinx_uartlite.h
@@ -12,6 +12,8 @@ 
  * this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef XILINX_UARTLITE_H
 #define XILINX_UARTLITE_H
 
diff --git a/include/hw/cris/etraxfs.h b/include/hw/cris/etraxfs.h
index eb66418..3e4a877 100644
--- a/include/hw/cris/etraxfs.h
+++ b/include/hw/cris/etraxfs.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_EXTRAXFS_H
 #define HW_EXTRAXFS_H 1
 
diff --git a/include/hw/cris/etraxfs_dma.h b/include/hw/cris/etraxfs_dma.h
index 38104a6..185d50f 100644
--- a/include/hw/cris/etraxfs_dma.h
+++ b/include/hw/cris/etraxfs_dma.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_ETRAXFS_DMA_H
 #define HW_ETRAXFS_DMA_H 1
 
diff --git a/include/hw/elf_ops.h b/include/hw/elf_ops.h
index f510e7e..ed6b02b 100644
--- a/include/hw/elf_ops.h
+++ b/include/hw/elf_ops.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 static void glue(bswap_ehdr, SZ)(struct elfhdr *ehdr)
 {
     bswap16s(&ehdr->e_type);			/* Object file type */
diff --git a/include/hw/empty_slot.h b/include/hw/empty_slot.h
index 6079602..e148923 100644
--- a/include/hw/empty_slot.h
+++ b/include/hw/empty_slot.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_EMPTY_SLOT_H
 #define HW_EMPTY_SLOT_H 1
 
diff --git a/include/hw/i2c/aspeed_i2c.h b/include/hw/i2c/aspeed_i2c.h
index f9020ac..ee215ff 100644
--- a/include/hw/i2c/aspeed_i2c.h
+++ b/include/hw/i2c/aspeed_i2c.h
@@ -17,6 +17,9 @@ 
  *  with this program; if not, write to the Free Software Foundation, Inc.,
  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef ASPEED_I2C_H
 #define ASPEED_I2C_H
 
diff --git a/include/hw/i2c/i2c-ddc.h b/include/hw/i2c/i2c-ddc.h
index cb8e62d..d2469b2 100644
--- a/include/hw/i2c/i2c-ddc.h
+++ b/include/hw/i2c/i2c-ddc.h
@@ -16,6 +16,8 @@ 
  *  with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef I2C_DDC
 #define I2C_DDC
 
diff --git a/include/hw/i2c/pm_smbus.h b/include/hw/i2c/pm_smbus.h
index 926603f..48995ca 100644
--- a/include/hw/i2c/pm_smbus.h
+++ b/include/hw/i2c/pm_smbus.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef PM_SMBUS_H
 #define PM_SMBUS_H
 
diff --git a/include/hw/i386/apic_internal.h b/include/hw/i386/apic_internal.h
index 74fe935..441a620 100644
--- a/include/hw/i386/apic_internal.h
+++ b/include/hw/i386/apic_internal.h
@@ -17,6 +17,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_APIC_INTERNAL_H
 #define QEMU_APIC_INTERNAL_H
 
diff --git a/include/hw/i386/intel_iommu.h b/include/hw/i386/intel_iommu.h
index b024ffa..dfa08c0 100644
--- a/include/hw/i386/intel_iommu.h
+++ b/include/hw/i386/intel_iommu.h
@@ -9,16 +9,18 @@ 
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 2 of the License, or
  * (at your option) any later version.
-
+ *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
-
+ *
  * You should have received a copy of the GNU General Public License along
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef INTEL_IOMMU_H
 #define INTEL_IOMMU_H
 #include "hw/qdev.h"
diff --git a/include/hw/i386/ioapic_internal.h b/include/hw/i386/ioapic_internal.h
index cab9e67..acf171f 100644
--- a/include/hw/i386/ioapic_internal.h
+++ b/include/hw/i386/ioapic_internal.h
@@ -19,6 +19,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_IOAPIC_INTERNAL_H
 #define QEMU_IOAPIC_INTERNAL_H
 
diff --git a/include/hw/input/hid.h b/include/hw/input/hid.h
index 2127c7c..aec0435 100644
--- a/include/hw/input/hid.h
+++ b/include/hw/input/hid.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HID_H
 #define QEMU_HID_H
 
diff --git a/include/hw/intc/allwinner-a10-pic.h b/include/hw/intc/allwinner-a10-pic.h
index 5721b2e..355c301 100644
--- a/include/hw/intc/allwinner-a10-pic.h
+++ b/include/hw/intc/allwinner-a10-pic.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef AW_A10_PIC_H
 #define AW_A10_PIC_H
 
diff --git a/include/hw/isa/i8257.h b/include/hw/isa/i8257.h
index 8c44d36..b4f983a 100644
--- a/include/hw/isa/i8257.h
+++ b/include/hw/isa/i8257.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_I8257_H
 #define HW_I8257_H
 
diff --git a/include/hw/isa/vt82c686.h b/include/hw/isa/vt82c686.h
index 471b5e9..ddc8405 100644
--- a/include/hw/isa/vt82c686.h
+++ b/include/hw/isa/vt82c686.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_VT82C686_H
 #define HW_VT82C686_H
 
diff --git a/include/hw/kvm/clock.h b/include/hw/kvm/clock.h
index 252ea13..b6f2147 100644
--- a/include/hw/kvm/clock.h
+++ b/include/hw/kvm/clock.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifdef CONFIG_KVM
 
 void kvmclock_create(void);
diff --git a/include/hw/mips/bios.h b/include/hw/mips/bios.h
index b4b88ac..85396e8 100644
--- a/include/hw/mips/bios.h
+++ b/include/hw/mips/bios.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "cpu.h"
 
 #define BIOS_SIZE (4 * 1024 * 1024)
diff --git a/include/hw/mips/cpudevs.h b/include/hw/mips/cpudevs.h
index 8673daa..a04ef08 100644
--- a/include/hw/mips/cpudevs.h
+++ b/include/hw/mips/cpudevs.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_MIPS_CPUDEVS_H
 #define HW_MIPS_CPUDEVS_H
 
diff --git a/include/hw/mips/mips.h b/include/hw/mips/mips.h
index e0065ce..8f5608b 100644
--- a/include/hw/mips/mips.h
+++ b/include/hw/mips/mips.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_MIPS_H
 #define HW_MIPS_H
 /* Definitions for mips board emulation.  */
diff --git a/include/hw/misc/mips_cmgcr.h b/include/hw/misc/mips_cmgcr.h
index cc60eef..504a2b2 100644
--- a/include/hw/misc/mips_cmgcr.h
+++ b/include/hw/misc/mips_cmgcr.h
@@ -7,6 +7,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _MIPS_GCR_H
 #define _MIPS_GCR_H
 
diff --git a/include/hw/misc/mips_cpc.h b/include/hw/misc/mips_cpc.h
index 72c834e..86d2705 100644
--- a/include/hw/misc/mips_cpc.h
+++ b/include/hw/misc/mips_cpc.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef MIPS_CPC_H
 #define MIPS_CPC_H
 
diff --git a/include/hw/misc/mips_itu.h b/include/hw/misc/mips_itu.h
index b3a4532..96d7193 100644
--- a/include/hw/misc/mips_itu.h
+++ b/include/hw/misc/mips_itu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef MIPS_ITU_H
 #define MIPS_ITU_H
 
diff --git a/include/hw/net/allwinner_emac.h b/include/hw/net/allwinner_emac.h
index 9f21aa7..2a668a6 100644
--- a/include/hw/net/allwinner_emac.h
+++ b/include/hw/net/allwinner_emac.h
@@ -19,6 +19,9 @@ 
  * GNU General Public License for more details.
  *
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef AW_EMAC_H
 #define AW_EMAC_H
 
diff --git a/include/hw/nvram/openbios_firmware_abi.h b/include/hw/nvram/openbios_firmware_abi.h
index c66ee22..89dfd5e 100644
--- a/include/hw/nvram/openbios_firmware_abi.h
+++ b/include/hw/nvram/openbios_firmware_abi.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef FIRMWARE_ABI_H
 #define FIRMWARE_ABI_H
 
diff --git a/include/hw/pci-host/apb.h b/include/hw/pci-host/apb.h
index 736db61..b076064 100644
--- a/include/hw/pci-host/apb.h
+++ b/include/hw/pci-host/apb.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef APB_PCI_H
 #define APB_PCI_H
 
diff --git a/include/hw/pci-host/spapr.h b/include/hw/pci-host/spapr.h
index 7848366..e09331c 100644
--- a/include/hw/pci-host/spapr.h
+++ b/include/hw/pci-host/spapr.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(__HW_SPAPR_H__)
 #error Please include spapr.h before this file!
 #endif
diff --git a/include/hw/pci/pci_bus.h b/include/hw/pci/pci_bus.h
index 403fec6..daf32b3 100644
--- a/include/hw/pci/pci_bus.h
+++ b/include/hw/pci/pci_bus.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_PCI_BUS_H
 #define QEMU_PCI_BUS_H
 
diff --git a/include/hw/pci/pcie_aer.h b/include/hw/pci/pcie_aer.h
index c2ee4e2..d39a7bd 100644
--- a/include/hw/pci/pcie_aer.h
+++ b/include/hw/pci/pcie_aer.h
@@ -18,6 +18,8 @@ 
  * with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_PCIE_AER_H
 #define QEMU_PCIE_AER_H
 
diff --git a/include/hw/ppc/ppc.h b/include/hw/ppc/ppc.h
index 5617dc4..4692564 100644
--- a/include/hw/ppc/ppc.h
+++ b/include/hw/ppc/ppc.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_PPC_H
 #define HW_PPC_H 1
 
diff --git a/include/hw/ppc/ppc4xx.h b/include/hw/ppc/ppc4xx.h
index 91d84ba..b02f58a 100644
--- a/include/hw/ppc/ppc4xx.h
+++ b/include/hw/ppc/ppc4xx.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(PPC_4XX_H)
 #define PPC_4XX_H
 
diff --git a/include/hw/ppc/spapr.h b/include/hw/ppc/spapr.h
index e1f8274..c252948 100644
--- a/include/hw/ppc/spapr.h
+++ b/include/hw/ppc/spapr.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(__HW_SPAPR_H__)
 #define __HW_SPAPR_H__
 
diff --git a/include/hw/ppc/spapr_cpu_core.h b/include/hw/ppc/spapr_cpu_core.h
index 1c9b319..05cea70 100644
--- a/include/hw/ppc/spapr_cpu_core.h
+++ b/include/hw/ppc/spapr_cpu_core.h
@@ -6,6 +6,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HW_SPAPR_CPU_CORE_H
 #define HW_SPAPR_CPU_CORE_H
 
diff --git a/include/hw/ppc/spapr_drc.h b/include/hw/ppc/spapr_drc.h
index 08e8411..7243f44 100644
--- a/include/hw/ppc/spapr_drc.h
+++ b/include/hw/ppc/spapr_drc.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #if !defined(__HW_SPAPR_DRC_H__)
 #define __HW_SPAPR_DRC_H__
 
diff --git a/include/hw/ppc/spapr_vio.h b/include/hw/ppc/spapr_vio.h
index 5f8b042..2351975 100644
--- a/include/hw/ppc/spapr_vio.h
+++ b/include/hw/ppc/spapr_vio.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _HW_SPAPR_VIO_H
 #define _HW_SPAPR_VIO_H
 /*
diff --git a/include/hw/ppc/xics.h b/include/hw/ppc/xics.h
index 6925677..013961b 100644
--- a/include/hw/ppc/xics.h
+++ b/include/hw/ppc/xics.h
@@ -24,6 +24,9 @@ 
  * THE SOFTWARE.
  *
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined(__XICS_H__)
 #define __XICS_H__
 
diff --git a/include/hw/sparc/grlib.h b/include/hw/sparc/grlib.h
index 9a0db7b..869aa96 100644
--- a/include/hw/sparc/grlib.h
+++ b/include/hw/sparc/grlib.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _GRLIB_H_
 #define _GRLIB_H_
 
diff --git a/include/hw/sparc/sparc32_dma.h b/include/hw/sparc/sparc32_dma.h
index 9497b13..844a659 100644
--- a/include/hw/sparc/sparc32_dma.h
+++ b/include/hw/sparc/sparc32_dma.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SPARC32_DMA_H
 #define SPARC32_DMA_H
 
diff --git a/include/hw/ssi/xilinx_spips.h b/include/hw/ssi/xilinx_spips.h
index dbb9eef..0a64691 100644
--- a/include/hw/ssi/xilinx_spips.h
+++ b/include/hw/ssi/xilinx_spips.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef XLNX_SPIPS_H
 #define XLNX_SPIPS_H
 
diff --git a/include/hw/timer/allwinner-a10-pit.h b/include/hw/timer/allwinner-a10-pit.h
index 770bdc0..f3f7c08 100644
--- a/include/hw/timer/allwinner-a10-pit.h
+++ b/include/hw/timer/allwinner-a10-pit.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef AW_A10_PIT_H
 #define AW_A10_PIT_H
 
diff --git a/include/hw/timer/aspeed_timer.h b/include/hw/timer/aspeed_timer.h
index bd6c1a7..50f9deb 100644
--- a/include/hw/timer/aspeed_timer.h
+++ b/include/hw/timer/aspeed_timer.h
@@ -19,6 +19,9 @@ 
  *  with this program; if not, write to the Free Software Foundation, Inc.,
  *  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef ASPEED_TIMER_H
 #define ASPEED_TIMER_H
 
diff --git a/include/hw/timer/i8254_internal.h b/include/hw/timer/i8254_internal.h
index 61a1bfb..fbc5edc 100644
--- a/include/hw/timer/i8254_internal.h
+++ b/include/hw/timer/i8254_internal.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_I8254_INTERNAL_H
 #define QEMU_I8254_INTERNAL_H
 
diff --git a/include/hw/timer/m48t59.h b/include/hw/timer/m48t59.h
index 3367923..e541e52 100644
--- a/include/hw/timer/m48t59.h
+++ b/include/hw/timer/m48t59.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef NVRAM_H
 #define NVRAM_H
 
diff --git a/include/hw/virtio/virtio-access.h b/include/hw/virtio/virtio-access.h
index 4b28038..c59a3a5 100644
--- a/include/hw/virtio/virtio-access.h
+++ b/include/hw/virtio/virtio-access.h
@@ -12,6 +12,9 @@ 
  * (at your option) any later version.
  *
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef _QEMU_VIRTIO_ACCESS_H
 #define _QEMU_VIRTIO_ACCESS_H
 #include "hw/virtio/virtio.h"
diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-input.h
index bddbd4b..c082241 100644
--- a/include/hw/virtio/virtio-input.h
+++ b/include/hw/virtio/virtio-input.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _QEMU_VIRTIO_INPUT_H
 #define _QEMU_VIRTIO_INPUT_H
 
diff --git a/include/hw/virtio/virtio-rng.h b/include/hw/virtio/virtio-rng.h
index 2bc1ee5..c204481 100644
--- a/include/hw/virtio/virtio-rng.h
+++ b/include/hw/virtio/virtio-rng.h
@@ -9,6 +9,8 @@ 
  * top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _QEMU_VIRTIO_RNG_H
 #define _QEMU_VIRTIO_RNG_H
 
diff --git a/include/hw/xen/xen_backend.h b/include/hw/xen/xen_backend.h
index 6e18a46..032eb45 100644
--- a/include/hw/xen/xen_backend.h
+++ b/include/hw/xen/xen_backend.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_HW_XEN_BACKEND_H
 #define QEMU_HW_XEN_BACKEND_H 1
 
diff --git a/include/hw/xen/xen_common.h b/include/hw/xen/xen_common.h
index 5eabf37..329f117 100644
--- a/include/hw/xen/xen_common.h
+++ b/include/hw/xen/xen_common.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_HW_XEN_COMMON_H
 #define QEMU_HW_XEN_COMMON_H 1
 
diff --git a/include/libdecnumber/decNumberLocal.h b/include/libdecnumber/decNumberLocal.h
index 94fb512..3609c1a 100644
--- a/include/libdecnumber/decNumberLocal.h
+++ b/include/libdecnumber/decNumberLocal.h
@@ -28,6 +28,8 @@ 
    Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /* ------------------------------------------------------------------ */
 /* decNumber package local type, tuning, and macro definitions	      */
 /* ------------------------------------------------------------------ */
diff --git a/include/migration/cpu.h b/include/migration/cpu.h
index f3abbab..04f1946 100644
--- a/include/migration/cpu.h
+++ b/include/migration/cpu.h
@@ -1,4 +1,7 @@ 
 /* Declarations for use for CPU state serialization.  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef MIGRATION_CPU_H
 #define MIGRATION_CPU_H
 
diff --git a/include/monitor/hmp-target.h b/include/monitor/hmp-target.h
index bc2c9c0..e3309dc 100644
--- a/include/monitor/hmp-target.h
+++ b/include/monitor/hmp-target.h
@@ -21,6 +21,9 @@ 
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef MONITOR_COMMON_H
 #define MONITOR_COMMON_H
 
diff --git a/include/qemu/compatfd.h b/include/qemu/compatfd.h
index aa12ee9..8fceea4 100644
--- a/include/qemu/compatfd.h
+++ b/include/qemu/compatfd.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_COMPATFD_H
 #define QEMU_COMPATFD_H
 
diff --git a/include/qemu/ratelimit.h b/include/qemu/ratelimit.h
index d413a4a..eb8ac2d 100644
--- a/include/qemu/ratelimit.h
+++ b/include/qemu/ratelimit.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_RATELIMIT_H
 #define QEMU_RATELIMIT_H 1
 
diff --git a/include/qemu/thread-win32.h b/include/qemu/thread-win32.h
index 385ff5f..5092c48 100644
--- a/include/qemu/thread-win32.h
+++ b/include/qemu/thread-win32.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __QEMU_THREAD_WIN32_H
 #define __QEMU_THREAD_WIN32_H 1
 #include "windows.h"
diff --git a/include/qemu/xattr.h b/include/qemu/xattr.h
index 83cf98c..31da484 100644
--- a/include/qemu/xattr.h
+++ b/include/qemu/xattr.h
@@ -10,6 +10,9 @@ 
  * later version.  See the COPYING file in the top-level directory.
  *
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_XATTR_H
 #define QEMU_XATTR_H
 
diff --git a/include/sysemu/balloon.h b/include/sysemu/balloon.h
index 3f976b4..a250768 100644
--- a/include/sysemu/balloon.h
+++ b/include/sysemu/balloon.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _QEMU_BALLOON_H
 #define _QEMU_BALLOON_H
 
diff --git a/include/sysemu/cpus.h b/include/sysemu/cpus.h
index fe992a8..128eaf8 100644
--- a/include/sysemu/cpus.h
+++ b/include/sysemu/cpus.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_CPUS_H
 #define QEMU_CPUS_H
 
diff --git a/include/sysemu/dump.h b/include/sysemu/dump.h
index ef931be..a9368b5 100644
--- a/include/sysemu/dump.h
+++ b/include/sysemu/dump.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef DUMP_H
 #define DUMP_H
 
diff --git a/include/sysemu/iothread.h b/include/sysemu/iothread.h
index 2eefea1..9d110f2 100644
--- a/include/sysemu/iothread.h
+++ b/include/sysemu/iothread.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef IOTHREAD_H
 #define IOTHREAD_H
 
diff --git a/include/sysemu/kvm_int.h b/include/sysemu/kvm_int.h
index 888557a..a1a562e 100644
--- a/include/sysemu/kvm_int.h
+++ b/include/sysemu/kvm_int.h
@@ -6,6 +6,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_KVM_INT_H
 #define QEMU_KVM_INT_H
 
diff --git a/include/sysemu/memory_mapping.h b/include/sysemu/memory_mapping.h
index 706152d..97f0afa 100644
--- a/include/sysemu/memory_mapping.h
+++ b/include/sysemu/memory_mapping.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef MEMORY_MAPPING_H
 #define MEMORY_MAPPING_H
 
diff --git a/include/sysemu/os-posix.h b/include/sysemu/os-posix.h
index 9c7dfdf..1aefc70 100644
--- a/include/sysemu/os-posix.h
+++ b/include/sysemu/os-posix.h
@@ -23,6 +23,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_OS_POSIX_H
 #define QEMU_OS_POSIX_H
 
diff --git a/include/sysemu/os-win32.h b/include/sysemu/os-win32.h
index 17aad3b..383b114 100644
--- a/include/sysemu/os-win32.h
+++ b/include/sysemu/os-win32.h
@@ -23,6 +23,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_OS_WIN32_H
 #define QEMU_OS_WIN32_H
 
diff --git a/include/sysemu/seccomp.h b/include/sysemu/seccomp.h
index cfc0600..11c17b2 100644
--- a/include/sysemu/seccomp.h
+++ b/include/sysemu/seccomp.h
@@ -12,6 +12,9 @@ 
  * Contributions after 2012-01-13 are licensed under the terms of the
  * GNU GPL, version 2 or (at your option) any later version.
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_SECCOMP_H
 #define QEMU_SECCOMP_H
 
diff --git a/include/sysemu/tpm.h b/include/sysemu/tpm.h
index c8afa17..8161b3c 100644
--- a/include/sysemu/tpm.h
+++ b/include/sysemu/tpm.h
@@ -9,6 +9,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_TPM_H
 #define QEMU_TPM_H
 
diff --git a/include/sysemu/xen-mapcache.h b/include/sysemu/xen-mapcache.h
index c849489..6e5f98a 100644
--- a/include/sysemu/xen-mapcache.h
+++ b/include/sysemu/xen-mapcache.h
@@ -6,6 +6,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef XEN_MAPCACHE_H
 #define XEN_MAPCACHE_H
 
diff --git a/include/trace-tcg.h b/include/trace-tcg.h
index 6f6bdbb..548c974 100644
--- a/include/trace-tcg.h
+++ b/include/trace-tcg.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRACE_TCG_H
 #define TRACE_TCG_H
 
diff --git a/include/ui/egl-context.h b/include/ui/egl-context.h
index f004ce1..db9c225 100644
--- a/include/ui/egl-context.h
+++ b/include/ui/egl-context.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef EGL_CONTEXT_H
 #define EGL_CONTEXT_H
 
diff --git a/include/ui/egl-helpers.h b/include/ui/egl-helpers.h
index 03fcf4b..fbc03a8 100644
--- a/include/ui/egl-helpers.h
+++ b/include/ui/egl-helpers.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef EGL_HELPERS_H
 #define EGL_HELPERS_H
 
diff --git a/include/ui/gtk.h b/include/ui/gtk.h
index 2bf60f3..c9bff4f 100644
--- a/include/ui/gtk.h
+++ b/include/ui/gtk.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef UI_GTK_H
 #define UI_GTK_H
 
diff --git a/include/ui/input.h b/include/ui/input.h
index 102d8a3..855affe 100644
--- a/include/ui/input.h
+++ b/include/ui/input.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef INPUT_H
 #define INPUT_H
 
diff --git a/include/ui/pixel_ops.h b/include/ui/pixel_ops.h
index d390adf..18d5e18 100644
--- a/include/ui/pixel_ops.h
+++ b/include/ui/pixel_ops.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 static inline unsigned int rgb_to_pixel8(unsigned int r, unsigned int g,
                                          unsigned int b)
 {
diff --git a/include/ui/sdl2.h b/include/ui/sdl2.h
index 3f0b57b..a1a441a 100644
--- a/include/ui/sdl2.h
+++ b/include/ui/sdl2.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SDL2_H
 #define SDL2_H
 
diff --git a/include/ui/shader.h b/include/ui/shader.h
index f7d8618..d8a5145 100644
--- a/include/ui/shader.h
+++ b/include/ui/shader.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_SHADER_H
 #define QEMU_SHADER_H
 
diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h
index 568b64a..ff13d99 100644
--- a/include/ui/spice-display.h
+++ b/include/ui/spice-display.h
@@ -15,6 +15,8 @@ 
  * along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include <spice/ipc_ring.h>
 #include <spice/enums.h>
 #include <spice/qxl_dev.h>
diff --git a/linux-headers/asm-arm/kvm.h b/linux-headers/asm-arm/kvm.h
index c98e4dc..e5147f1 100644
--- a/linux-headers/asm-arm/kvm.h
+++ b/linux-headers/asm-arm/kvm.h
@@ -16,6 +16,8 @@ 
  * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __ARM_KVM_H__
 #define __ARM_KVM_H__
 
diff --git a/linux-headers/asm-arm/kvm_para.h b/linux-headers/asm-arm/kvm_para.h
index 14fab8f..c424618 100644
--- a/linux-headers/asm-arm/kvm_para.h
+++ b/linux-headers/asm-arm/kvm_para.h
@@ -1 +1,3 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #include <asm-generic/kvm_para.h>
diff --git a/linux-headers/asm-arm64/kvm.h b/linux-headers/asm-arm64/kvm.h
index 7d82d1f..e95df78 100644
--- a/linux-headers/asm-arm64/kvm.h
+++ b/linux-headers/asm-arm64/kvm.h
@@ -19,6 +19,8 @@ 
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __ARM_KVM_H__
 #define __ARM_KVM_H__
 
diff --git a/linux-headers/asm-arm64/kvm_para.h b/linux-headers/asm-arm64/kvm_para.h
index 14fab8f..c424618 100644
--- a/linux-headers/asm-arm64/kvm_para.h
+++ b/linux-headers/asm-arm64/kvm_para.h
@@ -1 +1,3 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #include <asm-generic/kvm_para.h>
diff --git a/linux-headers/asm-arm64/unistd.h b/linux-headers/asm-arm64/unistd.h
index 043d17a..5da368b 100644
--- a/linux-headers/asm-arm64/unistd.h
+++ b/linux-headers/asm-arm64/unistd.h
@@ -14,6 +14,8 @@ 
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #define __ARCH_WANT_RENAMEAT
 
 #include <asm-generic/unistd.h>
diff --git a/linux-headers/asm-mips/kvm.h b/linux-headers/asm-mips/kvm.h
index 6985eb5..4f15d33 100644
--- a/linux-headers/asm-mips/kvm.h
+++ b/linux-headers/asm-mips/kvm.h
@@ -8,6 +8,8 @@ 
  * Authors: Sanjay Lal <sanjayl@kymasys.com>
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __LINUX_KVM_MIPS_H
 #define __LINUX_KVM_MIPS_H
 
diff --git a/linux-headers/asm-mips/unistd.h b/linux-headers/asm-mips/unistd.h
index 2a20209..9af4d4f 100644
--- a/linux-headers/asm-mips/unistd.h
+++ b/linux-headers/asm-mips/unistd.h
@@ -9,6 +9,9 @@ 
  * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto
  * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _ASM_UNISTD_H
 #define _ASM_UNISTD_H
 
diff --git a/linux-headers/asm-powerpc/kvm.h b/linux-headers/asm-powerpc/kvm.h
index c93cf35..d0e3f75 100644
--- a/linux-headers/asm-powerpc/kvm.h
+++ b/linux-headers/asm-powerpc/kvm.h
@@ -17,6 +17,8 @@ 
  * Authors: Hollis Blanchard <hollisb@us.ibm.com>
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __LINUX_KVM_POWERPC_H
 #define __LINUX_KVM_POWERPC_H
 
diff --git a/linux-headers/asm-powerpc/kvm_para.h b/linux-headers/asm-powerpc/kvm_para.h
index 2abcc46..7e48ebf 100644
--- a/linux-headers/asm-powerpc/kvm_para.h
+++ b/linux-headers/asm-powerpc/kvm_para.h
@@ -17,6 +17,8 @@ 
  * Authors: Hollis Blanchard <hollisb@us.ibm.com>
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __POWERPC_KVM_PARA_H__
 #define __POWERPC_KVM_PARA_H__
 
diff --git a/linux-headers/asm-s390/kvm.h b/linux-headers/asm-s390/kvm.h
index 09ae5dc..c271f92 100644
--- a/linux-headers/asm-s390/kvm.h
+++ b/linux-headers/asm-s390/kvm.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __LINUX_KVM_S390_H
 #define __LINUX_KVM_S390_H
 /*
diff --git a/linux-headers/asm-x86/kvm.h b/linux-headers/asm-x86/kvm.h
index 739c0c5..d3a7f1d 100644
--- a/linux-headers/asm-x86/kvm.h
+++ b/linux-headers/asm-x86/kvm.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _ASM_X86_KVM_H
 #define _ASM_X86_KVM_H
 
diff --git a/linux-headers/asm-x86/kvm_para.h b/linux-headers/asm-x86/kvm_para.h
index e41c5c1..f14bb8b 100644
--- a/linux-headers/asm-x86/kvm_para.h
+++ b/linux-headers/asm-x86/kvm_para.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _ASM_X86_KVM_PARA_H
 #define _ASM_X86_KVM_PARA_H
 
diff --git a/linux-headers/asm-x86/unistd.h b/linux-headers/asm-x86/unistd.h
index 1f99b12..ea1d455 100644
--- a/linux-headers/asm-x86/unistd.h
+++ b/linux-headers/asm-x86/unistd.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _ASM_X86_UNISTD_H
 #define _ASM_X86_UNISTD_H
 
diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h
index e60e21b..5d5ed21 100644
--- a/linux-headers/linux/kvm.h
+++ b/linux-headers/linux/kvm.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __LINUX_KVM_H
 #define __LINUX_KVM_H
 
diff --git a/linux-headers/linux/kvm_para.h b/linux-headers/linux/kvm_para.h
index e61661e..51f87fb 100644
--- a/linux-headers/linux/kvm_para.h
+++ b/linux-headers/linux/kvm_para.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef __LINUX_KVM_PARA_H
 #define __LINUX_KVM_PARA_H
 
diff --git a/linux-headers/linux/userfaultfd.h b/linux-headers/linux/userfaultfd.h
index 19e8453..01dd4ce 100644
--- a/linux-headers/linux/userfaultfd.h
+++ b/linux-headers/linux/userfaultfd.h
@@ -6,6 +6,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _LINUX_USERFAULTFD_H
 #define _LINUX_USERFAULTFD_H
 
diff --git a/linux-headers/linux/vfio.h b/linux-headers/linux/vfio.h
index 759b850..e9873bf 100644
--- a/linux-headers/linux/vfio.h
+++ b/linux-headers/linux/vfio.h
@@ -8,6 +8,9 @@ 
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef VFIO_H
 #define VFIO_H
 
diff --git a/linux-headers/linux/vhost.h b/linux-headers/linux/vhost.h
index 571294c..9c04cf0 100644
--- a/linux-headers/linux/vhost.h
+++ b/linux-headers/linux/vhost.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _LINUX_VHOST_H
 #define _LINUX_VHOST_H
 /* Userspace interface for in-kernel virtio accelerators. */
diff --git a/linux-user/aarch64/target_cpu.h b/linux-user/aarch64/target_cpu.h
index b5593dc..ec4c7e5 100644
--- a/linux-user/aarch64/target_cpu.h
+++ b/linux-user/aarch64/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/aarch64/target_signal.h b/linux-user/aarch64/target_signal.h
index e8c677d..ba601a4 100644
--- a/linux-user/aarch64/target_signal.h
+++ b/linux-user/aarch64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/aarch64/target_structs.h b/linux-user/aarch64/target_structs.h
index 21c1f2c..73f67af 100644
--- a/linux-user/aarch64/target_structs.h
+++ b/linux-user/aarch64/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/aarch64/termbits.h b/linux-user/aarch64/termbits.h
index b64ba97..766e909 100644
--- a/linux-user/aarch64/termbits.h
+++ b/linux-user/aarch64/termbits.h
@@ -1,6 +1,8 @@ 
 /* from asm/termbits.h */
 /* NOTE: exactly the same as i386 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/alpha/target_cpu.h b/linux-user/alpha/target_cpu.h
index 4256245..38ea84b 100644
--- a/linux-user/alpha/target_cpu.h
+++ b/linux-user/alpha/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/alpha/target_signal.h b/linux-user/alpha/target_signal.h
index 4c78319..f7d465a 100644
--- a/linux-user/alpha/target_signal.h
+++ b/linux-user/alpha/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/alpha/target_structs.h b/linux-user/alpha/target_structs.h
index 50e7708..8b34071 100644
--- a/linux-user/alpha/target_structs.h
+++ b/linux-user/alpha/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/alpha/target_syscall.h b/linux-user/alpha/target_syscall.h
index 3db4b16..8f61197 100644
--- a/linux-user/alpha/target_syscall.h
+++ b/linux-user/alpha/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/alpha/termbits.h b/linux-user/alpha/termbits.h
index 6406b6a..ef255ca 100644
--- a/linux-user/alpha/termbits.h
+++ b/linux-user/alpha/termbits.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 typedef unsigned char	target_cc_t;
 typedef unsigned int	target_speed_t;
 typedef unsigned int	target_tcflag_t;
diff --git a/linux-user/arm/nwfpe/fpa11.h b/linux-user/arm/nwfpe/fpa11.h
index 0b07284..de7448e 100644
--- a/linux-user/arm/nwfpe/fpa11.h
+++ b/linux-user/arm/nwfpe/fpa11.h
@@ -18,6 +18,8 @@ 
     along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __FPA11_H__
 #define __FPA11_H__
 
diff --git a/linux-user/arm/nwfpe/fpopcode.h b/linux-user/arm/nwfpe/fpopcode.h
index 1b1137f..53eaa0b 100644
--- a/linux-user/arm/nwfpe/fpopcode.h
+++ b/linux-user/arm/nwfpe/fpopcode.h
@@ -18,6 +18,8 @@ 
     along with this program; if not, see <http://www.gnu.org/licenses/>.
 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __FPOPCODE_H__
 #define __FPOPCODE_H__
 
diff --git a/linux-user/arm/target_cpu.h b/linux-user/arm/target_cpu.h
index 6832262..79dface 100644
--- a/linux-user/arm/target_cpu.h
+++ b/linux-user/arm/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/arm/target_signal.h b/linux-user/arm/target_signal.h
index fb31f4c..09b42db 100644
--- a/linux-user/arm/target_signal.h
+++ b/linux-user/arm/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/arm/target_structs.h b/linux-user/arm/target_structs.h
index f3c85d4..75a37da 100644
--- a/linux-user/arm/target_structs.h
+++ b/linux-user/arm/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/arm/target_syscall.h b/linux-user/arm/target_syscall.h
index 11077b7..f4275c4 100644
--- a/linux-user/arm/target_syscall.h
+++ b/linux-user/arm/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/arm/termbits.h b/linux-user/arm/termbits.h
index 7772df1..e917098 100644
--- a/linux-user/arm/termbits.h
+++ b/linux-user/arm/termbits.h
@@ -1,6 +1,8 @@ 
 /* from asm/termbits.h */
 /* NOTE: exactly the same as i386 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/cris/target_cpu.h b/linux-user/cris/target_cpu.h
index 4d787e5..c31a125 100644
--- a/linux-user/cris/target_cpu.h
+++ b/linux-user/cris/target_cpu.h
@@ -17,6 +17,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/cris/target_signal.h b/linux-user/cris/target_signal.h
index e0f1382..a3a5c8f 100644
--- a/linux-user/cris/target_signal.h
+++ b/linux-user/cris/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/cris/target_structs.h b/linux-user/cris/target_structs.h
index e4a1ffb..bfe4ebc 100644
--- a/linux-user/cris/target_structs.h
+++ b/linux-user/cris/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/cris/termbits.h b/linux-user/cris/termbits.h
index fc82ca0..5aab429 100644
--- a/linux-user/cris/termbits.h
+++ b/linux-user/cris/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/flat.h b/linux-user/flat.h
index 6f2d0c4..473fa61 100644
--- a/linux-user/flat.h
+++ b/linux-user/flat.h
@@ -7,6 +7,8 @@ 
  * support uClinux flat-format executables.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define	FLAT_VERSION			0x00000004L
 
 #ifdef CONFIG_BINFMT_SHARED_FLAT
diff --git a/linux-user/host/aarch64/hostdep.h b/linux-user/host/aarch64/hostdep.h
index b79eaf1..3e6ab2a 100644
--- a/linux-user/host/aarch64/hostdep.h
+++ b/linux-user/host/aarch64/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/host/arm/hostdep.h b/linux-user/host/arm/hostdep.h
index 8e1ff2f..b08a9e1 100644
--- a/linux-user/host/arm/hostdep.h
+++ b/linux-user/host/arm/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/host/i386/hostdep.h b/linux-user/host/i386/hostdep.h
index 5a12f4a..85e7034 100644
--- a/linux-user/host/i386/hostdep.h
+++ b/linux-user/host/i386/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/host/ppc64/hostdep.h b/linux-user/host/ppc64/hostdep.h
index 310e7d1..e1b8fc5 100644
--- a/linux-user/host/ppc64/hostdep.h
+++ b/linux-user/host/ppc64/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/host/s390x/hostdep.h b/linux-user/host/s390x/hostdep.h
index e95871c..9330b82 100644
--- a/linux-user/host/s390x/hostdep.h
+++ b/linux-user/host/s390x/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/host/x86_64/hostdep.h b/linux-user/host/x86_64/hostdep.h
index 9dfbf3a..f8cc678 100644
--- a/linux-user/host/x86_64/hostdep.h
+++ b/linux-user/host/x86_64/hostdep.h
@@ -9,6 +9,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef QEMU_HOSTDEP_H
 #define QEMU_HOSTDEP_H
 
diff --git a/linux-user/i386/target_cpu.h b/linux-user/i386/target_cpu.h
index 58f8645..506d230 100644
--- a/linux-user/i386/target_cpu.h
+++ b/linux-user/i386/target_cpu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/i386/target_signal.h b/linux-user/i386/target_signal.h
index 9baf7fb..4019982 100644
--- a/linux-user/i386/target_signal.h
+++ b/linux-user/i386/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/i386/target_structs.h b/linux-user/i386/target_structs.h
index 65f535e..326bb9c 100644
--- a/linux-user/i386/target_structs.h
+++ b/linux-user/i386/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/i386/target_syscall.h b/linux-user/i386/target_syscall.h
index 0ac84dc..aa4817d 100644
--- a/linux-user/i386/target_syscall.h
+++ b/linux-user/i386/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/i386/termbits.h b/linux-user/i386/termbits.h
index e051a3a..c9c6bf9 100644
--- a/linux-user/i386/termbits.h
+++ b/linux-user/i386/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index e672655..a2f5125 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -1,5 +1,7 @@ 
      /* emulated ioctl list */
 
+/* FIXME Does not pass make check-headers, yet! */
+
      IOCTL(TCGETS, IOC_R, MK_PTR(MK_STRUCT(STRUCT_termios)))
      IOCTL(TCSETS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios)))
      IOCTL(TCSETSF, IOC_W, MK_PTR(MK_STRUCT(STRUCT_termios)))
diff --git a/linux-user/linux_loop.h b/linux-user/linux_loop.h
index 8974caa..29f4310 100644
--- a/linux-user/linux_loop.h
+++ b/linux-user/linux_loop.h
@@ -1,4 +1,7 @@ 
 /* Copied from 2.6.25 kernel headers to avoid problems on older hosts.  */
+
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef _LINUX_LOOP_H
 #define _LINUX_LOOP_H
 
diff --git a/linux-user/m68k/target_cpu.h b/linux-user/m68k/target_cpu.h
index bb4d3fa..675693d 100644
--- a/linux-user/m68k/target_cpu.h
+++ b/linux-user/m68k/target_cpu.h
@@ -18,6 +18,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/m68k/target_signal.h b/linux-user/m68k/target_signal.h
index 9deaa89..b644fb6 100644
--- a/linux-user/m68k/target_signal.h
+++ b/linux-user/m68k/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/m68k/target_structs.h b/linux-user/m68k/target_structs.h
index de257c9..b44527e 100644
--- a/linux-user/m68k/target_structs.h
+++ b/linux-user/m68k/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/m68k/target_syscall.h b/linux-user/m68k/target_syscall.h
index 97a4cc0..38764c8 100644
--- a/linux-user/m68k/target_syscall.h
+++ b/linux-user/m68k/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/m68k/termbits.h b/linux-user/m68k/termbits.h
index f7982fb..f054faf 100644
--- a/linux-user/m68k/termbits.h
+++ b/linux-user/m68k/termbits.h
@@ -1,6 +1,8 @@ 
 /* from asm/termbits.h */
 /* NOTE: exactly the same as i386 */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/microblaze/target_cpu.h b/linux-user/microblaze/target_cpu.h
index c6386ea..ee608e5 100644
--- a/linux-user/microblaze/target_cpu.h
+++ b/linux-user/microblaze/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/microblaze/target_signal.h b/linux-user/microblaze/target_signal.h
index acdf3b5..c19cd2d 100644
--- a/linux-user/microblaze/target_signal.h
+++ b/linux-user/microblaze/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/microblaze/target_structs.h b/linux-user/microblaze/target_structs.h
index 325e2f6..0175dbe 100644
--- a/linux-user/microblaze/target_structs.h
+++ b/linux-user/microblaze/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/microblaze/termbits.h b/linux-user/microblaze/termbits.h
index fc82ca0..5aab429 100644
--- a/linux-user/microblaze/termbits.h
+++ b/linux-user/microblaze/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/mips/target_cpu.h b/linux-user/mips/target_cpu.h
index 19b8855..bfb4ed5 100644
--- a/linux-user/mips/target_cpu.h
+++ b/linux-user/mips/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/mips/target_signal.h b/linux-user/mips/target_signal.h
index 460cc9f..39c4a10 100644
--- a/linux-user/mips/target_signal.h
+++ b/linux-user/mips/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/mips/target_structs.h b/linux-user/mips/target_structs.h
index 16021e8..915300c 100644
--- a/linux-user/mips/target_structs.h
+++ b/linux-user/mips/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/mips/target_syscall.h b/linux-user/mips/target_syscall.h
index e8e305c..4b28249 100644
--- a/linux-user/mips/target_syscall.h
+++ b/linux-user/mips/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/mips/termbits.h b/linux-user/mips/termbits.h
index d3a6cf8..ff3e91d 100644
--- a/linux-user/mips/termbits.h
+++ b/linux-user/mips/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 23
 
 struct target_termios {
diff --git a/linux-user/mips64/syscall_nr.h b/linux-user/mips64/syscall_nr.h
index 746cc26..c6b7a06 100644
--- a/linux-user/mips64/syscall_nr.h
+++ b/linux-user/mips64/syscall_nr.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #ifdef TARGET_ABI32
 /*
  * Linux N32 syscalls are in the range from 6000 to 6999.
diff --git a/linux-user/mips64/target_cpu.h b/linux-user/mips64/target_cpu.h
index f16991b..147298d 100644
--- a/linux-user/mips64/target_cpu.h
+++ b/linux-user/mips64/target_cpu.h
@@ -16,4 +16,7 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "../mips/target_cpu.h"
diff --git a/linux-user/mips64/target_signal.h b/linux-user/mips64/target_signal.h
index a2dc514..69e1aca 100644
--- a/linux-user/mips64/target_signal.h
+++ b/linux-user/mips64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/mips64/target_structs.h b/linux-user/mips64/target_structs.h
index a4f619e..7fe2baa 100644
--- a/linux-user/mips64/target_structs.h
+++ b/linux-user/mips64/target_structs.h
@@ -1,2 +1,4 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "../mips/target_structs.h"
 
diff --git a/linux-user/mips64/target_syscall.h b/linux-user/mips64/target_syscall.h
index 5789e86..a66495f 100644
--- a/linux-user/mips64/target_syscall.h
+++ b/linux-user/mips64/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/mips64/termbits.h b/linux-user/mips64/termbits.h
index d3a6cf8..ff3e91d 100644
--- a/linux-user/mips64/termbits.h
+++ b/linux-user/mips64/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 23
 
 struct target_termios {
diff --git a/linux-user/openrisc/target_cpu.h b/linux-user/openrisc/target_cpu.h
index 32a46ac..d09b2f6 100644
--- a/linux-user/openrisc/target_cpu.h
+++ b/linux-user/openrisc/target_cpu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/openrisc/target_signal.h b/linux-user/openrisc/target_signal.h
index f600501..b5e9c76 100644
--- a/linux-user/openrisc/target_signal.h
+++ b/linux-user/openrisc/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/openrisc/target_structs.h b/linux-user/openrisc/target_structs.h
index f4d560f..ea5211a 100644
--- a/linux-user/openrisc/target_structs.h
+++ b/linux-user/openrisc/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/openrisc/target_syscall.h b/linux-user/openrisc/target_syscall.h
index 19aeffc..a9f29a7 100644
--- a/linux-user/openrisc/target_syscall.h
+++ b/linux-user/openrisc/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/openrisc/termbits.h b/linux-user/openrisc/termbits.h
index 373af77..59a2e3a 100644
--- a/linux-user/openrisc/termbits.h
+++ b/linux-user/openrisc/termbits.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 typedef unsigned char   target_openrisc_cc;        /*cc_t*/
 typedef unsigned int    target_openrisc_speed;     /*speed_t*/
 typedef unsigned int    target_openrisc_tcflag;    /*tcflag_t*/
diff --git a/linux-user/ppc/syscall_nr.h b/linux-user/ppc/syscall_nr.h
index 46ed8a6..ceeebf9 100644
--- a/linux-user/ppc/syscall_nr.h
+++ b/linux-user/ppc/syscall_nr.h
@@ -1,6 +1,9 @@ 
 /*
  * This file contains the system call numbers.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #define TARGET_NR_restart_syscall          0
 #define TARGET_NR_exit                     1
 #define TARGET_NR_fork                     2
diff --git a/linux-user/ppc/target_cpu.h b/linux-user/ppc/target_cpu.h
index 26f4ba2..38dcf19 100644
--- a/linux-user/ppc/target_cpu.h
+++ b/linux-user/ppc/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/ppc/target_signal.h b/linux-user/ppc/target_signal.h
index 4f01dd4..b6dd0e7 100644
--- a/linux-user/ppc/target_signal.h
+++ b/linux-user/ppc/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/ppc/target_structs.h b/linux-user/ppc/target_structs.h
index 2b87613..5bb5739 100644
--- a/linux-user/ppc/target_structs.h
+++ b/linux-user/ppc/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/ppc/target_syscall.h b/linux-user/ppc/target_syscall.h
index 7ca83c2..7c40f0e 100644
--- a/linux-user/ppc/target_syscall.h
+++ b/linux-user/ppc/target_syscall.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/ppc/termbits.h b/linux-user/ppc/termbits.h
index 73e7151..a3fddf6 100644
--- a/linux-user/ppc/termbits.h
+++ b/linux-user/ppc/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
index e8a5aed..8b7b65e 100644
--- a/linux-user/qemu.h
+++ b/linux-user/qemu.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_H
 #define QEMU_H
 
diff --git a/linux-user/s390x/target_cpu.h b/linux-user/s390x/target_cpu.h
index f10abe8..c2f8d87 100644
--- a/linux-user/s390x/target_cpu.h
+++ b/linux-user/s390x/target_cpu.h
@@ -19,6 +19,9 @@ 
  * You should have received a copy of the GNU (Lesser) General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/s390x/target_signal.h b/linux-user/s390x/target_signal.h
index a6fb287..c175f77 100644
--- a/linux-user/s390x/target_signal.h
+++ b/linux-user/s390x/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/s390x/target_structs.h b/linux-user/s390x/target_structs.h
index 6b6f5b5..bead180 100644
--- a/linux-user/s390x/target_structs.h
+++ b/linux-user/s390x/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/s390x/target_syscall.h b/linux-user/s390x/target_syscall.h
index 02061ef..d0fa323 100644
--- a/linux-user/s390x/target_syscall.h
+++ b/linux-user/s390x/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/s390x/termbits.h b/linux-user/s390x/termbits.h
index 2a78a05..9beb484 100644
--- a/linux-user/s390x/termbits.h
+++ b/linux-user/s390x/termbits.h
@@ -6,6 +6,8 @@ 
  *  Derived from "include/asm-i386/termbits.h"
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 struct target_termios {
     unsigned int c_iflag;		/* input mode flags */
diff --git a/linux-user/sh4/target_cpu.h b/linux-user/sh4/target_cpu.h
index 141856f..3e0f903 100644
--- a/linux-user/sh4/target_cpu.h
+++ b/linux-user/sh4/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/sh4/target_signal.h b/linux-user/sh4/target_signal.h
index f9911aa..d2b58ec 100644
--- a/linux-user/sh4/target_signal.h
+++ b/linux-user/sh4/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/sh4/target_structs.h b/linux-user/sh4/target_structs.h
index 32b235e..db40799 100644
--- a/linux-user/sh4/target_structs.h
+++ b/linux-user/sh4/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/sh4/termbits.h b/linux-user/sh4/termbits.h
index 2ff774f..afb80ca 100644
--- a/linux-user/sh4/termbits.h
+++ b/linux-user/sh4/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/socket.h b/linux-user/socket.h
index 4dacae6..6f07919 100644
--- a/linux-user/socket.h
+++ b/linux-user/socket.h
@@ -1,3 +1,4 @@ 
+/* NOTE: May only be included into target-dependent code */
 
 #if defined(TARGET_MIPS)
     /* MIPS special values for constants */
diff --git a/linux-user/sparc/target_cpu.h b/linux-user/sparc/target_cpu.h
index 4944d46..5f4f636 100644
--- a/linux-user/sparc/target_cpu.h
+++ b/linux-user/sparc/target_cpu.h
@@ -17,6 +17,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/sparc/target_signal.h b/linux-user/sparc/target_signal.h
index 2df38c8..8bc04d7 100644
--- a/linux-user/sparc/target_signal.h
+++ b/linux-user/sparc/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/sparc/target_structs.h b/linux-user/sparc/target_structs.h
index c139e09..42b8147 100644
--- a/linux-user/sparc/target_structs.h
+++ b/linux-user/sparc/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/sparc/target_syscall.h b/linux-user/sparc/target_syscall.h
index a73fa6d..731ecc2 100644
--- a/linux-user/sparc/target_syscall.h
+++ b/linux-user/sparc/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/sparc/termbits.h b/linux-user/sparc/termbits.h
index 691600d..0ad14dd 100644
--- a/linux-user/sparc/termbits.h
+++ b/linux-user/sparc/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/sparc64/target_cpu.h b/linux-user/sparc64/target_cpu.h
index b22263d..9df1233 100644
--- a/linux-user/sparc64/target_cpu.h
+++ b/linux-user/sparc64/target_cpu.h
@@ -1 +1,3 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "../sparc/target_cpu.h"
diff --git a/linux-user/sparc64/target_signal.h b/linux-user/sparc64/target_signal.h
index 2df38c8..8bc04d7 100644
--- a/linux-user/sparc64/target_signal.h
+++ b/linux-user/sparc64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/sparc64/target_structs.h b/linux-user/sparc64/target_structs.h
index fc17290..f7b3ab1 100644
--- a/linux-user/sparc64/target_structs.h
+++ b/linux-user/sparc64/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/sparc64/target_syscall.h b/linux-user/sparc64/target_syscall.h
index eb827fc..5d61655 100644
--- a/linux-user/sparc64/target_syscall.h
+++ b/linux-user/sparc64/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/sparc64/termbits.h b/linux-user/sparc64/termbits.h
index 691600d..0ad14dd 100644
--- a/linux-user/sparc64/termbits.h
+++ b/linux-user/sparc64/termbits.h
@@ -1,5 +1,7 @@ 
 /* from asm/termbits.h */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 struct target_termios {
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index dce1bcc..2d99948 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1,5 +1,7 @@ 
 /* common syscall defines for all architectures */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /* Note: although the syscall numbers change between architectures,
    most of them stay the same, so we handle it by putting ifdefs if
    necessary */
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 1fd4ee0..4e7e75c 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 STRUCT_SPECIAL(termios)
 
 STRUCT(winsize,
diff --git a/linux-user/tilegx/target_cpu.h b/linux-user/tilegx/target_cpu.h
index c96e81d..04d668b 100644
--- a/linux-user/tilegx/target_cpu.h
+++ b/linux-user/tilegx/target_cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/tilegx/target_signal.h b/linux-user/tilegx/target_signal.h
index fcf1040..00d3470 100644
--- a/linux-user/tilegx/target_signal.h
+++ b/linux-user/tilegx/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/tilegx/target_structs.h b/linux-user/tilegx/target_structs.h
index 7d3ff78..5428fa3 100644
--- a/linux-user/tilegx/target_structs.h
+++ b/linux-user/tilegx/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/tilegx/target_syscall.h b/linux-user/tilegx/target_syscall.h
index a938d4e..992f04a 100644
--- a/linux-user/tilegx/target_syscall.h
+++ b/linux-user/tilegx/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TILEGX_SYSCALLS_H
 #define TILEGX_SYSCALLS_H
 
diff --git a/linux-user/uname.h b/linux-user/uname.h
index cc62e76..ec3b54c 100644
--- a/linux-user/uname.h
+++ b/linux-user/uname.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers with CONFIG_WIN32, yet! */
+
 #ifndef UNAME_H
 #define UNAME_H 1
 
diff --git a/linux-user/unicore32/target_cpu.h b/linux-user/unicore32/target_cpu.h
index fb79087..0a338b1 100644
--- a/linux-user/unicore32/target_cpu.h
+++ b/linux-user/unicore32/target_cpu.h
@@ -8,6 +8,9 @@ 
  * published by the Free Software Foundation, or (at your option) any
  * later version. See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_CPU_H
 #define TARGET_CPU_H
 
diff --git a/linux-user/unicore32/target_signal.h b/linux-user/unicore32/target_signal.h
index 7c44238..be93f25 100644
--- a/linux-user/unicore32/target_signal.h
+++ b/linux-user/unicore32/target_signal.h
@@ -5,6 +5,9 @@ 
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/unicore32/target_structs.h b/linux-user/unicore32/target_structs.h
index 7893695..4c7ff26 100644
--- a/linux-user/unicore32/target_structs.h
+++ b/linux-user/unicore32/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/unicore32/target_syscall.h b/linux-user/unicore32/target_syscall.h
index 385a975..e712ce4 100644
--- a/linux-user/unicore32/target_syscall.h
+++ b/linux-user/unicore32/target_syscall.h
@@ -5,6 +5,9 @@ 
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __UC32_SYSCALL_H__
 #define __UC32_SYSCALL_H__
 struct target_pt_regs {
diff --git a/linux-user/unicore32/termbits.h b/linux-user/unicore32/termbits.h
index a5fcd64..8bc7223 100644
--- a/linux-user/unicore32/termbits.h
+++ b/linux-user/unicore32/termbits.h
@@ -1,2 +1,5 @@ 
 /* NOTE: exactly the same as i386 */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "../i386/termbits.h"
diff --git a/linux-user/x86_64/target_cpu.h b/linux-user/x86_64/target_cpu.h
index 9ec7cbb..81d1d56 100644
--- a/linux-user/x86_64/target_cpu.h
+++ b/linux-user/x86_64/target_cpu.h
@@ -1 +1,3 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "../i386/target_cpu.h"
diff --git a/linux-user/x86_64/target_signal.h b/linux-user/x86_64/target_signal.h
index 9baf7fb..4019982 100644
--- a/linux-user/x86_64/target_signal.h
+++ b/linux-user/x86_64/target_signal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SIGNAL_H
 #define TARGET_SIGNAL_H
 
diff --git a/linux-user/x86_64/target_structs.h b/linux-user/x86_64/target_structs.h
index d934056..a5e598d 100644
--- a/linux-user/x86_64/target_structs.h
+++ b/linux-user/x86_64/target_structs.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_STRUCTS_H
 #define TARGET_STRUCTS_H
 
diff --git a/linux-user/x86_64/target_syscall.h b/linux-user/x86_64/target_syscall.h
index feecd32..d7a9400 100644
--- a/linux-user/x86_64/target_syscall.h
+++ b/linux-user/x86_64/target_syscall.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_SYSCALL_H
 #define TARGET_SYSCALL_H
 
diff --git a/linux-user/x86_64/termbits.h b/linux-user/x86_64/termbits.h
index 1c3445c..7317eb7 100644
--- a/linux-user/x86_64/termbits.h
+++ b/linux-user/x86_64/termbits.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define TARGET_NCCS 19
 
 typedef unsigned char	target_cc_t;
diff --git a/qemu-options-wrapper.h b/qemu-options-wrapper.h
index 13bfea0..cfc7c1c 100644
--- a/qemu-options-wrapper.h
+++ b/qemu-options-wrapper.h
@@ -1,3 +1,4 @@ 
+/* FIXME Does not pass make check-headers, yet! */
 
 #if defined(QEMU_OPTIONS_GENERATE_ENUM)
 
diff --git a/qga/guest-agent-core.h b/qga/guest-agent-core.h
index 0a49516..7070477 100644
--- a/qga/guest-agent-core.h
+++ b/qga/guest-agent-core.h
@@ -10,6 +10,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "qapi/qmp/dispatch.h"
 #include "qemu-common.h"
 #include "qga-qmp-commands.h"
diff --git a/qga/service-win32.h b/qga/service-win32.h
index 3b9e870..a4424b7 100644
--- a/qga/service-win32.h
+++ b/qga/service-win32.h
@@ -10,6 +10,9 @@ 
  * This work is licensed under the terms of the GNU GPL, version 2 or later.
  * See the COPYING file in the top-level directory.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QGA_SERVICE_H
 #define QGA_SERVICE_H
 
diff --git a/qga/vss-win32/requester.h b/qga/vss-win32/requester.h
index 2a39d73..7f37d44 100644
--- a/qga/vss-win32/requester.h
+++ b/qga/vss-win32/requester.h
@@ -10,6 +10,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef VSS_WIN32_REQUESTER_H
 #define VSS_WIN32_REQUESTER_H
 
diff --git a/qga/vss-win32/vss-common.h b/qga/vss-win32/vss-common.h
index 91dae0c..74d19c4 100644
--- a/qga/vss-win32/vss-common.h
+++ b/qga/vss-win32/vss-common.h
@@ -10,6 +10,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef VSS_WIN32_H
 #define VSS_WIN32_H
 
diff --git a/replay/replay-internal.h b/replay/replay-internal.h
index efbf14c..b64a73d 100644
--- a/replay/replay-internal.h
+++ b/replay/replay-internal.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef REPLAY_INTERNAL_H
 #define REPLAY_INTERNAL_H
 
diff --git a/scripts/tracetool/format/tcg_h.py b/scripts/tracetool/format/tcg_h.py
index e2331f2..77e10d9 100644
--- a/scripts/tracetool/format/tcg_h.py
+++ b/scripts/tracetool/format/tcg_h.py
@@ -31,6 +31,8 @@  def generate(events, backend):
     out('/* This file is autogenerated by tracetool, do not edit. */',
         '/* You must include this file after the inclusion of helper.h */',
         '',
+        '/* FIXME Does not pass make check-headers, yet! */',
+        '',
         '#ifndef TRACE__GENERATED_TCG_TRACERS_H',
         '#define TRACE__GENERATED_TCG_TRACERS_H',
         '',
diff --git a/slirp/bootp.h b/slirp/bootp.h
index ec3b687..1fbb96f 100644
--- a/slirp/bootp.h
+++ b/slirp/bootp.h
@@ -1,4 +1,7 @@ 
 /* bootp/dhcp defines */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SLIRP_BOOTP_H
 #define SLIRP_BOOTP_H 1
 
diff --git a/slirp/ip.h b/slirp/ip.h
index e2ee5e3..a40449e 100644
--- a/slirp/ip.h
+++ b/slirp/ip.h
@@ -30,6 +30,8 @@ 
  * ip.h,v 1.3 1994/08/21 05:27:30 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _IP_H_
 #define _IP_H_
 
diff --git a/slirp/ip6_icmp.h b/slirp/ip6_icmp.h
index 9460bf8..036bfea 100644
--- a/slirp/ip6_icmp.h
+++ b/slirp/ip6_icmp.h
@@ -3,6 +3,8 @@ 
  * Guillaume Subiron, Yann Bordenave, Serigne Modou Wagne.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SLIRP_NETINET_ICMP6_H_
 #define SLIRP_NETINET_ICMP6_H_
 
diff --git a/slirp/ip_icmp.h b/slirp/ip_icmp.h
index 846761d..3fb60c9 100644
--- a/slirp/ip_icmp.h
+++ b/slirp/ip_icmp.h
@@ -30,6 +30,8 @@ 
  * ip_icmp.h,v 1.4 1995/05/30 08:09:43 rgrimes Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _NETINET_IP_ICMP_H_
 #define _NETINET_IP_ICMP_H_
 
diff --git a/slirp/main.h b/slirp/main.h
index f2e58cf..3510a98 100644
--- a/slirp/main.h
+++ b/slirp/main.h
@@ -4,6 +4,9 @@ 
  * Please read the file COPYRIGHT for the
  * terms and conditions of the copyright.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SLIRP_MAIN_H
 #define SLIRP_MAIN_H 1
 
diff --git a/slirp/mbuf.h b/slirp/mbuf.h
index 36fb814..d7e4cb9 100644
--- a/slirp/mbuf.h
+++ b/slirp/mbuf.h
@@ -30,6 +30,8 @@ 
  * mbuf.h,v 1.9 1994/11/14 13:54:20 bde Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _MBUF_H_
 #define _MBUF_H_
 
diff --git a/slirp/misc.h b/slirp/misc.h
index 0d0c059..9950642 100644
--- a/slirp/misc.h
+++ b/slirp/misc.h
@@ -5,6 +5,8 @@ 
  * terms and conditions of the copyright.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _MISC_H_
 #define _MISC_H_
 
diff --git a/slirp/sbuf.h b/slirp/sbuf.h
index 4f22e7c..67ed1a1 100644
--- a/slirp/sbuf.h
+++ b/slirp/sbuf.h
@@ -5,6 +5,8 @@ 
  * terms and conditions of the copyright.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _SBUF_H_
 #define _SBUF_H_
 
diff --git a/slirp/socket.h b/slirp/socket.h
index b602e69..38289d6 100644
--- a/slirp/socket.h
+++ b/slirp/socket.h
@@ -5,6 +5,8 @@ 
  * terms and conditions of the copyright.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _SLIRP_SOCKET_H_
 #define _SLIRP_SOCKET_H_
 
diff --git a/slirp/tcp.h b/slirp/tcp.h
index 61befcd..7c279fc 100644
--- a/slirp/tcp.h
+++ b/slirp/tcp.h
@@ -30,6 +30,8 @@ 
  * tcp.h,v 1.3 1994/08/21 05:27:34 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _TCP_H_
 #define _TCP_H_
 
diff --git a/slirp/tcp_timer.h b/slirp/tcp_timer.h
index ff17914..0495b29 100644
--- a/slirp/tcp_timer.h
+++ b/slirp/tcp_timer.h
@@ -30,6 +30,8 @@ 
  * tcp_timer.h,v 1.4 1994/08/21 05:27:38 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _TCP_TIMER_H_
 #define _TCP_TIMER_H_
 
diff --git a/slirp/tcp_var.h b/slirp/tcp_var.h
index 004193f..6ff42f4 100644
--- a/slirp/tcp_var.h
+++ b/slirp/tcp_var.h
@@ -30,6 +30,8 @@ 
  * tcp_var.h,v 1.3 1994/08/21 05:27:39 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _TCP_VAR_H_
 #define _TCP_VAR_H_
 
diff --git a/slirp/tcpip.h b/slirp/tcpip.h
index 124b4a9..7a9aa07 100644
--- a/slirp/tcpip.h
+++ b/slirp/tcpip.h
@@ -30,6 +30,8 @@ 
  * tcpip.h,v 1.3 1994/08/21 05:27:40 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _TCPIP_H_
 #define _TCPIP_H_
 
diff --git a/slirp/tftp.h b/slirp/tftp.h
index 1cb1adf..781e1fb 100644
--- a/slirp/tftp.h
+++ b/slirp/tftp.h
@@ -1,4 +1,7 @@ 
 /* tftp defines */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SLIRP_TFTP_H
 #define SLIRP_TFTP_H 1
 
diff --git a/slirp/udp.h b/slirp/udp.h
index 10cc780..37f34e6 100644
--- a/slirp/udp.h
+++ b/slirp/udp.h
@@ -30,6 +30,8 @@ 
  * udp.h,v 1.3 1994/08/21 05:27:41 paul Exp
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef _UDP_H_
 #define _UDP_H_
 
diff --git a/softmmu_template.h b/softmmu_template.h
index 208f808..0cf647a 100644
--- a/softmmu_template.h
+++ b/softmmu_template.h
@@ -21,6 +21,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #include "qemu/timer.h"
 #include "exec/address-spaces.h"
 #include "exec/memory.h"
diff --git a/target-alpha/cpu.h b/target-alpha/cpu.h
index e71ea70..25a1e97 100644
--- a/target-alpha/cpu.h
+++ b/target-alpha/cpu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined (__CPU_ALPHA_H__)
 #define __CPU_ALPHA_H__
 
diff --git a/target-alpha/helper.h b/target-alpha/helper.h
index c3d8a3e..fd1748d 100644
--- a/target-alpha/helper.h
+++ b/target-alpha/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_3(excp, noreturn, env, int, int)
 DEF_HELPER_FLAGS_1(load_pcc, TCG_CALL_NO_RWG_SE, i64, env)
 
diff --git a/target-arm/arm_ldst.h b/target-arm/arm_ldst.h
index a76d89f..e0eff7e 100644
--- a/target-arm/arm_ldst.h
+++ b/target-arm/arm_ldst.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef ARM_LDST_H
 #define ARM_LDST_H
 
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index 7938ddc..8f33ad1 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_ARM_H
 #define CPU_ARM_H
 
diff --git a/target-arm/helper-a64.h b/target-arm/helper-a64.h
index 1d3d10f..54ca373 100644
--- a/target-arm/helper-a64.h
+++ b/target-arm/helper-a64.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_FLAGS_2(udiv64, TCG_CALL_NO_RWG_SE, i64, i64, i64)
 DEF_HELPER_FLAGS_2(sdiv64, TCG_CALL_NO_RWG_SE, s64, s64, s64)
 DEF_HELPER_FLAGS_1(clz64, TCG_CALL_NO_RWG_SE, i64, i64)
diff --git a/target-arm/helper.h b/target-arm/helper.h
index 84aa637..b8fcc64 100644
--- a/target-arm/helper.h
+++ b/target-arm/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_FLAGS_1(clz, TCG_CALL_NO_RWG_SE, i32, i32)
 DEF_HELPER_FLAGS_1(sxtb16, TCG_CALL_NO_RWG_SE, i32, i32)
 DEF_HELPER_FLAGS_1(uxtb16, TCG_CALL_NO_RWG_SE, i32, i32)
diff --git a/target-arm/internals.h b/target-arm/internals.h
index 466be0b..5a77ccc 100644
--- a/target-arm/internals.h
+++ b/target-arm/internals.h
@@ -22,6 +22,8 @@ 
  * private to it and not required by the rest of QEMU.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_ARM_INTERNALS_H
 #define TARGET_ARM_INTERNALS_H
 
diff --git a/target-arm/kvm_arm.h b/target-arm/kvm_arm.h
index a419368..d5977c2 100644
--- a/target-arm/kvm_arm.h
+++ b/target-arm/kvm_arm.h
@@ -8,6 +8,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_KVM_ARM_H
 #define QEMU_KVM_ARM_H
 
diff --git a/target-arm/op_addsub.h b/target-arm/op_addsub.h
index ca4a189..6ad54b4 100644
--- a/target-arm/op_addsub.h
+++ b/target-arm/op_addsub.h
@@ -7,6 +7,8 @@ 
  * This code is licensed under the GPL.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifdef ARITH_GE
 #define GE_ARG , void *gep
 #define DECLARE_GE uint32_t ge = 0
diff --git a/target-arm/translate.h b/target-arm/translate.h
index dbd7ac8..9343236 100644
--- a/target-arm/translate.h
+++ b/target-arm/translate.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TARGET_ARM_TRANSLATE_H
 #define TARGET_ARM_TRANSLATE_H
 
diff --git a/target-cris/cpu.h b/target-cris/cpu.h
index d8c47a6..b7b4ef6 100644
--- a/target-cris/cpu.h
+++ b/target-cris/cpu.h
@@ -17,6 +17,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_CRIS_H
 #define CPU_CRIS_H
 
diff --git a/target-cris/helper.h b/target-cris/helper.h
index ff35956..d9f1542 100644
--- a/target-cris/helper.h
+++ b/target-cris/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(raise_exception, void, env, i32)
 DEF_HELPER_2(tlb_flush_pid, void, env, i32)
 DEF_HELPER_2(spc_write, void, env, i32)
diff --git a/target-cris/mmu.h b/target-cris/mmu.h
index 8e249e8..441685f 100644
--- a/target-cris/mmu.h
+++ b/target-cris/mmu.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define CRIS_MMU_ERR_EXEC  0
 #define CRIS_MMU_ERR_READ  1
 #define CRIS_MMU_ERR_WRITE 2
diff --git a/target-i386/cc_helper_template.h b/target-i386/cc_helper_template.h
index 607311f..5df5549 100644
--- a/target-i386/cc_helper_template.h
+++ b/target-i386/cc_helper_template.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define DATA_BITS (1 << (3 + SHIFT))
 
 #if DATA_BITS == 8
diff --git a/target-i386/cpu-qom.h b/target-i386/cpu-qom.h
index 5dde658..4242625 100644
--- a/target-i386/cpu-qom.h
+++ b/target-i386/cpu-qom.h
@@ -17,6 +17,9 @@ 
  * License along with this library; if not, see
  * <http://www.gnu.org/licenses/lgpl-2.1.html>
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef QEMU_I386_CPU_QOM_H
 #define QEMU_I386_CPU_QOM_H
 
diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index d9ab884..19c979b 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_I386_H
 #define CPU_I386_H
 
diff --git a/target-i386/helper.h b/target-i386/helper.h
index 1320edc..d16a681 100644
--- a/target-i386/helper.h
+++ b/target-i386/helper.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 DEF_HELPER_FLAGS_4(cc_compute_all, TCG_CALL_NO_RWG_SE, tl, tl, tl, tl, int)
 DEF_HELPER_FLAGS_4(cc_compute_c, TCG_CALL_NO_RWG_SE, tl, tl, tl, tl, int)
 
diff --git a/target-i386/hyperv.h b/target-i386/hyperv.h
index b26201f..d97e5fa 100644
--- a/target-i386/hyperv.h
+++ b/target-i386/hyperv.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef HYPERV_I386_H
 #define HYPERV_I386_H
 
diff --git a/target-i386/kvm_i386.h b/target-i386/kvm_i386.h
index 42b00af..0978f8e 100644
--- a/target-i386/kvm_i386.h
+++ b/target-i386/kvm_i386.h
@@ -8,6 +8,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_KVM_I386_H
 #define QEMU_KVM_I386_H
 
diff --git a/target-i386/ops_sse.h b/target-i386/ops_sse.h
index 7a98f53..ced120f 100644
--- a/target-i386/ops_sse.h
+++ b/target-i386/ops_sse.h
@@ -18,6 +18,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #include "crypto/aes.h"
 
 #if SHIFT == 0
diff --git a/target-i386/ops_sse_header.h b/target-i386/ops_sse_header.h
index 64c5857..eb2b173 100644
--- a/target-i386/ops_sse_header.h
+++ b/target-i386/ops_sse_header.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #if SHIFT == 0
 #define Reg MMXReg
 #define SUFFIX _mmx
diff --git a/target-i386/shift_helper_template.h b/target-i386/shift_helper_template.h
index cf91a2d..be7e135 100644
--- a/target-i386/shift_helper_template.h
+++ b/target-i386/shift_helper_template.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define DATA_BITS (1 << (3 + SHIFT))
 #define SHIFT_MASK (DATA_BITS - 1)
 #if DATA_BITS <= 32
diff --git a/target-lm32/cpu.h b/target-lm32/cpu.h
index 62880f7..6d24353 100644
--- a/target-lm32/cpu.h
+++ b/target-lm32/cpu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_LM32_H
 #define CPU_LM32_H
 
diff --git a/target-lm32/helper.h b/target-lm32/helper.h
index 445578c..ba7ce5a 100644
--- a/target-lm32/helper.h
+++ b/target-lm32/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(raise_exception, void, env, i32)
 DEF_HELPER_1(hlt, void, env)
 DEF_HELPER_3(wcsr_bp, void, env, i32, i32)
diff --git a/target-m68k/cpu.h b/target-m68k/cpu.h
index 008a057..b412b68 100644
--- a/target-m68k/cpu.h
+++ b/target-m68k/cpu.h
@@ -17,6 +17,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_M68K_H
 #define CPU_M68K_H
 
diff --git a/target-m68k/helper.h b/target-m68k/helper.h
index f4e5fdf..3502cd4 100644
--- a/target-m68k/helper.h
+++ b/target-m68k/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_1(bitrev, i32, i32)
 DEF_HELPER_1(ff1, i32, i32)
 DEF_HELPER_2(sats, i32, i32, i32)
diff --git a/target-microblaze/cpu.h b/target-microblaze/cpu.h
index d17cf1e..44d47bc 100644
--- a/target-microblaze/cpu.h
+++ b/target-microblaze/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_MICROBLAZE_H
 #define CPU_MICROBLAZE_H
 
diff --git a/target-microblaze/helper.h b/target-microblaze/helper.h
index bd13826..4537ff2 100644
--- a/target-microblaze/helper.h
+++ b/target-microblaze/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(raise_exception, void, env, i32)
 DEF_HELPER_1(debug, void, env)
 DEF_HELPER_FLAGS_3(carry, TCG_CALL_NO_RWG_SE, i32, i32, i32, i32)
diff --git a/target-microblaze/mmu.h b/target-microblaze/mmu.h
index 3b7a998..d1a1f50 100644
--- a/target-microblaze/mmu.h
+++ b/target-microblaze/mmu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define MMU_R_PID    0
 #define MMU_R_ZPR    1
 #define MMU_R_TLBX   2
diff --git a/target-mips/cpu-qom.h b/target-mips/cpu-qom.h
index 3f5bf23..7582891 100644
--- a/target-mips/cpu-qom.h
+++ b/target-mips/cpu-qom.h
@@ -17,6 +17,9 @@ 
  * License along with this library; if not, see
  * <http://www.gnu.org/licenses/lgpl-2.1.html>
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef QEMU_MIPS_CPU_QOM_H
 #define QEMU_MIPS_CPU_QOM_H
 
diff --git a/target-mips/cpu.h b/target-mips/cpu.h
index c2da5ec..5ba7d2c 100644
--- a/target-mips/cpu.h
+++ b/target-mips/cpu.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined (__MIPS_CPU_H__)
 #define __MIPS_CPU_H__
 
diff --git a/target-mips/helper.h b/target-mips/helper.h
index 666936c..dd0dd19 100644
--- a/target-mips/helper.h
+++ b/target-mips/helper.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 DEF_HELPER_3(raise_exception_err, noreturn, env, i32, int)
 DEF_HELPER_2(raise_exception, noreturn, env, i32)
 DEF_HELPER_1(raise_exception_debug, noreturn, env)
diff --git a/target-mips/kvm_mips.h b/target-mips/kvm_mips.h
index 54f5965..8146fb2 100644
--- a/target-mips/kvm_mips.h
+++ b/target-mips/kvm_mips.h
@@ -7,7 +7,9 @@ 
  *
  * Copyright (C) 2012-2014 Imagination Technologies Ltd.
  * Authors: Sanjay Lal <sanjayl@kymasys.com>
-*/
+ */
+
+/* FIXME Does not pass make check-headers, yet! */
 
 #ifndef __KVM_MIPS_H__
 #define __KVM_MIPS_H__
diff --git a/target-mips/mips-defs.h b/target-mips/mips-defs.h
index 53b185e..558ba4d 100644
--- a/target-mips/mips-defs.h
+++ b/target-mips/mips-defs.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined (__QEMU_MIPS_DEFS_H__)
 #define __QEMU_MIPS_DEFS_H__
 
diff --git a/target-moxie/cpu.h b/target-moxie/cpu.h
index c10898e..51ebe2b 100644
--- a/target-moxie/cpu.h
+++ b/target-moxie/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef _CPU_MOXIE_H
 #define _CPU_MOXIE_H
 
diff --git a/target-moxie/helper.h b/target-moxie/helper.h
index d94ef7a..88d9744 100644
--- a/target-moxie/helper.h
+++ b/target-moxie/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(raise_exception, void, env, int)
 DEF_HELPER_1(debug, void, env)
 
diff --git a/target-moxie/machine.h b/target-moxie/machine.h
index a1b7290..e8ab248 100644
--- a/target-moxie/machine.h
+++ b/target-moxie/machine.h
@@ -1 +1,3 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 extern const VMStateDescription vmstate_moxie_cpu;
diff --git a/target-moxie/mmu.h b/target-moxie/mmu.h
index 284a44d..874d4a4 100644
--- a/target-moxie/mmu.h
+++ b/target-moxie/mmu.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define MOXIE_MMU_ERR_EXEC  0
 #define MOXIE_MMU_ERR_READ  1
 #define MOXIE_MMU_ERR_WRITE 2
diff --git a/target-openrisc/cpu.h b/target-openrisc/cpu.h
index 810a280..cb3712f 100644
--- a/target-openrisc/cpu.h
+++ b/target-openrisc/cpu.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_OPENRISC_H
 #define CPU_OPENRISC_H
 
diff --git a/target-openrisc/exception.h b/target-openrisc/exception.h
index 4b64430..46b3527 100644
--- a/target-openrisc/exception.h
+++ b/target-openrisc/exception.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_OPENRISC_EXCP_H
 #define QEMU_OPENRISC_EXCP_H
 
diff --git a/target-openrisc/helper.h b/target-openrisc/helper.h
index f53fa21..0fe71e6 100644
--- a/target-openrisc/helper.h
+++ b/target-openrisc/helper.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /* exception */
 DEF_HELPER_FLAGS_2(exception, 0, void, env, i32)
 
diff --git a/target-ppc/cpu-models.h b/target-ppc/cpu-models.h
index f21a44c..18c235b 100644
--- a/target-ppc/cpu-models.h
+++ b/target-ppc/cpu-models.h
@@ -18,6 +18,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_PPC_CPU_MODELS_H
 #define TARGET_PPC_CPU_MODELS_H
 
diff --git a/target-ppc/cpu-qom.h b/target-ppc/cpu-qom.h
index 0fad2de..50a8f3e 100644
--- a/target-ppc/cpu-qom.h
+++ b/target-ppc/cpu-qom.h
@@ -17,6 +17,9 @@ 
  * License along with this library; if not, see
  * <http://www.gnu.org/licenses/lgpl-2.1.html>
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef QEMU_PPC_CPU_QOM_H
 #define QEMU_PPC_CPU_QOM_H
 
diff --git a/target-ppc/cpu.h b/target-ppc/cpu.h
index b1354a4..d62827e 100644
--- a/target-ppc/cpu.h
+++ b/target-ppc/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined (__CPU_PPC_H__)
 #define __CPU_PPC_H__
 
diff --git a/target-ppc/helper.h b/target-ppc/helper.h
index 5056ac2..c9d1e6b 100644
--- a/target-ppc/helper.h
+++ b/target-ppc/helper.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 DEF_HELPER_3(raise_exception_err, void, env, i32, i32)
 DEF_HELPER_2(raise_exception, void, env, i32)
 DEF_HELPER_4(tw, void, env, tl, tl, i32)
diff --git a/target-ppc/helper_regs.h b/target-ppc/helper_regs.h
index 8fc0934..1d2889f 100644
--- a/target-ppc/helper_regs.h
+++ b/target-ppc/helper_regs.h
@@ -17,6 +17,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined(__HELPER_REGS_H__)
 #define __HELPER_REGS_H__
 
diff --git a/target-ppc/kvm_ppc.h b/target-ppc/kvm_ppc.h
index 20bfb59..1fe846d 100644
--- a/target-ppc/kvm_ppc.h
+++ b/target-ppc/kvm_ppc.h
@@ -6,6 +6,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __KVM_PPC_H__
 #define __KVM_PPC_H__
 
diff --git a/target-ppc/mmu-hash32.h b/target-ppc/mmu-hash32.h
index aaceacd..a621fb9 100644
--- a/target-ppc/mmu-hash32.h
+++ b/target-ppc/mmu-hash32.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if !defined (__MMU_HASH32_H__)
 #define __MMU_HASH32_H__
 
diff --git a/target-ppc/mmu-hash64.h b/target-ppc/mmu-hash64.h
index 6423b9f..62869b6 100644
--- a/target-ppc/mmu-hash64.h
+++ b/target-ppc/mmu-hash64.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined (__MMU_HASH64_H__)
 #define __MMU_HASH64_H__
 
diff --git a/target-s390x/cpu.h b/target-s390x/cpu.h
index bd6b2e5..9baa83c 100644
--- a/target-s390x/cpu.h
+++ b/target-s390x/cpu.h
@@ -19,6 +19,9 @@ 
  * You should have received a copy of the GNU (Lesser) General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_S390X_H
 #define CPU_S390X_H
 
diff --git a/target-s390x/helper.h b/target-s390x/helper.h
index 207a6e7..c8810fc 100644
--- a/target-s390x/helper.h
+++ b/target-s390x/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(exception, noreturn, env, i32)
 DEF_HELPER_FLAGS_4(nc, TCG_CALL_NO_WG, i32, env, i32, i64, i64)
 DEF_HELPER_FLAGS_4(oc, TCG_CALL_NO_WG, i32, env, i32, i64, i64)
diff --git a/target-sh4/cpu.h b/target-sh4/cpu.h
index 3f5c689..dcaffe2 100644
--- a/target-sh4/cpu.h
+++ b/target-sh4/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef _CPU_SH4_H
 #define _CPU_SH4_H
 
diff --git a/target-sh4/helper.h b/target-sh4/helper.h
index dce859c..d4f87ee 100644
--- a/target-sh4/helper.h
+++ b/target-sh4/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_1(ldtlb, void, env)
 DEF_HELPER_1(raise_illegal_instruction, noreturn, env)
 DEF_HELPER_1(raise_slot_illegal_instruction, noreturn, env)
diff --git a/target-sparc/cpu-qom.h b/target-sparc/cpu-qom.h
index f63af72..30d112c 100644
--- a/target-sparc/cpu-qom.h
+++ b/target-sparc/cpu-qom.h
@@ -17,6 +17,9 @@ 
  * License along with this library; if not, see
  * <http://www.gnu.org/licenses/lgpl-2.1.html>
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef QEMU_SPARC_CPU_QOM_H
 #define QEMU_SPARC_CPU_QOM_H
 
diff --git a/target-sparc/cpu.h b/target-sparc/cpu.h
index ba37f4b..be2b24a 100644
--- a/target-sparc/cpu.h
+++ b/target-sparc/cpu.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_SPARC_H
 #define CPU_SPARC_H
 
diff --git a/target-sparc/helper.h b/target-sparc/helper.h
index 4374f0d..dfd06dc 100644
--- a/target-sparc/helper.h
+++ b/target-sparc/helper.h
@@ -1,3 +1,5 @@ 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef TARGET_SPARC64
 DEF_HELPER_1(rett, void, env)
 DEF_HELPER_2(wrpsr, void, env, tl)
diff --git a/target-tilegx/cpu.h b/target-tilegx/cpu.h
index b9b588d..0e91000 100644
--- a/target-tilegx/cpu.h
+++ b/target-tilegx/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_TILEGX_H
 #define CPU_TILEGX_H
 
diff --git a/target-tilegx/helper.h b/target-tilegx/helper.h
index 9281d0f..8b060c9 100644
--- a/target-tilegx/helper.h
+++ b/target-tilegx/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(exception, noreturn, env, i32)
 DEF_HELPER_1(ext01_ics, void, env)
 DEF_HELPER_FLAGS_1(cntlz, TCG_CALL_NO_RWG_SE, i64, i64)
diff --git a/target-tricore/cpu.h b/target-tricore/cpu.h
index 3c6f7b7..698018a 100644
--- a/target-tricore/cpu.h
+++ b/target-tricore/cpu.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined(__TRICORE_CPU_H__)
 #define __TRICORE_CPU_H__
 
diff --git a/target-tricore/helper.h b/target-tricore/helper.h
index 9333e16..9e6526a 100644
--- a/target-tricore/helper.h
+++ b/target-tricore/helper.h
@@ -15,6 +15,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 /* Arithmetic */
 DEF_HELPER_3(add_ssov, i32, env, i32, i32)
 DEF_HELPER_3(add64_ssov, i64, env, i64, i64)
diff --git a/target-tricore/tricore-defs.h b/target-tricore/tricore-defs.h
index 4350b03..3f1a840 100644
--- a/target-tricore/tricore-defs.h
+++ b/target-tricore/tricore-defs.h
@@ -15,6 +15,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #if !defined(__QEMU_TRICORE_DEFS_H__)
 #define __QEMU_TRICORE_DEFS_H__
 
diff --git a/target-tricore/tricore-opcodes.h b/target-tricore/tricore-opcodes.h
index df666b0..56ccc22 100644
--- a/target-tricore/tricore-opcodes.h
+++ b/target-tricore/tricore-opcodes.h
@@ -15,6 +15,8 @@ 
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 /*
  * Opcode Masks for Tricore
  * Format MASK_OP_InstrFormatName_Field
diff --git a/target-unicore32/cpu.h b/target-unicore32/cpu.h
index f3e877b..0bcc244 100644
--- a/target-unicore32/cpu.h
+++ b/target-unicore32/cpu.h
@@ -8,6 +8,9 @@ 
  * published by the Free Software Foundation, or (at your option) any
  * later version. See the COPYING file in the top-level directory.
  */
+
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef QEMU_UNICORE32_CPU_H
 #define QEMU_UNICORE32_CPU_H
 
diff --git a/target-unicore32/helper.h b/target-unicore32/helper.h
index 9418137..91939b1 100644
--- a/target-unicore32/helper.h
+++ b/target-unicore32/helper.h
@@ -7,6 +7,8 @@ 
  * later version. See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef CONFIG_USER_ONLY
 DEF_HELPER_4(cp0_set, void, env, i32, i32, i32)
 DEF_HELPER_3(cp0_get, i32, env, i32, i32)
diff --git a/target-xtensa/cpu.h b/target-xtensa/cpu.h
index 442176a..ad4a18d 100644
--- a/target-xtensa/cpu.h
+++ b/target-xtensa/cpu.h
@@ -25,6 +25,8 @@ 
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #ifndef CPU_XTENSA_H
 #define CPU_XTENSA_H
 
diff --git a/target-xtensa/helper.h b/target-xtensa/helper.h
index 5ea9c5b..734487f 100644
--- a/target-xtensa/helper.h
+++ b/target-xtensa/helper.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_2(exception, noreturn, env, i32)
 DEF_HELPER_3(exception_cause, noreturn, env, i32, i32)
 DEF_HELPER_4(exception_cause_vaddr, noreturn, env, i32, i32, i32)
diff --git a/target-xtensa/overlay_tool.h b/target-xtensa/overlay_tool.h
index e8a7fda..69c8a2b 100644
--- a/target-xtensa/overlay_tool.h
+++ b/target-xtensa/overlay_tool.h
@@ -25,6 +25,8 @@ 
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 #define XTREG(idx, ofs, bi, sz, al, no, flags, cp, typ, grp, name, \
         a1, a2, a3, a4, a5, a6) \
     { .targno = (no), .type = (typ), .group = (grp), .size = (sz) },
diff --git a/tcg/mips/tcg-target.h b/tcg/mips/tcg-target.h
index b1cda37..5ee3854 100644
--- a/tcg/mips/tcg-target.h
+++ b/tcg/mips/tcg-target.h
@@ -23,6 +23,9 @@ 
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TCG_TARGET_MIPS 
 #define TCG_TARGET_MIPS 1
 
diff --git a/tcg/tcg-be-ldst.h b/tcg/tcg-be-ldst.h
index 17777ae..ee078f8 100644
--- a/tcg/tcg-be-ldst.h
+++ b/tcg/tcg-be-ldst.h
@@ -20,6 +20,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifdef CONFIG_SOFTMMU
 
 typedef struct TCGLabelQemuLdst {
diff --git a/tcg/tcg-be-null.h b/tcg/tcg-be-null.h
index 5222fe2..1112533 100644
--- a/tcg/tcg-be-null.h
+++ b/tcg/tcg-be-null.h
@@ -20,6 +20,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 typedef struct TCGBackendData {
     /* Empty */
     char dummy;
diff --git a/tcg/tcg-op.h b/tcg/tcg-op.h
index f217e80..57677ba 100644
--- a/tcg/tcg-op.h
+++ b/tcg/tcg-op.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include "tcg.h"
 #include "exec/helper-proto.h"
 #include "exec/helper-gen.h"
diff --git a/tcg/tcg-opc.h b/tcg/tcg-opc.h
index 6d0410c..61bcff1 100644
--- a/tcg/tcg-opc.h
+++ b/tcg/tcg-opc.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* NOTE: May only be included into target-dependent code */
+
 /*
  * DEF(name, oargs, iargs, cargs, flags)
  */
diff --git a/tcg/tcg-runtime.h b/tcg/tcg-runtime.h
index 23a0c37..2c2ce42 100644
--- a/tcg/tcg-runtime.h
+++ b/tcg/tcg-runtime.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 DEF_HELPER_FLAGS_2(div_i32, TCG_CALL_NO_RWG_SE, s32, s32, s32)
 DEF_HELPER_FLAGS_2(rem_i32, TCG_CALL_NO_RWG_SE, s32, s32, s32)
 DEF_HELPER_FLAGS_2(divu_i32, TCG_CALL_NO_RWG_SE, i32, i32, i32)
diff --git a/tcg/tcg.h b/tcg/tcg.h
index 66d7fc0..0f3ff7b 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TCG_H
 #define TCG_H
 
diff --git a/tests/Makefile.include b/tests/Makefile.include
index 6c09962..5def161 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -413,6 +413,26 @@  test-obj-y = tests/check-qint.o tests/check-qstring.o tests/check-qdict.o \
 $(test-obj-y): QEMU_INCLUDES += -Itests
 QEMU_CFLAGS += -I$(SRC_PATH)/tests
 
+ifneq ($(wildcard $(SRC_PATH)/.git),)
+# All headers:
+src-headers := $(filter %.h, $(shell cd $(SRC_PATH) && git ls-files))
+gen-headers := $(filter %.h, $(GENERATED_HEADERS))
+# Third party headers we don't want to mess with:
+excluded-headers := $(filter disas/libvixl/vixl/% pc-bios/% tests/multiboot/% tests/tcg/%, $(src-headers))
+# Coccinelle header, not actually C:
+excluded-headers += scripts/cocci-macro-file.h
+# Headers carrying a FIXME about this test:
+bad-header-with-$(CONFIG_WIN32) := ( with CONFIG_WIN32)?
+bad-header-comment := /* FIXME Does not pass make check-headers$(bad-header-with-y), yet!
+bad-headers := $(shell cd $(SRC_PATH) && fgrep -l '$(bad-header-comment)' $(src-headers))
+bad-headers += $(shell fgrep -l '$(bad-header-comment)' $(gen-headers))
+# Headers that require -DNEED_CPU_H etc.
+target-header-comment := /* NOTE: May only be included into target-dependent code */
+target-headers := $(shell cd $(SRC_PATH) && fgrep -l '$(target-header-comment)' $(src-headers))
+excluded-headers += $(target-headers) # test not implemented for these
+# Checked headers (all less excluded and bad):
+checked-headers := $(filter-out $(excluded-headers) $(bad-headers), $(src-headers) $(gen-headers))
+endif
 
 # Deps that are common to various different sets of tests below
 test-util-obj-y = libqemuutil.a libqemustub.a
@@ -647,6 +667,7 @@  check-help:
 	@echo " make check-unit           Run qobject tests"
 	@echo " make check-qapi-schema    Run QAPI schema tests"
 	@echo " make check-block          Run block tests"
+	@echo " make check-source         Run source code tests"
 	@echo " make check-report.html    Generates an HTML test report"
 	@echo " make check-clean          Clean the tests"
 	@echo
@@ -728,14 +749,36 @@  $(patsubst %, check-%, $(check-qapi-schema-y)): check-%.json: $(SRC_PATH)/%.json
 	@perl -p -e 's|\Q$(SRC_PATH)\E/||g' $*.test.err | diff -q $(SRC_PATH)/$*.err -
 	@diff -q $(SRC_PATH)/$*.exit $*.test.exit
 
+# Header sanity checking
+
+.PHONY: check-headers
+ifeq ($(wildcard $(SRC_PATH)/.git),)
+check-headers:
+	@echo "  SKIP  $@ (requires a git tree)"
+else
+check-headers: $(patsubst %.h,tests/headers/%.o, $(checked-headers))
+
+# Expected to fail:
+.PHONY: check-bad-headers
+check-bad-headers: $(patsubst %.h,tests/headers/%.o, $(bad-headers))
+
+.SECONDARY: $(patsubst %.h,tests/headers/%.c, $(src-headers) $(gen-headers))
+tests/headers/%.c: tests/header-test-template.c
+	@mkdir -p $(dir $@)
+	@sed 's,@header@,$(subst tests/headers/,,$(@:.c=.h)),' <$< >$@
+# TODO implement this test for $(target-headers)
+endif
+
 # Consolidated targets
 
-.PHONY: check-qapi-schema check-qtest check-unit check check-clean
+.PHONY: check-qapi-schema check-qtest check-unit check-source
+.PHONY: check check-clean
 check-qapi-schema: $(patsubst %,check-%, $(check-qapi-schema-y))
 check-qtest: $(patsubst %,check-qtest-%, $(QTEST_TARGETS))
 check-unit: $(patsubst %,check-%, $(check-unit-y))
 check-block: $(patsubst %,check-%, $(check-block-y))
-check: check-qapi-schema check-unit check-qtest
+check-source: check-headers
+check: check-qapi-schema check-unit check-qtest check-source
 check-clean:
 	$(MAKE) -C tests/tcg clean
 	rm -rf $(check-unit-y) tests/*.o $(QEMU_IOTESTS_HELPERS-y)
@@ -749,3 +792,4 @@  all: $(QEMU_IOTESTS_HELPERS-y)
 
 -include $(wildcard tests/*.d)
 -include $(wildcard tests/libqos/*.d)
+-include $(patsubst %.h,tests/headers/%.d, $(checked-headers))
diff --git a/tests/crypto-tls-x509-helpers.h b/tests/crypto-tls-x509-helpers.h
index 356b49c..5c32bbe 100644
--- a/tests/crypto-tls-x509-helpers.h
+++ b/tests/crypto-tls-x509-helpers.h
@@ -18,6 +18,8 @@ 
  * Author: Daniel P. Berrange <berrange@redhat.com>
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #include <gnutls/gnutls.h>
 #include <gnutls/x509.h>
 
diff --git a/tests/header-test-template.c b/tests/header-test-template.c
new file mode 100644
index 0000000..b6f86f4
--- /dev/null
+++ b/tests/header-test-template.c
@@ -0,0 +1,16 @@ 
+/*
+ * Template for make check-headers
+ *
+ * Copyright (C) 2016 Red Hat, Inc.
+ *
+ * Authors:
+ *  Markus Armbruster <armbru@redhat.com>
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or
+ * later.  See the COPYING file in the top-level directory.
+ */
+
+#include "qemu/osdep.h"
+#include "@header@"
+/* Include a second time to catch missing header guard */
+#include "@header@"
diff --git a/trace/control-internal.h b/trace/control-internal.h
index dcf67f5..b3a9894 100644
--- a/trace/control-internal.h
+++ b/trace/control-internal.h
@@ -7,6 +7,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRACE__CONTROL_INTERNAL_H
 #define TRACE__CONTROL_INTERNAL_H
 
diff --git a/trace/mem-internal.h b/trace/mem-internal.h
index a75e0ff..7f70806 100644
--- a/trace/mem-internal.h
+++ b/trace/mem-internal.h
@@ -7,6 +7,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRACE__MEM_INTERNAL_H
 #define TRACE__MEM_INTERNAL_H
 
diff --git a/trace/mem.h b/trace/mem.h
index c76a572..71f0782 100644
--- a/trace/mem.h
+++ b/trace/mem.h
@@ -7,6 +7,8 @@ 
  * See the COPYING file in the top-level directory.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRACE__MEM_H
 #define TRACE__MEM_H
 
diff --git a/trace/simple.h b/trace/simple.h
index 1e7de45..c6a122d 100644
--- a/trace/simple.h
+++ b/trace/simple.h
@@ -8,6 +8,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRACE_SIMPLE_H
 #define TRACE_SIMPLE_H
 
diff --git a/translate-all.h b/translate-all.h
index ce6071b..400f5e4 100644
--- a/translate-all.h
+++ b/translate-all.h
@@ -16,6 +16,9 @@ 
  * You should have received a copy of the GNU Lesser General Public
  * License along with this library; if not, see <http://www.gnu.org/licenses/>.
  */
+
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef TRANSLATE_ALL_H
 #define TRANSLATE_ALL_H
 
diff --git a/ui/curses_keys.h b/ui/curses_keys.h
index f746744..e54d080 100644
--- a/ui/curses_keys.h
+++ b/ui/curses_keys.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef QEMU_CURSES_KEYS_H
 #define QEMU_CURSES_KEYS_H 1
 
diff --git a/ui/sdl2-keymap.h b/ui/sdl2-keymap.h
index cbedaa4..0c5fd42 100644
--- a/ui/sdl2-keymap.h
+++ b/ui/sdl2-keymap.h
@@ -1,3 +1,4 @@ 
+/* FIXME Does not pass make check-headers, yet! */
 
 /* map SDL2 scancodes to QKeyCode */
 
diff --git a/ui/sdl_keysym.h b/ui/sdl_keysym.h
index 599d9fc..aebf64b 100644
--- a/ui/sdl_keysym.h
+++ b/ui/sdl_keysym.h
@@ -1,3 +1,4 @@ 
+/* FIXME Does not pass make check-headers, yet! */
 
 #include "keymaps.h"
 
diff --git a/ui/sdl_zoom.h b/ui/sdl_zoom.h
index 74955bc..b49c462 100644
--- a/ui/sdl_zoom.h
+++ b/ui/sdl_zoom.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef SDL_zoom_h
 #define SDL_zoom_h
 
diff --git a/ui/sdl_zoom_template.h b/ui/sdl_zoom_template.h
index 3bb508b..ab2642c 100644
--- a/ui/sdl_zoom_template.h
+++ b/ui/sdl_zoom_template.h
@@ -11,6 +11,8 @@ 
  *
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #if BPP == 16
 #define SDL_TYPE Uint16
 #elif BPP == 32
diff --git a/ui/vgafont.h b/ui/vgafont.h
index 3606dd7..6e49e8a 100644
--- a/ui/vgafont.h
+++ b/ui/vgafont.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 static const uint8_t vgafont16[256 * 16] = {
 
 	/* 0 0x00 '^@' */
diff --git a/ui/vnc-auth-sasl.h b/ui/vnc-auth-sasl.h
index 3f59da6..305bf13 100644
--- a/ui/vnc-auth-sasl.h
+++ b/ui/vnc-auth-sasl.h
@@ -22,6 +22,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 
 #ifndef __QEMU_VNC_AUTH_SASL_H__
 #define __QEMU_VNC_AUTH_SASL_H__
diff --git a/ui/vnc-auth-vencrypt.h b/ui/vnc-auth-vencrypt.h
index 9f674c5..26f9b3b 100644
--- a/ui/vnc-auth-vencrypt.h
+++ b/ui/vnc-auth-vencrypt.h
@@ -24,6 +24,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 
 #ifndef __QEMU_VNC_AUTH_VENCRYPT_H__
 #define __QEMU_VNC_AUTH_VENCRYPT_H__
diff --git a/ui/vnc-enc-hextile-template.h b/ui/vnc-enc-hextile-template.h
index d868d75..df9a35c 100644
--- a/ui/vnc-enc-hextile-template.h
+++ b/ui/vnc-enc-hextile-template.h
@@ -1,3 +1,5 @@ 
+/* FIXME Does not pass make check-headers, yet! */
+
 #define CONCAT_I(a, b) a ## b
 #define CONCAT(a, b) CONCAT_I(a, b)
 #define pixel_t CONCAT(uint, CONCAT(BPP, _t))
diff --git a/ui/vnc-jobs.h b/ui/vnc-jobs.h
index 044bf9f..2e97897 100644
--- a/ui/vnc-jobs.h
+++ b/ui/vnc-jobs.h
@@ -27,6 +27,8 @@ 
  * THE SOFTWARE.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef VNC_JOBS_H
 #define VNC_JOBS_H
 
diff --git a/ui/vnc-ws.h b/ui/vnc-ws.h
index 652b6fc..181c9c5 100644
--- a/ui/vnc-ws.h
+++ b/ui/vnc-ws.h
@@ -18,6 +18,8 @@ 
  * along with this software; if not, see <http://www.gnu.org/licenses/>.
  */
 
+/* FIXME Does not pass make check-headers, yet! */
+
 #ifndef __QEMU_UI_VNC_WS_H
 #define __QEMU_UI_VNC_WS_H
 
diff --git a/ui/vnc_keysym.h b/ui/vnc_keysym.h
index 7fa2bc1..900027e 100644
--- a/ui/vnc_keysym.h
+++ b/ui/vnc_keysym.h
@@ -1,3 +1,4 @@ 
+/* FIXME Does not pass make check-headers, yet! */
 
 #include "keymaps.h"