On Thu, Oct 13, 2016 at 12:10 AM, Anand J <anand.induk...@gmail.com> wrote:

> Added script to check duplicate #include entries. This check will scan and
> print the files in which duplicate #include entries are present.
>
> Script might output false postive entries as well. Such entries should
> not be removed. So if it finds any duplicate entries script will terminate
> with an exit status 1. Then each and every file should be checked manually
> and corrected if necessary.
>
> Added an additional option --ignore-duphead in the clean-includes
> script to disable this check if all the duplicate #includes are
> genuine. The check in enabled by default.
>
> NOTE: Removed some of the genuine duplicate entries in the code base.
>
> Signed-off-by: Anand J <anand.induk...@gmail.com>
> ---
>  accel.c                             |  1 -
>  cputlb.c                            |  1 -
>  gdbstub.c                           |  1 -
>  hw/i386/acpi-build.c                |  1 -
>  hw/microblaze/boot.c                |  1 -
>  hw/mips/mips_malta.c                |  1 -
>  hw/nvram/fw_cfg.c                   |  1 -
>  hw/pci-bridge/pci_expander_bridge.c |  1 -
>  hw/ppc/ppc405_boards.c              |  1 -
>  hw/ppc/spapr.c                      |  1 -
>  hw/timer/grlib_gptimer.c            |  1 -
>  hw/tpm/tpm_tis.c                    |  1 -
>  hw/unicore32/puv3.c                 |  1 -
>  hw/usb/dev-mtp.c                    |  1 -
>  include/hw/i386/pc.h                |  1 -
>  monitor.c                           |  2 --
>  qemu-io-cmds.c                      |  1 -
>  qmp.c                               |  1 -
>  scripts/clean-includes              | 50 +++++++++++++++++++++++++++---
> -------
>  target-i386/machine.c               |  3 ---
>  target-mips/machine.c               |  1 -
>  target-ppc/machine.c                |  1 -
>  target-ppc/mem_helper.c             |  1 -
>  target-sparc/machine.c              |  3 ---
>  target-xtensa/translate.c           |  1 -
>  tests/crypto-tls-x509-helpers.h     |  3 ---
>  tests/vhost-user-test.c             |  2 --
>  util/oslib-posix.c                  |  1 -
>  vl.c                                |  1 -
>  29 files changed, 37 insertions(+), 49 deletions(-)
>
> diff --git a/accel.c b/accel.c
> index 403eb5e..b5a4210 100644
> --- a/accel.c
> +++ b/accel.c
> @@ -25,7 +25,6 @@
>
>  #include "qemu/osdep.h"
>  #include "sysemu/accel.h"
> -#include "hw/boards.h"
>  #include "qemu-common.h"
>  #include "sysemu/arch_init.h"
>  #include "sysemu/sysemu.h"
> diff --git a/cputlb.c b/cputlb.c
> index 3c99c34..59b3969 100644
> --- a/cputlb.c
> +++ b/cputlb.c
> @@ -19,7 +19,6 @@
>
>  #include "qemu/osdep.h"
>  #include "cpu.h"
> -#include "exec/exec-all.h"
>  #include "exec/memory.h"
>  #include "exec/address-spaces.h"
>  #include "exec/cpu_ldst.h"
> diff --git a/gdbstub.c b/gdbstub.c
> index ecea8c4..67eb028 100644
> --- a/gdbstub.c
> +++ b/gdbstub.c
> @@ -31,7 +31,6 @@
>
>  #define MAX_PACKET_LENGTH 4096
>
> -#include "cpu.h"
>  #include "qemu/sockets.h"
>  #include "sysemu/kvm.h"
>  #include "exec/semihost.h"
> diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
> index e999654..b2baa60 100644
> --- a/hw/i386/acpi-build.c
> +++ b/hw/i386/acpi-build.c
> @@ -30,7 +30,6 @@
>  #include "qom/cpu.h"
>  #include "hw/i386/pc.h"
>  #include "target-i386/cpu.h"
> -#include "hw/timer/hpet.h"
>  #include "hw/acpi/acpi-defs.h"
>  #include "hw/acpi/acpi.h"
>  #include "hw/acpi/cpu.h"
> diff --git a/hw/microblaze/boot.c b/hw/microblaze/boot.c
> index 9eebb1a..1834d22 100644
> --- a/hw/microblaze/boot.c
> +++ b/hw/microblaze/boot.c
> @@ -30,7 +30,6 @@
>  #include "qemu/option.h"
>  #include "qemu/config-file.h"
>  #include "qemu/error-report.h"
> -#include "qemu-common.h"
>  #include "sysemu/device_tree.h"
>  #include "sysemu/sysemu.h"
>  #include "hw/loader.h"
> diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
> index e90857e..61aa8eb 100644
> --- a/hw/mips/mips_malta.c
> +++ b/hw/mips/mips_malta.c
> @@ -47,7 +47,6 @@
>  #include "elf.h"
>  #include "hw/timer/mc146818rtc.h"
>  #include "hw/timer/i8254.h"
> -#include "sysemu/block-backend.h"
>  #include "sysemu/blockdev.h"
>  #include "exec/address-spaces.h"
>  #include "hw/sysbus.h"             /* SysBusDevice */
> diff --git a/hw/nvram/fw_cfg.c b/hw/nvram/fw_cfg.c
> index 92aa563..1f0c3e9 100644
> --- a/hw/nvram/fw_cfg.c
> +++ b/hw/nvram/fw_cfg.c
> @@ -29,7 +29,6 @@
>  #include "hw/isa/isa.h"
>  #include "hw/nvram/fw_cfg.h"
>  #include "hw/sysbus.h"
> -#include "hw/boards.h"
>  #include "trace.h"
>  #include "qemu/error-report.h"
>  #include "qemu/config-file.h"
> diff --git a/hw/pci-bridge/pci_expander_bridge.c
> b/hw/pci-bridge/pci_expander_bridge.c
> index 1cc598f..6ac187f 100644
> --- a/hw/pci-bridge/pci_expander_bridge.c
> +++ b/hw/pci-bridge/pci_expander_bridge.c
> @@ -15,7 +15,6 @@
>  #include "hw/pci/pci.h"
>  #include "hw/pci/pci_bus.h"
>  #include "hw/pci/pci_host.h"
> -#include "hw/pci/pci_bus.h"
>  #include "hw/pci/pci_bridge.h"
>  #include "hw/i386/pc.h"
>  #include "qemu/range.h"
> diff --git a/hw/ppc/ppc405_boards.c b/hw/ppc/ppc405_boards.c
> index 4b2f07a..d01798f 100644
> --- a/hw/ppc/ppc405_boards.c
> +++ b/hw/ppc/ppc405_boards.c
> @@ -37,7 +37,6 @@
>  #include "qemu/log.h"
>  #include "qemu/error-report.h"
>  #include "hw/loader.h"
> -#include "sysemu/block-backend.h"
>  #include "sysemu/blockdev.h"
>  #include "exec/address-spaces.h"
>
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 03e3803..42432d9 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -37,7 +37,6 @@
>  #include "sysemu/block-backend.h"
>  #include "sysemu/cpus.h"
>  #include "sysemu/kvm.h"
> -#include "sysemu/device_tree.h"
>  #include "kvm_ppc.h"
>  #include "migration/migration.h"
>  #include "mmu-hash64.h"
> diff --git a/hw/timer/grlib_gptimer.c b/hw/timer/grlib_gptimer.c
> index 712d1ae..4ed96e9 100644
> --- a/hw/timer/grlib_gptimer.c
> +++ b/hw/timer/grlib_gptimer.c
> @@ -26,7 +26,6 @@
>  #include "hw/sysbus.h"
>  #include "qemu/timer.h"
>  #include "hw/ptimer.h"
> -#include "qemu/timer.h"
>  #include "qemu/main-loop.h"
>
>  #include "trace.h"
> diff --git a/hw/tpm/tpm_tis.c b/hw/tpm/tpm_tis.c
> index 381e726..a6440fe 100644
> --- a/hw/tpm/tpm_tis.c
> +++ b/hw/tpm/tpm_tis.c
> @@ -34,7 +34,6 @@
>  #include "qapi/error.h"
>  #include "qemu-common.h"
>  #include "qemu/main-loop.h"
> -#include "sysemu/tpm_backend.h"
>
>  #define DEBUG_TIS 0
>
> diff --git a/hw/unicore32/puv3.c b/hw/unicore32/puv3.c
> index 31cd171..032078f 100644
> --- a/hw/unicore32/puv3.c
> +++ b/hw/unicore32/puv3.c
> @@ -13,7 +13,6 @@
>  #include "qapi/error.h"
>  #include "qemu-common.h"
>  #include "cpu.h"
> -#include "qemu-common.h"
>  #include "ui/console.h"
>  #include "elf.h"
>  #include "exec/address-spaces.h"
> diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
> index 58d95ff..9cb0f50 100644
> --- a/hw/usb/dev-mtp.c
> +++ b/hw/usb/dev-mtp.c
> @@ -17,7 +17,6 @@
>  #include <sys/statvfs.h>
>  #ifdef CONFIG_INOTIFY1
>  #include <sys/inotify.h>
> -#include "qapi/error.h"
>  #include "qemu/main-loop.h"
>  #endif
>
> diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
> index b16c448..9c42603 100644
> --- a/include/hw/i386/pc.h
> +++ b/include/hw/i386/pc.h
> @@ -13,7 +13,6 @@
>  #include "qemu/bitmap.h"
>  #include "sysemu/sysemu.h"
>  #include "hw/pci/pci.h"
> -#include "hw/boards.h"
>  #include "hw/compat.h"
>  #include "hw/mem/pc-dimm.h"
>  #include "hw/mem/nvdimm.h"
> diff --git a/monitor.c b/monitor.c
> index 8728dd9..b8773a5 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -59,7 +59,6 @@
>  #include "qapi/qmp/json-streamer.h"
>  #include "qapi/qmp/json-parser.h"
>  #include "qom/object_interfaces.h"
> -#include "cpu.h"
>  #include "trace.h"
>  #include "trace/control.h"
>  #include "monitor/hmp-target.h"
> @@ -76,7 +75,6 @@
>  #include "qapi/qmp-event.h"
>  #include "qapi-event.h"
>  #include "qmp-introspect.h"
> -#include "sysemu/block-backend.h"
>  #include "sysemu/qtest.h"
>  #include "qemu/cutils.h"
>  #include "qapi/qmp/dispatch.h"
> diff --git a/qemu-io-cmds.c b/qemu-io-cmds.c
> index 3a3838a..e0249e2 100644
> --- a/qemu-io-cmds.c
> +++ b/qemu-io-cmds.c
> @@ -18,7 +18,6 @@
>  #include "qemu/error-report.h"
>  #include "qemu/main-loop.h"
>  #include "qemu/timer.h"
> -#include "sysemu/block-backend.h"
>  #include "qemu/cutils.h"
>
>  #define CMD_NOFILE_OK   0x01
> diff --git a/qmp.c b/qmp.c
> index b3ba9ef..f37ad7e 100644
> --- a/qmp.c
> +++ b/qmp.c
> @@ -36,7 +36,6 @@
>  #include "qom/object_interfaces.h"
>  #include "hw/mem/pc-dimm.h"
>  #include "hw/acpi/acpi_dev_interface.h"
> -#include "qemu/uuid.h"
>
>  NameInfo *qmp_query_name(Error **errp)
>  {
> diff --git a/scripts/clean-includes b/scripts/clean-includes
> index 4412a55..4700e9d 100755
> --- a/scripts/clean-includes
> +++ b/scripts/clean-includes
> @@ -14,15 +14,18 @@
>  # the top-level directory.
>
>  # Usage:
> -#   clean-includes [--git subjectprefix] file ...
> +#   clean-includes [--git subjectprefix] [--ignore-duphead] file ...
>  # or
> -#   clean-includes [--git subjectprefix] --all
> +#   clean-includes [--git subjectprefix] [--ignore-duphead] --all
>  #
>  # If the --git subjectprefix option is given, then after making
>  # the changes to the files this script will create a git commit
>  # with the subject line "subjectprefix: Clean up includes"
>  # and a boilerplate commit message.
>  #
> +# If --ignore-duphead option is used, then check for duplicate
> +# header files will be skipped.
> +#
>  # Using --all will cause clean-includes to run on the whole source
>  # tree (excluding certain directories which are known not to need
>  # handling).
> @@ -45,23 +48,36 @@
>
>
>  GIT=no
> +DUPHEAD=yes
>
>  # Extended regular expression defining files to ignore when using --all
>  XDIRREGEX='^(tests/tcg|tests/multiboot|pc-bios|disas/libvixl)'
>
> -if [ $# -ne 0 ] && [ "$1" = "--git" ]; then
> -    if [ $# -eq 1 ]; then
> -        echo "--git option requires an argument"
> -        exit 1
> -    fi
> -    GITSUBJ="$2"
> -    GIT=yes
> -    shift
> -    shift
> -fi
> +while true
> +do
> +    case $1 in
> +    "--git")
> +         if [ $# -eq 1 ]; then
> +             echo "--git option requires an argument"
> +             exit 1
> +         fi
> +         GITSUBJ="$2"
> +         GIT=yes
> +         shift
> +         shift
> +         ;;
> +    "--ignore-duphead")
> +        DUPHEAD=no
> +        shift
> +        ;;
> +    *)
> +        break
> +        ;;
> +   esac
> +done
>
>  if [ $# -eq 0 ]; then
> -    echo "Usage: clean-includes [--git subjectprefix] [--all | foo.c ...]"
> +    echo "Usage: clean-includes [--git subjectprefix] [--ignore-duphead]
> [--all | foo.c ...]"
>      echo "(modifies the files in place)"
>      exit 1
>  fi
> @@ -154,6 +170,14 @@ for f in "$@"; do
>
>  done
>
> +if [ "$DUPHEAD" = "yes" ]; then
> +    grep "^#include" $@ | sort | uniq -c | awk '{if ($1 > 1) print $0}'
> +    if [ $? -eq 0 ]; then
> +        echo "Found duplicate header file includes. Please check the
> above files manually."
> +        exit 1
> +    fi
> +fi
> +
>  if [ "$GIT" = "yes" ]; then
>      git add -- "$@"
>      git commit --signoff -F - <<EOF
> diff --git a/target-i386/machine.c b/target-i386/machine.c
> index 71c0e4d..48037f1 100644
> --- a/target-i386/machine.c
> +++ b/target-i386/machine.c
> @@ -7,10 +7,7 @@
>  #include "hw/i386/pc.h"
>  #include "hw/isa/isa.h"
>  #include "migration/cpu.h"
> -#include "exec/exec-all.h"
>
> -#include "cpu.h"
> -#include "exec/exec-all.h"
>  #include "sysemu/kvm.h"
>
>  #include "qemu/error-report.h"
> diff --git a/target-mips/machine.c b/target-mips/machine.c
> index a27f2f1..d20d948 100644
> --- a/target-mips/machine.c
> +++ b/target-mips/machine.c
> @@ -2,7 +2,6 @@
>  #include "qemu-common.h"
>  #include "cpu.h"
>  #include "hw/hw.h"
> -#include "cpu.h"
>  #include "migration/cpu.h"
>
>  static int cpu_post_load(void *opaque, int version_id)
> diff --git a/target-ppc/machine.c b/target-ppc/machine.c
> index 4820f22..e43cb6c 100644
> --- a/target-ppc/machine.c
> +++ b/target-ppc/machine.c
> @@ -8,7 +8,6 @@
>  #include "helper_regs.h"
>  #include "mmu-hash64.h"
>  #include "migration/cpu.h"
> -#include "exec/exec-all.h"
>
>  static int cpu_load_old(QEMUFile *f, void *opaque, int version_id)
>  {
> diff --git a/target-ppc/mem_helper.c b/target-ppc/mem_helper.c
> index 6548715..1ab8a6e 100644
> --- a/target-ppc/mem_helper.c
> +++ b/target-ppc/mem_helper.c
> @@ -23,7 +23,6 @@
>  #include "exec/helper-proto.h"
>
>  #include "helper_regs.h"
> -#include "exec/exec-all.h"
>  #include "exec/cpu_ldst.h"
>
>  //#define DEBUG_OP
> diff --git a/target-sparc/machine.c b/target-sparc/machine.c
> index 59c92f7..aea6397 100644
> --- a/target-sparc/machine.c
> +++ b/target-sparc/machine.c
> @@ -6,10 +6,7 @@
>  #include "hw/boards.h"
>  #include "qemu/timer.h"
>
> -#include "cpu.h"
> -#include "exec/exec-all.h"
>  #include "migration/cpu.h"
> -#include "exec/exec-all.h"
>
>  #ifdef TARGET_SPARC64
>  static const VMStateDescription vmstate_cpu_timer = {
> diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
> index 4c1e487..fb0fa56 100644
> --- a/target-xtensa/translate.c
> +++ b/target-xtensa/translate.c
> @@ -36,7 +36,6 @@
>  #include "tcg-op.h"
>  #include "qemu/log.h"
>  #include "sysemu/sysemu.h"
> -#include "exec/exec-all.h"
>  #include "exec/cpu_ldst.h"
>  #include "exec/semihost.h"
>
> diff --git a/tests/crypto-tls-x509-helpers.h b/tests/crypto-tls-x509-
> helpers.h
> index a8faa92..921341c 100644
> --- a/tests/crypto-tls-x509-helpers.h
> +++ b/tests/crypto-tls-x509-helpers.h
> @@ -21,9 +21,6 @@
>  #include <gnutls/gnutls.h>
>  #include <gnutls/x509.h>
>
> -#include <gnutls/gnutls.h>
> -#include <gnutls/x509.h>
> -
>  #if !(defined WIN32) && \
>      defined(CONFIG_TASN1) && \
>      (LIBGNUTLS_VERSION_NUMBER >= 0x020600)
> diff --git a/tests/vhost-user-test.c b/tests/vhost-user-test.c
> index d7c48c5..4d85f88 100644
> --- a/tests/vhost-user-test.c
> +++ b/tests/vhost-user-test.c
> @@ -20,8 +20,6 @@
>  #include "libqos/pci-pc.h"
>  #include "libqos/virtio-pci.h"
>
> -#include "libqos/pci-pc.h"
> -#include "libqos/virtio-pci.h"
>  #include "libqos/malloc-pc.h"
>  #include "hw/virtio/virtio-net.h"
>
> diff --git a/util/oslib-posix.c b/util/oslib-posix.c
> index 8ec99cc..67c6589 100644
> --- a/util/oslib-posix.c
> +++ b/util/oslib-posix.c
> @@ -28,7 +28,6 @@
>
>  #include "qemu/osdep.h"
>  #include <termios.h>
> -#include <termios.h>
>
>  #include <glib/gprintf.h>
>
> diff --git a/vl.c b/vl.c
> index c657acd..1b7cfed 100644
> --- a/vl.c
> +++ b/vl.c
> @@ -110,7 +110,6 @@ int main(int argc, char **argv)
>  #include "trace.h"
>  #include "trace/control.h"
>  #include "qemu/queue.h"
> -#include "sysemu/cpus.h"
>  #include "sysemu/arch_init.h"
>
>  #include "ui/qemu-spice.h"
> --
> 2.7.4
>
>

Reply via email to