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 at 6wind.com> --- scripts/check-maintainers.sh | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) 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 -- 2.2.2