diff mbox series

[4/6] patman: Handle checkpatch output with notes and code

Message ID 20200506222910.152322-5-sjg@chromium.org
State Accepted
Commit 666eb15e923e93872dbca1b834ce123a327fc9b3
Delegated to: Simon Glass
Headers show
Series patman: Fixes to allow patman to work with Zephyr OS | expand

Commit Message

Simon Glass May 6, 2020, 10:29 p.m. UTC
If checkpatch is configured to output code we should ignore it. Similarly,
notes should be ignored.

Update the logic to handle these situations.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/patman/checkpatch.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

Comments

Simon Glass June 13, 2020, 3:11 a.m. UTC | #1
If checkpatch is configured to output code we should ignore it. Similarly,
notes should be ignored.

Update the logic to handle these situations.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 tools/patman/checkpatch.py | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

Applied to u-boot-dm, thanks!
diff mbox series

Patch

diff --git a/tools/patman/checkpatch.py b/tools/patman/checkpatch.py
index 2cfa9778c6..5426bb9e9e 100644
--- a/tools/patman/checkpatch.py
+++ b/tools/patman/checkpatch.py
@@ -85,7 +85,8 @@  def CheckPatch(fname, verbose=False):
     re_warning = re.compile(emacs_prefix + 'WARNING:(?:[A-Z_]+:)? (.*)')
     re_check = re.compile('CHECK: (.*)')
     re_file = re.compile('#\d+: FILE: ([^:]*):(\d+):')
-
+    re_note = re.compile('NOTE: (.*)')
+    indent = ' ' * 6
     for line in result.stdout.splitlines():
         if verbose:
             print(line)
@@ -96,6 +97,14 @@  def CheckPatch(fname, verbose=False):
                 result.problems.append(item)
                 item = {}
             continue
+        if re_note.match(line):
+            continue
+        # Skip lines which quote code
+        if line.startswith(indent):
+            continue
+        # Skip code quotes and #<n>
+        if line.startswith('+') or line.startswith('#'):
+            continue
         match = re_stats_full.match(line)
         if not match:
             match = re_stats.match(line)