Jani Nikula proposes patches to add a few new letter prefixes
for "B:" bug reporting and "C:" maintainer chatting to the
various sections of MAINTAINERS.

Add a generic mechanism to get_maintainer.pl to find sections that
have any combination of "[A-Z]" letter prefix types in a section.

Signed-off-by: Joe Perches <[email protected]>
---
 scripts/get_maintainer.pl | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/scripts/get_maintainer.pl b/scripts/get_maintainer.pl
index aed4511f0304..633f2dd3de27 100755
--- a/scripts/get_maintainer.pl
+++ b/scripts/get_maintainer.pl
@@ -49,6 +49,7 @@ my $scm = 0;
 my $web = 0;
 my $subsystem = 0;
 my $status = 0;
+my $letters = "";
 my $keywords = 1;
 my $sections = 0;
 my $file_emails = 0;
@@ -241,6 +242,7 @@ if (!GetOptions(
                'status!' => \$status,
                'scm!' => \$scm,
                'web!' => \$web,
+               'letters=s' => \$letters,
                'pattern-depth=i' => \$pattern_depth,
                'k|keywords!' => \$keywords,
                'sections!' => \$sections,
@@ -271,7 +273,8 @@ $output_multiline = 0 if ($output_separator ne ", ");
 $output_rolestats = 1 if ($interactive);
 $output_roles = 1 if ($output_rolestats);
 
-if ($sections) {
+if ($sections || $letters ne "") {
+    $sections = 1;
     $email = 0;
     $email_list = 0;
     $scm = 0;
@@ -682,8 +685,10 @@ sub get_maintainers {
                        $line =~ s/\\\./\./g;           ##Convert \. to .
                        $line =~ s/\.\*/\*/g;           ##Convert .* to *
                    }
-                   $line =~ s/^([A-Z]):/$1:\t/g;
-                   print("$line\n");
+                   my $count = $line =~ s/^([A-Z]):/$1:\t/g;
+                   if ($letters eq "" || (!$count || $letters =~ /$1/i)) {
+                       print("$line\n");
+                   }
                }
                print("\n");
            }
@@ -814,6 +819,7 @@ Other options:
   --pattern-depth => Number of pattern directory traversals (default: 0 (all))
   --keywords => scan patch for keywords (default: $keywords)
   --sections => print all of the subsystem sections with pattern matches
+  --letters => print all matching 'letter' types from all matching sections
   --mailmap => use .mailmap file (default: $email_use_mailmap)
   --version => show version
   --help => show this help information

Reply via email to