[dpdk-dev,3/3] scripts: check wrong patterns in maintainers file

Message ID 1423088604-29274-4-git-send-email-thomas.monjalon@6wind.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Thomas Monjalon Feb. 4, 2015, 10:23 p.m. UTC
  Each F or X pattern is checked and printed if there is no match
with a file in the repository.

The wildcard must be temporarily replaced to prevent from shell expansion.

Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
 scripts/check-maintainers.sh | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)
  

Patch

diff --git a/scripts/check-maintainers.sh b/scripts/check-maintainers.sh
index 2687cad..e62217e 100755
--- a/scripts/check-maintainers.sh
+++ b/scripts/check-maintainers.sh
@@ -88,6 +88,20 @@  parse_fx () # <index file>
 	done
 }
 
+# Check patterns in F: and X:
+check_fx () # <index file>
+{
+	IFS='
+'
+	for line in $(sed -n 's,^[FX]: ,,p' $1 | tr '*' '#') ; do
+		line=$(printf "$line" | tr '#' '*')
+		match=$(files "$line")
+		if [ -z "$match" ] ; then
+			echo "$line"
+		fi
+	done
+}
+
 # Add a line to a set of lines if it begins with right pattern
 add_line_to_if () # <new line> <lines> <head pattern>
 {
@@ -112,6 +126,10 @@  echo '# files not listed'
 echo '##########'
 aminusb "$all" "$listed"
 
-# TODO: check patterns that match nothing
+echo '##########'
+echo '# wrong patterns'
+echo '##########'
+check_fx MAINTAINERS
+
 # TODO: check overlaps
 # TODO: check orphan areas