scripts/get_maintainer.pl: Add -f directory use

Don't require a specific file in a directory to be tested.

Also Arnd Bergmann pointed out that the MAINTAINERS pattern requirement
that directory patterns have a trailing slash was unnecessary and was
likely to be error prone.  Removed that requirement.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Joe Perches 2009-07-29 15:04:28 -07:00 committed by Linus Torvalds
parent 82c4dfc762
commit 870020f93a
1 changed files with 19 additions and 4 deletions

View File

@ -13,7 +13,7 @@
use strict;
my $P = $0;
my $V = '0.16';
my $V = '0.17';
use Getopt::Long qw(:config no_auto_abbrev);
@ -132,6 +132,10 @@ while (<MAINT>) {
$value =~ s@\.@\\\.@g; ##Convert . to \.
$value =~ s/\*/\.\*/g; ##Convert * to .*
$value =~ s/\?/\./g; ##Convert ? to .
##if pattern is a directory and it lacks a trailing slash, add one
if ((-d $value)) {
$value =~ s@([^/])$@$1/@;
}
}
push(@typevalue, "$type:$value");
} elsif (!/^(\s)*$/) {
@ -146,8 +150,10 @@ close(MAINT);
my @files = ();
foreach my $file (@ARGV) {
next if ((-d $file));
if (!(-f $file)) {
##if $file is a directory and it lacks a trailing slash, add one
if ((-d $file)) {
$file =~ s@([^/])$@$1/@;
} elsif (!(-f $file)) {
die "$P: file '${file}' not found\n";
}
if ($from_filename) {
@ -292,7 +298,7 @@ sub file_match_pattern {
sub usage {
print <<EOT;
usage: $P [options] patchfile
$P [options] -f file
$P [options] -f file|directory
version: $V
MAINTAINER field selection options:
@ -322,6 +328,15 @@ Other options:
--version => show version
--help => show this help information
Notes:
Using "-f directory" may give unexpected results:
Used with "--git", git signators for _all_ files in and below
directory are examined as git recurses directories.
Any specified X: (exclude) pattern matches are _not_ ignored.
Used with "--nogit", directory is used as a pattern match,
no individual file within the directory or subdirectory
is matched.
EOT
}