On Wed, 2014-09-03 at 09:32 -0700, Vadim Bendebury wrote:
> This script is used by many other projects, and in some of them the
> requirement of at least 4 line long description for all Kconfig items
> is excessive. This patch adds a command line option to control the
> required minimum length.
> 
> Tested running this script over a patch including a two line config
> description. The script generated a warning when invoked as is, and
> did not generate it when invoked with --min-conf-desc-length=2.
> 
> Signed-off-by: Vadim Bendebury <vben...@chromium.org>
> ---
> 
>  scripts/checkpatch.pl | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index b385bcb..8808bde 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -43,6 +43,7 @@ my $configuration_file = ".checkpatch.conf";
>  my $max_line_length = 80;
>  my $ignore_perl_version = 0;
>  my $minimum_perl_version = 5.10.0;
> +my $min_conf_desc_length = 4;
>  
>  sub help {
>       my ($exitcode) = @_;
> @@ -63,6 +64,7 @@ Options:
>    --types TYPE(,TYPE2...)    show only these comma separated message types
>    --ignore TYPE(,TYPE2...)   ignore various comma separated message types
>    --max-line-length=n        set the maximum line length, if exceeded, warn
> +  --min-conf-desc-length=n   set the min description length, if shorter, warn
>    --show-types               show the message "types" in the output
>    --root=PATH                PATH to the kernel tree root
>    --no-summary               suppress the per-file summary
> @@ -131,6 +133,7 @@ GetOptions(
>       'types=s'       => \@use,
>       'show-types!'   => \$show_types,
>       'max-line-length=i' => \$max_line_length,
> +     'min-conf-desc-length=i' => \$min_conf_desc_length,
>       'root=s'        => \$root,
>       'summary!'      => \$summary,
>       'mailback!'     => \$mailback,
> @@ -2281,7 +2284,8 @@ sub process {
>                               $length++;
>                       }
>                       WARN("CONFIG_DESCRIPTION",
> -                          "please write a paragraph that describes the 
> config symbol fully\n" . $herecurr) if ($is_start && $is_end && $length < 4);
> +                          "please write a paragraph that describes the 
> config symbol fully\n" . $herecurr)
> +                         if ($is_start && $is_end && $length < 
> $min_conf_desc_length);
>                       #print "is_start<$is_start> is_end<$is_end> 
> length<$length>\n";
>               }

Fine by me, but I think think this is the
only checkpatch use of:

        WARN(foo) if (test);

Every other checkpatch message block is:

        if (test) {
                WARN(foo);
        }

so I would prefer to change this use
to match.
---
 scripts/checkpatch.pl | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index d89857d..af4659c1 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -43,6 +43,7 @@ my $configuration_file = ".checkpatch.conf";
 my $max_line_length = 80;
 my $ignore_perl_version = 0;
 my $minimum_perl_version = 5.10.0;
+my $min_conf_desc_length = 4;
 
 sub help {
        my ($exitcode) = @_;
@@ -63,6 +64,7 @@ Options:
   --types TYPE(,TYPE2...)    show only these comma separated message types
   --ignore TYPE(,TYPE2...)   ignore various comma separated message types
   --max-line-length=n        set the maximum line length, if exceeded, warn
+  --min-conf-desc-length=n   set the min description length, if shorter, warn
   --show-types               show the message "types" in the output
   --root=PATH                PATH to the kernel tree root
   --no-summary               suppress the per-file summary
@@ -131,6 +133,7 @@ GetOptions(
        'types=s'       => \@use,
        'show-types!'   => \$show_types,
        'max-line-length=i' => \$max_line_length,
+       'min-conf-desc-length=i' => \$min_conf_desc_length,
        'root=s'        => \$root,
        'summary!'      => \$summary,
        'mailback!'     => \$mailback,
@@ -2280,9 +2283,10 @@ sub process {
                                }
                                $length++;
                        }
-                       WARN("CONFIG_DESCRIPTION",
-                            "please write a paragraph that describes the 
config symbol fully\n" . $herecurr) if ($is_start && $is_end && $length < 4);
-                       #print "is_start<$is_start> is_end<$is_end> 
length<$length>\n";
+                       if ($is_start && $is_end && $length < 
$min_conf_desc_length) {
+                               WARN("CONFIG_DESCRIPTION",
+                                    "please write a paragraph that describes 
the config symbol fully\n" . $herecurr);
+                       }
                }
 
 # discourage the addition of CONFIG_EXPERIMENTAL in Kconfig.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to