blob: 94843d6ffd985ba5cc1c08a7782afea5dbd6189f [file] [log] [blame]
Bernhard Reutner-Fischer3916b2a2006-05-04 11:38:33 +00001#!/usr/bin/awk -f
2# AWK script to check for missing help entries for config options
3#
Bernhard Reutner-Fischer6c4dade2008-09-25 12:13:34 +00004# Copyright (C) 2006 Bernhard Reutner-Fischer
Denis Vlasenko9213a9e2006-09-17 16:28:10 +00005#
Bernhard Reutner-Fischer3916b2a2006-05-04 11:38:33 +00006# This file is distributed under the terms and conditions of the
7# MIT/X public licenses. See http://opensource.org/licenses/mit-license.html
8# and notice http://www.gnu.org/licenses/license-list.html#X11License
9
10
11/^choice/ { is_choice = 1; }
12/^endchoice/ { is_choice = 0; }
13/^config/ {
14 pos++;
15 conf[pos] = $2;
16 file[pos] = FILENAME;
17 if (is_choice) {
18 help[pos] = 1; # do not warn about 'choice' config entries.
19 } else {
20 help[pos] = 0;
21 }
22}
Bernhard Reutner-Fischerd6bbf992006-11-22 09:39:48 +000023/^[ \t]*help[ \t]*$/ {
Bernhard Reutner-Fischer3916b2a2006-05-04 11:38:33 +000024 help[pos] = 1;
25}
Bernhard Reutner-Fischerd6bbf992006-11-22 09:39:48 +000026/^[ \t]*bool[ \t]*$/ {
Bernhard Reutner-Fischer0e413e52006-05-05 14:05:21 +000027 help[pos] = 1; # ignore options which are not selectable
28}
Bernhard Reutner-Fischer3916b2a2006-05-04 11:38:33 +000029BEGIN {
30 pos = -1;
31 is_choice = 0;
32}
33END {
Bernhard Reutner-Fischerd6bbf992006-11-22 09:39:48 +000034 for (i = 0; i <= pos; i++) {
Denys Vlasenko3581c622010-01-25 13:39:24 +010035# printf("%s: help for #%i '%s' == %i\n", file[i], i, conf[i], help[i]);
Bernhard Reutner-Fischer3916b2a2006-05-04 11:38:33 +000036 if (help[i] == 0) {
37 printf("%s: No helptext for '%s'\n", file[i], conf[i]);
38 }
39 }
40}