X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=tools%2Fscripts%2Fcheckpatch.pl;h=bc6b6017317ff2e75487cf6c96d285a401cfe124;hp=b7134f8a3cdc4ac398d3c29c2d1e26de816cbd22;hb=cadd5197153576602a0f3ac45113f4c8ba0733fc;hpb=e875e321f155a3f610d447055f930a5be0d293a6 diff --git a/tools/scripts/checkpatch.pl b/tools/scripts/checkpatch.pl index b7134f8a3c..bc6b601731 100755 --- a/tools/scripts/checkpatch.pl +++ b/tools/scripts/checkpatch.pl @@ -261,7 +261,8 @@ our $logFunctions = qr{(?x: [a-z0-9]+_(?:printk|emerg|alert|crit|err|warning|warn|notice|info|debug|dbg|vdbg|devel|cont|WARN)(?:_ratelimited|_once|)| WARN(?:_RATELIMIT|_ONCE|)| panic| - MODULE_[A-Z_]+ + MODULE_[A-Z_]+| + LOG_(?:DEBUG|INFO|WARNING|ERROR|USER|USER_N|OUTPUT)+ )}; our $signature_tags = qr{(?xi: @@ -445,6 +446,8 @@ sub parse_email { $address = ""; $comment = ""; } + } elsif ($formatted_email eq "jenkins") { + $address = "jenkins" } $name =~ s/^\s+|\s+$//g; @@ -504,7 +507,7 @@ sub expand_tabs { if ($c eq "\t") { $res .= ' '; $n++; - for (; ($n % 8) != 0; $n++) { + for (; ($n % 4) != 0; $n++) { $res .= ' '; } next; @@ -1664,15 +1667,15 @@ sub process { # check we are in a valid source file if not then ignore this hunk next if ($realfile !~ /\.(h|c|s|S|pl|sh)$/); -#100 column limit +#120 column limit if ($line =~ /^\+/ && $prevrawline !~ /\/\*\*/ && $rawline !~ /^.\s*\*\s*\@$Ident\s/ && !($line =~ /^\+\s*$logFunctions\s*\(\s*(?:(KERN_\S+\s*|[^"]*))?"[X\t]*"\s*(?:|,|\)\s*;)\s*$/ || $line =~ /^\+\s*"[^"]*"\s*(?:\s*|,|\)\s*;)\s*$/) && - $length > 100) + $length > 120) { WARN("LONG_LINE", - "line over 100 characters\n" . $herecurr); + "line over 120 characters\n" . $herecurr); } # check for spaces before a quoted newline @@ -1823,26 +1826,26 @@ sub process { # Check for switch () and associated case and default # statements should be at the same indent. - if ($line=~/\bswitch\s*\(.*\)/) { - my $err = ''; - my $sep = ''; - my @ctx = ctx_block_outer($linenr, $realcnt); - shift(@ctx); - for my $ctx (@ctx) { - my ($clen, $cindent) = line_stats($ctx); - if ($ctx =~ /^\+\s*(case\s+|default:)/ && - $indent != $cindent) { - $err .= "$sep$ctx\n"; - $sep = ''; - } else { - $sep = "[...]\n"; - } - } - if ($err ne '') { - ERROR("SWITCH_CASE_INDENT_LEVEL", - "switch and case should be at the same indent\n$hereline$err"); - } - } +# if ($line=~/\bswitch\s*\(.*\)/) { +# my $err = ''; +# my $sep = ''; +# my @ctx = ctx_block_outer($linenr, $realcnt); +# shift(@ctx); +# for my $ctx (@ctx) { +# my ($clen, $cindent) = line_stats($ctx); +# if ($ctx =~ /^\+\s*(case\s+|default:)/ && +# $indent != $cindent) { +# $err .= "$sep$ctx\n"; +# $sep = ''; +# } else { +# $sep = "[...]\n"; +# } +# } +# if ($err ne '') { +# ERROR("SWITCH_CASE_INDENT_LEVEL", +# "switch and case should be at the same indent\n$hereline$err"); +# } +# } # if/while/etc brace do not go on next line, unless defining a do while loop, # or if that brace on the next line is for something else @@ -1965,7 +1968,7 @@ sub process { #print "line<$line> prevline<$prevline> indent<$indent> sindent<$sindent> check<$check> continuation<$continuation> s<$s> cond_lines<$cond_lines> stat_real<$stat_real> stat<$stat>\n"; - if ($check && (($sindent % 8) != 0 || + if ($check && (($sindent % 4) != 0 || ($sindent <= $indent && $s ne ''))) { WARN("SUSPECT_CODE_INDENT", "suspect code indent for conditional statements ($indent, $sindent)\n" . $herecurr . "$stat_real\n"); @@ -2121,14 +2124,14 @@ sub process { # check for new typedefs, only function parameters and sparse annotations # make sense. - if ($line =~ /\btypedef\s/ && - $line !~ /\btypedef\s+$Type\s*\(\s*\*?$Ident\s*\)\s*\(/ && - $line !~ /\btypedef\s+$Type\s+$Ident\s*\(/ && - $line !~ /\b$typeTypedefs\b/ && - $line !~ /\b__bitwise(?:__|)\b/) { - WARN("NEW_TYPEDEFS", - "do not add new typedefs\n" . $herecurr); - } +# if ($line =~ /\btypedef\s/ && +# $line !~ /\btypedef\s+$Type\s*\(\s*\*?$Ident\s*\)\s*\(/ && +# $line !~ /\btypedef\s+$Type\s+$Ident\s*\(/ && +# $line !~ /\b$typeTypedefs\b/ && +# $line !~ /\b__bitwise(?:__|)\b/) { +# WARN("NEW_TYPEDEFS", +# "do not add new typedefs\n" . $herecurr); +# } # * goes on variable not on type # (char*[ const]) @@ -2961,11 +2964,11 @@ sub process { } # no volatiles please - my $asm_volatile = qr{\b(__asm__|asm)\s+(__volatile__|volatile)\b}; - if ($line =~ /\bvolatile\b/ && $line !~ /$asm_volatile/) { - WARN("VOLATILE", - "Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt\n" . $herecurr); - } +# my $asm_volatile = qr{\b(__asm__|asm)\s+(__volatile__|volatile)\b}; +# if ($line =~ /\bvolatile\b/ && $line !~ /$asm_volatile/) { +# WARN("VOLATILE", +# "Use of volatile is usually wrong: see Documentation/volatile-considered-harmful.txt\n" . $herecurr); +# } # warn about #if 0 if ($line =~ /^.\s*\#\s*if\s+0\b/) { @@ -3064,16 +3067,16 @@ sub process { } # Check for __attribute__ packed, prefer __packed - if ($line =~ /\b__attribute__\s*\(\s*\(.*\bpacked\b/) { - WARN("PREFER_PACKED", - "__packed is preferred over __attribute__((packed))\n" . $herecurr); - } +# if ($line =~ /\b__attribute__\s*\(\s*\(.*\bpacked\b/) { +# WARN("PREFER_PACKED", +# "__packed is preferred over __attribute__((packed))\n" . $herecurr); +# } # Check for __attribute__ aligned, prefer __aligned - if ($line =~ /\b__attribute__\s*\(\s*\(.*aligned/) { - WARN("PREFER_ALIGNED", - "__aligned(size) is preferred over __attribute__((aligned(size)))\n" . $herecurr); - } +# if ($line =~ /\b__attribute__\s*\(\s*\(.*aligned/) { +# WARN("PREFER_ALIGNED", +# "__aligned(size) is preferred over __attribute__((aligned(size)))\n" . $herecurr); +# } # check for sizeof(&) if ($line =~ /\bsizeof\s*\(\s*\&/) { @@ -3088,34 +3091,34 @@ sub process { } # check for new externs in .c files. - if ($realfile =~ /\.c$/ && defined $stat && - $stat =~ /^.\s*(?:extern\s+)?$Type\s+($Ident)(\s*)\(/s) - { - my $function_name = $1; - my $paren_space = $2; - - my $s = $stat; - if (defined $cond) { - substr($s, 0, length($cond), ''); - } - if ($s =~ /^\s*;/ && - $function_name ne 'uninitialized_var') - { - WARN("AVOID_EXTERNS", - "externs should be avoided in .c files\n" . $herecurr); - } - - if ($paren_space =~ /\n/) { - WARN("FUNCTION_ARGUMENTS", - "arguments for function declarations should follow identifier\n" . $herecurr); - } - - } elsif ($realfile =~ /\.c$/ && defined $stat && - $stat =~ /^.\s*extern\s+/) - { - WARN("AVOID_EXTERNS", - "externs should be avoided in .c files\n" . $herecurr); - } +# if ($realfile =~ /\.c$/ && defined $stat && +# $stat =~ /^.\s*(?:extern\s+)?$Type\s+($Ident)(\s*)\(/s) +# { +# my $function_name = $1; +# my $paren_space = $2; +# +# my $s = $stat; +# if (defined $cond) { +# substr($s, 0, length($cond), ''); +# } +# if ($s =~ /^\s*;/ && +# $function_name ne 'uninitialized_var') +# { +# WARN("AVOID_EXTERNS", +# "externs should be avoided in .c files\n" . $herecurr); +# } +# +# if ($paren_space =~ /\n/) { +# WARN("FUNCTION_ARGUMENTS", +# "arguments for function declarations should follow identifier\n" . $herecurr); +# } +# +# } elsif ($realfile =~ /\.c$/ && defined $stat && +# $stat =~ /^.\s*extern\s+/) +# { +# WARN("AVOID_EXTERNS", +# "externs should be avoided in .c files\n" . $herecurr); +# } # checks for new __setup's if ($rawline =~ /\b__setup\("([^"]*)"/) {