[PATCH v4 1/2] checkpatch: testing more config for Kconfig help text

From: Yingjoe Chen
Date: Fri Jun 24 2016 - 10:11:23 EST


Current help text check only check a config option if it is followed
by another config.
Adding check for help text if the next entry is menuconfig, choice/
endchoice, comment, menu/endmenu, if/endif, source or end of file.

Signed-off-by: Yingjoe Chen <yingjoe.chen@xxxxxxxxxxxx>
---
checkpatch Kconfig checking stuff again.

Change in this round:
In 'default n' check, don't warn if user comment on why the
'default n' is neccessary.

I also change patch order. The first one extend help message check
to check for all available config entries. If you think 'default n'
check is not that useful, please consider just merge this one.

Let me know what you think. Thanks.

Change in v3:
- Rebase to v4.7-rc1

Change in v2:
- Change according to Joe Perches' suggestion
---
scripts/checkpatch.pl | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 6750595..19b270b 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2646,6 +2646,12 @@ sub process {
next if ($f =~ /^-/);
last if (!$file && $f =~ /^\@\@/);

+ if ($f !~ /^[+\- ]/) {
+ # End of file
+ $is_end = 1;
+ last;
+ }
+
if ($lines[$ln - 1] =~ /^\+\s*(?:bool|tristate)\s*\"/) {
$is_start = 1;
} elsif ($lines[$ln - 1] =~ /^\+\s*(?:---)?help(?:---)?$/) {
@@ -2656,7 +2662,7 @@ sub process {
$f =~ s/#.*//;
$f =~ s/^\s+//;
next if ($f =~ /^$/);
- if ($f =~ /^\s*config\s/) {
+ if ($f =~ /^(?:config\s|menuconfig\s|choice\s|endchoice\s*$|comment\s|menu\s|endmenu\s*$|if\s|endif\s*$|source\s)/) {
$is_end = 1;
last;
}
--
1.9.1