From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48567) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1buOSD-0002HM-G6 for qemu-devel@nongnu.org; Wed, 12 Oct 2016 14:40:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1buOSA-0003dT-7F for qemu-devel@nongnu.org; Wed, 12 Oct 2016 14:40:37 -0400 Received: from mail-pa0-x244.google.com ([2607:f8b0:400e:c03::244]:35560) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1buOS9-0003dL-Ob for qemu-devel@nongnu.org; Wed, 12 Oct 2016 14:40:34 -0400 Received: by mail-pa0-x244.google.com with SMTP id qn10so3637515pac.2 for ; Wed, 12 Oct 2016 11:40:33 -0700 (PDT) From: Anand J Date: Thu, 13 Oct 2016 00:10:00 +0530 Message-Id: <1476297600-27453-1-git-send-email-anand.indukala@gmail.com> Subject: [Qemu-devel] [PATCH] script/clean-includes: added duplicate #include check List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org 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 --- 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 #ifdef CONFIG_INOTIFY1 #include -#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 - < #include -#include -#include - #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 -#include #include 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