mirror of
https://github.com/sheumann/hush.git
synced 2024-12-27 16:31:24 +00:00
41 lines
934 B
Awk
Executable File
41 lines
934 B
Awk
Executable File
#!/usr/bin/awk -f
|
|
# AWK script to check for missing help entries for config options
|
|
#
|
|
# Copyright (C) 2006 Bernhard Fischer
|
|
#
|
|
# This file is distributed under the terms and conditions of the
|
|
# MIT/X public licenses. See http://opensource.org/licenses/mit-license.html
|
|
# and notice http://www.gnu.org/licenses/license-list.html#X11License
|
|
|
|
|
|
/^choice/ { is_choice = 1; }
|
|
/^endchoice/ { is_choice = 0; }
|
|
/^config/ {
|
|
pos++;
|
|
conf[pos] = $2;
|
|
file[pos] = FILENAME;
|
|
if (is_choice) {
|
|
help[pos] = 1; # do not warn about 'choice' config entries.
|
|
} else {
|
|
help[pos] = 0;
|
|
}
|
|
}
|
|
/^[ \t]*help[ \t]*$/ {
|
|
help[pos] = 1;
|
|
}
|
|
/^[ \t]*bool[ \t]*$/ {
|
|
help[pos] = 1; # ignore options which are not selectable
|
|
}
|
|
BEGIN {
|
|
pos = -1;
|
|
is_choice = 0;
|
|
}
|
|
END {
|
|
for (i = 0; i <= pos; i++) {
|
|
# printf("%s: help for #%i '%s' == %i\n", file[i], i, conf[i], help[i]);
|
|
if (help[i] == 0) {
|
|
printf("%s: No helptext for '%s'\n", file[i], conf[i]);
|
|
}
|
|
}
|
|
}
|