[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 01/20] scripts/clean-includes: Fully skip / ignore files
From: |
Markus Armbruster |
Subject: |
[PATCH v5 01/20] scripts/clean-includes: Fully skip / ignore files |
Date: |
Mon, 30 Jan 2023 14:21:37 +0100 |
When clean-includes claims to skip or ignore a file, only the part
that sanitizes use of qemu/osdep.h skips the file. The part that
looks for duplicate #include does not, and neither does committing to
Git.
The latter can get unrelated stuff included in the commit, but only if
you run clean-includes in a dirty tree, which is unwise. Messed up
when we added skipping in commit fd3e39a40c "scripts/clean-includes:
Enhance to handle header files".
The former can cause bogus reports for --check-dup-head. Added in
commit d66253e46a "scripts/clean-includes: added duplicate #include
check", duplicating the prior mistake.
Fix the script to fully skip files.
Fixes: fd3e39a40ca2 ("scripts/clean-includes: Enhance to handle header files")
Fixes: d66253e46ae2 ("scripts/clean-includes: added duplicate #include check")
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
---
scripts/clean-includes | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/scripts/clean-includes b/scripts/clean-includes
index d37bd4f692..86944f27fc 100755
--- a/scripts/clean-includes
+++ b/scripts/clean-includes
@@ -111,6 +111,7 @@ cat >"$COCCIFILE" <<EOT
)
EOT
+files=
for f in "$@"; do
case "$f" in
*.c.inc)
@@ -144,6 +145,7 @@ for f in "$@"; do
continue
;;
esac
+ files="$files $f"
if [ "$MODE" = "c" ]; then
# First, use Coccinelle to add qemu/osdep.h before the first existing
include
@@ -174,8 +176,8 @@ for f in "$@"; do
done
-if [ "$DUPHEAD" = "yes" ]; then
- egrep "^[[:space:]]*#[[:space:]]*include" "$@" | tr -d '[:blank:]' \
+if [ "$DUPHEAD" = "yes" ] && [ -n "$files" ]; then
+ egrep "^[[:space:]]*#[[:space:]]*include" $files | tr -d '[:blank:]' \
| 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."
@@ -184,7 +186,7 @@ if [ "$DUPHEAD" = "yes" ]; then
fi
if [ "$GIT" = "yes" ]; then
- git add -- "$@"
+ git add -- $files
git commit --signoff -F - <<EOF
$GITSUBJ: Clean up includes
--
2.39.0
- [PATCH v5 00/20] Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 08/20] hw/input: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 14/20] riscv: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 04/20] scripts/clean-includes: Improve --git commit message, Markus Armbruster, 2023/01/30
- [PATCH v5 15/20] block: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 05/20] bsd-user: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 01/20] scripts/clean-includes: Fully skip / ignore files,
Markus Armbruster <=
- [PATCH v5 16/20] accel: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 07/20] hw/cxl: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 13/20] target/hexagon: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 11/20] migration: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 09/20] hw/tricore: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 02/20] scripts/clean-includes: Don't claim duplicate headers found when not, Markus Armbruster, 2023/01/30
- [PATCH v5 17/20] Fix non-first inclusions of qemu/osdep.h, Markus Armbruster, 2023/01/30
- [PATCH v5 03/20] scripts/clean-includes: Skip symbolic links, Markus Armbruster, 2023/01/30
- [PATCH v5 06/20] crypto: Clean up includes, Markus Armbruster, 2023/01/30
- [PATCH v5 12/20] net: Clean up includes, Markus Armbruster, 2023/01/30