author | Peter D. Barnes, Jr. <barnes26@llnl.gov> |
Tue, 10 Dec 2013 08:02:07 -0800 | |
changeset 10484 | 6c6d67b4f11b |
parent 10478 | dc507f7d14a4 |
child 10502 | 4a88e660fcdb |
permissions | -rwxr-xr-x |
8915
7ad2ae0f57cc
Script to summarize doxygen.warnings.log
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
diff
changeset
|
1 |
#!/bin/bash |
7ad2ae0f57cc
Script to summarize doxygen.warnings.log
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
diff
changeset
|
2 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
3 |
# Process doxygen log to generate sorted list of top offenders. |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
4 |
# |
10460
210b3cf4ea00
improve numerical sorting, and support for analyzing existing file
Tom Henderson <tomh@tomh.org>
parents:
9971
diff
changeset
|
5 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
6 |
me=$(basename $0) |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
7 |
DIR="$(dirname $0)" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
8 |
ROOT="$(hg root)" |
10460
210b3cf4ea00
improve numerical sorting, and support for analyzing existing file
Tom Henderson <tomh@tomh.org>
parents:
9971
diff
changeset
|
9 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
10 |
# Known log files |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
11 |
STANDARDLOGFILE=doxygen.log |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
12 |
WARNINGSLOGFILE=doxygen.warnings.log |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
13 |
# Default choice: generate it |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
14 |
LOG="$DIR/$WARNINGSLOGFILE" |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
15 |
|
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
16 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
17 |
# Options ------------------------------ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
18 |
# |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
19 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
20 |
function usage |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
21 |
{ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
22 |
cat <<-EOF |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
23 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
24 |
Usage: $me [-eth] [-f <log-file> | -l | -s] [-m <module> | -F <regex>] |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
25 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
26 |
Run doxygen to generate all errors; report error counts |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
27 |
by module and file. |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
28 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
29 |
The default behavior is to modify doxygen.conf temporarily to |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
30 |
report all undocumented elements, and to reduce the run time. |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
31 |
The output of this special run is kept in doc/$WARNINGSLOGFILE. |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
32 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
33 |
The -e and -t options exclude examples and test directories |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
34 |
from the counts. The -m option only includes a specific module. |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
35 |
The -F option only includes files (or warnings) matching the <regex>. |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
36 |
The -m and -F options append the relevant warnings after the |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
37 |
numerical report. These can be used in any combination. |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
38 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
39 |
-e Filter out warnings from */examples/* |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
40 |
-t Filter out warnings from */test/* |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
41 |
-m Only include files matching src/<module> |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
42 |
-F Only include files matching the <regex> |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
43 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
44 |
The -f, -l, and -s options skip the doxygen run altogether. |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
45 |
The first two use a specified or the standard log file; |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
46 |
the -s option uses the warnings log from a prior run. |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
47 |
Only the first of -f <log-file>, -s, or -l will have effect. |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
48 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
49 |
-f Skip doxygen run; use existing <log-file>. |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
50 |
-s Skip doxygen run; use existing warnings log doc/$WARNINGSLOGFILE |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
51 |
-l Skip doxygen run; use the normal doxygen log doc/$STANDARDLOGFILE |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
52 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
53 |
-h Print this usage message |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
54 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
55 |
EOF |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
56 |
exit 1 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
57 |
} |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
58 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
59 |
# Argument processing ------------------ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
60 |
# |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
61 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
62 |
# -f argument |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
63 |
usefilearg=0 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
64 |
logfilearg= |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
65 |
# -l |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
66 |
usestandard=0 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
67 |
# skip doxygen run; using existing log file |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
68 |
SKIPDOXY=0 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
69 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
70 |
# Filtering flags |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
71 |
filter_examples=0 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
72 |
filter_test=0 |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
73 |
filter_module="" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
74 |
filter_regex="" |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
75 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
76 |
while getopts :etm:F:lF:sh option ; do |
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
77 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
78 |
case $option in |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
79 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
80 |
(e) filter_examples=1 ;; |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
81 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
82 |
(t) filter_test=1 ;; |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
83 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
84 |
(m) filter_module="$OPTARG" ;; |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
85 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
86 |
(F) filter_regex="$OPTARG" ;; |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
87 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
88 |
(l) usestandard=1 ;; |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
89 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
90 |
(f) usefilearg=1 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
91 |
logfilearg="$OPTARG" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
92 |
;; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
93 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
94 |
(s) usefilearg=1 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
95 |
logfilearg="$DIR/$WARNINGSLOGFILE" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
96 |
;; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
97 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
98 |
(h) usage ;; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
99 |
(:) echo "$me: Missing argument to -$OPTARG" ; usage ;; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
100 |
(\?) echo "$me: Invalid option: -$OPTARG" ; usage ;; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
101 |
esac |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
102 |
done |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
103 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
104 |
function checklogfile |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
105 |
{ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
106 |
if [ -e "$1" ] ; then |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
107 |
SKIPDOXY=1 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
108 |
LOG="$1" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
109 |
else |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
110 |
echo "$me: log file $1 does not exist." |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
111 |
exit 1 |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
112 |
fi |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
113 |
} |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
114 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
115 |
# Which log file |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
116 |
if [[ $usefilearg -eq 1 && "${logfilearg:-}" != "" ]] ; then |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
117 |
checklogfile "$logfilearg" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
118 |
elif [ $usestandard -eq 1 ]; then |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
119 |
checklogfile "$DIR/$STANDARDLOGFILE" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
120 |
fi |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
121 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
122 |
# Run doxygen ------------------------- |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
123 |
# |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
124 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
125 |
if [ $SKIPDOXY -eq 1 ]; then |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
126 |
echo |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
127 |
echo "Skipping doxygen run, using existing log file $LOG" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
128 |
else |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
129 |
|
9866
87f281b5e6ed
Run introspection before doing doxygen warnings report
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9863
diff
changeset
|
130 |
# Run introspection, which may require a build |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
131 |
(cd "$ROOT" && ./waf --run print-introspected-doxygen >doc/introspected-doxygen.h) |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
132 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
133 |
# Modify doxygen.conf to generate all the warnings |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
134 |
# (We also suppress dot graphs, so shorten the run time.) |
9866
87f281b5e6ed
Run introspection before doing doxygen warnings report
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9863
diff
changeset
|
135 |
|
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
136 |
conf=$DIR/doxygen.conf |
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
137 |
|
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
138 |
sed -i.bak -E '/^EXTRACT_ALL |^HAVE_DOT |^WARNINGS /s/YES/no/' $conf |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
139 |
rm -f $conf.bak |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
140 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
141 |
echo |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
142 |
echo -n "Rebuilding doxygen docs with full errors..." |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
143 |
(cd "$ROOT" && ./waf --doxygen >/dev/null 2>&1) |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
144 |
status=$? |
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
145 |
|
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
146 |
hg revert $conf |
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
147 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
148 |
if [ $status -eq 0 ]; then |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
149 |
echo "Done." |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
150 |
else |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
151 |
echo "FAILED." |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
152 |
exit 1 |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
153 |
fi |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
154 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
155 |
cp -f "$DIR/$STANDARDLOGFILE" "$DIR/$WARNINGSLOGFILE" |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
156 |
|
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
157 |
fi |
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
158 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
159 |
# Log filters -------------------------- |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
160 |
# |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
161 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
162 |
# Filter regular expression for -m and -F |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
163 |
filter_inRE="" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
164 |
if [ "$filter_module" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
165 |
filter_inRE="src/$filter_module" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
166 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
167 |
if [ "$filter_regex" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
168 |
filter_inRE="${filter_inRE:-}${filter_inRE:+\\|}$filter_regex" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
169 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
170 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
171 |
# Filter regular expression for -e and -t |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
172 |
filter_outRE="" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
173 |
if [ $filter_examples -eq 1 ]; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
174 |
filter_outRE="/examples/" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
175 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
176 |
if [ $filter_test -eq 1 ]; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
177 |
filter_outRE="${filter_outRE:-}${filter_outRE:+\\|}/test/" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
178 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
179 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
180 |
if [ "${filter_inRE:-}" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
181 |
echo "Filtering in \"$filter_inRE\"" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
182 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
183 |
if [ "${filter_outRE:-}" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
184 |
echo "Filtering out \"$filter_outRE\"" |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
185 |
fi |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
186 |
echo |
9126
e3472695ddb9
Preserve doxygen.warnings.log from last report.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9123
diff
changeset
|
187 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
188 |
# Filter log file |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
189 |
function filter_log |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
190 |
{ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
191 |
local flog; |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
192 |
flog=$( cat "$LOG" | grep "^$ROOT" ) |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
193 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
194 |
if [ "${filter_inRE:-}" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
195 |
flog=$( echo "$flog" | grep "$filter_inRE" ) |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
196 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
197 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
198 |
if [ "${filter_outRE:-}" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
199 |
flog=$( echo "$flog" | grep -v "$filter_outRE" ) |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
200 |
fi |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
201 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
202 |
echo "$flog" |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
203 |
} |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
204 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
205 |
|
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
206 |
# Analyze the log ---------------------- |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
207 |
# |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
208 |
|
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
209 |
# List of module directories (e.g, "src/core/model") |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
210 |
undocmods=$( \ |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
211 |
filter_log | \ |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
212 |
cut -d ':' -f 1 | \ |
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
213 |
sed "s|$ROOT/||g" | \ |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
214 |
cut -d '/' -f 2-4 | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
215 |
sort | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
216 |
uniq -c | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
217 |
sort -nr \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
218 |
) |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
219 |
|
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
220 |
|
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
221 |
# Number of directories |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
222 |
modcount=$( \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
223 |
echo "$undocmods" | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
224 |
wc -l | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
225 |
sed 's/^[ \t]*//;s/[ \t]*$//' \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
226 |
) |
9126
e3472695ddb9
Preserve doxygen.warnings.log from last report.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9123
diff
changeset
|
227 |
|
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
228 |
# For a function with multiple undocumented parameters, |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
229 |
# Doxygen prints the additional parameters on separate lines, |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
230 |
# so they don't show up in the totals above. |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
231 |
# Rather than work too hard to get the exact number for each file, |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
232 |
# we just list the total here. |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
233 |
addlparam=$( \ |
10471
a3edb241f204
Tweak sorting of files.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10470
diff
changeset
|
234 |
grep "^ parameter '" "$LOG" | \ |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
235 |
wc -l | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
236 |
sed 's/^[ \t]*//;s/[ \t]*$//' \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
237 |
) |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
238 |
|
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
239 |
# Total number of warnings |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
240 |
warncount=$( \ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
241 |
echo "$undocmods" | \ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
242 |
awk '{total += $1}; END {print total}' \ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
243 |
) |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
244 |
warncount=$((warncount + addlparam)) |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
245 |
|
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
246 |
# List of files appearing in the log |
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
247 |
undocfiles=$( \ |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
248 |
filter_log | \ |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
249 |
cut -d ':' -f 1 | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
250 |
sed "s|$ROOT||g" | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
251 |
cut -d '/' -f 2- | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
252 |
sort | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
253 |
uniq -c | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
254 |
sort -k 2 \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
255 |
) |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
256 |
|
9863
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
257 |
# Sorted by number, decreasing |
10471
a3edb241f204
Tweak sorting of files.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10470
diff
changeset
|
258 |
undocsort=$(echo "$undocfiles" | sort -k1nr,2 ) |
9863
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
259 |
|
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
260 |
# Total number of files |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
261 |
filecount=$( \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
262 |
echo "$undocfiles" | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
263 |
wc -l | \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
264 |
sed 's/^[ \t]*//;s/[ \t]*$//' \ |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
265 |
) |
9126
e3472695ddb9
Preserve doxygen.warnings.log from last report.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9123
diff
changeset
|
266 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
267 |
# Filtered in warnings |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
268 |
filterin= |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
269 |
if [ "${filter_inRE:-}" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
270 |
filterin=$( \ |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
271 |
filter_log | \ |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
272 |
sed "s|$ROOT/||g" \ |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
273 |
) |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
274 |
fi |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
275 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
276 |
|
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
277 |
|
10470
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
278 |
# Summarize the log -------------------- |
f860f4c2046d
doxygen.warnings.report.sh new functionality.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10460
diff
changeset
|
279 |
# |
9123
a2c0863500a9
[Bug 1521] Use custom doxygen run to log all errors in doxygen.warnings.report.sh
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9120
diff
changeset
|
280 |
|
8915
7ad2ae0f57cc
Script to summarize doxygen.warnings.log
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
diff
changeset
|
281 |
echo |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
282 |
echo "Report of Doxygen warnings" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
283 |
echo "----------------------------------------" |
8915
7ad2ae0f57cc
Script to summarize doxygen.warnings.log
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
diff
changeset
|
284 |
echo |
9120
9dc069207a90
[Bug 1521] Have doxygen log more warnings; remove obsolete items from log report script.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
8915
diff
changeset
|
285 |
echo "(All counts are lower bounds.)" |
8915
7ad2ae0f57cc
Script to summarize doxygen.warnings.log
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
diff
changeset
|
286 |
echo |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
287 |
echo "Warnings by module/directory:" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
288 |
echo |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
289 |
echo "Count Directory" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
290 |
echo "----- ----------------------------------" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
291 |
echo "$undocmods" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
292 |
echo " $addlparam additional undocumented parameters." |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
293 |
echo "----------------------------------------" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
294 |
printf "%6d total warnings\n" $warncount |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
295 |
printf "%6d directories with warnings\n" $modcount |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
296 |
echo |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
297 |
echo |
9863
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
298 |
echo "Warnings by file (alphabetical)" |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
299 |
echo |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
300 |
echo "Count File" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
301 |
echo "----- ----------------------------------" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
302 |
echo "$undocfiles" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
303 |
echo "----------------------------------------" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
304 |
printf "%6d files with warnings\n" $filecount |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
305 |
echo |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
306 |
echo |
9863
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
307 |
echo "Warnings by file (numerical)" |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
308 |
echo |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
309 |
echo "Count File" |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
310 |
echo "----- ----------------------------------" |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
311 |
echo "$undocsort" |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
312 |
echo "----------------------------------------" |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
313 |
printf "%6d files with warnings\n" $filecount |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
314 |
echo |
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
315 |
echo |
9139
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
316 |
echo "Doxygen Warnings Summary" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
317 |
echo "----------------------------------------" |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
318 |
printf "%6d directories\n" $modcount |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
319 |
printf "%6d files\n" $filecount |
9e2f5cd09b7e
Doxygen warnings report updates
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9126
diff
changeset
|
320 |
printf "%6d warnings\n" $warncount |
9863
989d8bc8f59f
Show files with doxygen warnings in numerical order
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
9139
diff
changeset
|
321 |
|
10484
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
322 |
if [ "$filterin" != "" ] ; then |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
323 |
echo |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
324 |
echo |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
325 |
echo "Filtered Warnings" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
326 |
echo "========================================" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
327 |
echo "$filterin" |
6c6d67b4f11b
Add options to filter by module or regular expression.
Peter D. Barnes, Jr. <barnes26@llnl.gov>
parents:
10478
diff
changeset
|
328 |
fi |