Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 1 | #! /bin/bash |
| 2 | |
Roland McGrath | 994b489 | 2005-12-05 22:46:21 +0000 | [diff] [blame] | 3 | if [ "x$1" = "x-v" ]; then |
| 4 | verbose=yes |
| 5 | else |
| 6 | verbose=no |
| 7 | fi |
| 8 | |
Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 9 | cd .. |
| 10 | |
Roland McGrath | e47ab76 | 2005-11-17 03:16:00 +0000 | [diff] [blame] | 11 | for d in lib libasm libdw libdwfl libebl libelf backends src; do |
Ulrich Drepper | 5a6f8d1 | 2005-08-30 17:56:53 +0000 | [diff] [blame] | 12 | tmp=$d-data |
Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 13 | cd $d |
| 14 | unused=0 |
Roland McGrath | 994b489 | 2005-12-05 22:46:21 +0000 | [diff] [blame] | 15 | unused_files= |
Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 16 | for f in *.gcno; do |
| 17 | base="$(basename $f .gcno)" |
| 18 | fc="$base.c" |
| 19 | gcda="$base.gcda" |
| 20 | if [ -f "$gcda" ]; then |
| 21 | gcov -n -a "$fc" | |
| 22 | gawk "/$d.$fc/ { getline; co=gensub(/.*:(.*)% .*/, \"\\\\1\", \"g\"); co=co+0.0; li=\$4+0; printf \"%-35s %6.2f %5d\n\", \"$d/$fc\", co, li } " >> $tmp |
| 23 | else |
| 24 | unused=$(($unused + 1)) |
Roland McGrath | 994b489 | 2005-12-05 22:46:21 +0000 | [diff] [blame] | 25 | unused_files="$unused_files $fc" |
Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 26 | fi |
| 27 | done |
Ulrich Drepper | 5a6f8d1 | 2005-08-30 17:56:53 +0000 | [diff] [blame] | 28 | if [ -f $tmp ]; then |
| 29 | gawk "{ copct=\$2; co=(\$3*copct)/100; toco+=(co+0); toli += (\$3+0); } END { printf \"%-12s %6.2f%% covered unused files: %3d\n\", \"$d\", (toco*100)/toli, \"$unused\" }" $tmp |
| 30 | rm -f $tmp |
| 31 | else |
| 32 | printf "%-12s 0.00%% covered unused files: %3d\n" "$d" $unused |
| 33 | fi |
Roland McGrath | 994b489 | 2005-12-05 22:46:21 +0000 | [diff] [blame] | 34 | if [ $verbose = yes ]; then |
| 35 | for f in $unused_files; do |
| 36 | printf '%-42s%s\n' '' $f |
| 37 | done |
| 38 | fi |
Ulrich Drepper | 39cec7a | 2005-08-30 01:22:01 +0000 | [diff] [blame] | 39 | cd .. |
| 40 | done |