+++ /dev/null
-#! /usr/bin/perl
-#
-%DirCount = ();
-%ModCount = ();
-%DirComments = ();
-%ModComments = ();
-
-foreach $f ( @ARGV ) {
-
- if ( $f =~ /\.lhs$/ ) {
- open(INF, "../utils/unlit/unlit $f - |") || die "Couldn't unlit $f!\n";
- } else {
- open(INF, "< $f") || die "Couldn't open $f!\n";
- }
- $cnt = 0;
- while (<INF>) {
- s/--.*//;
- s/{-.*-}//;
- next if /^\s*$/;
- $cnt++;
- }
- close(INF);
-
- $f_wc = `wc $f`; die "wc failed: $f\n" if $? != 0;
- if ( $f_wc =~ /\s*(\d+)\s*(\d+)\s*(\d+)/ ) {
- $comments = $1 - $cnt;
- } else {
- die "Can't grok wc format: $f_wc";
- }
-
- if ( $f =~ /(.*)\/(.*)/ ) {
- local($dir) = $1;
- local($mod) = $2;
- $DirCount{$dir} += $cnt;
- $ModCount{$mod} += $cnt;
- $DirComments{$dir} += $comments;
- $ModComments{$mod} += $comments;
- } else {
- print STDERR "not counted in a directory: $f\n";
- $ModCount{$f} += $cnt;
- $ModComments{$f} += $comments;
- }
-}
-
-# print the info
-$tot = 0;
-$totcmts = 0;
-foreach $d (sort (keys %DirCount)) {
- printf "%-20s %6d %6d\n", $d, $DirCount{$d}, $DirComments{$d};
- $tot += $DirCount{$d};
- $totcmts += $DirComments{$d};
-}
-printf "\n%-20s %6d %6d\n\n\n", 'TOTAL:', $tot, $totcmts;
-
-$tot = 0;
-$totcmts = 0;
-printf "\n Code Comments\n";
-foreach $m (sort (keys %ModCount)) {
- printf "%-20s %6d %6d\n", $m, $ModCount{$m}, $ModComments{$m};
- $tot += $ModCount{$m};
- $totcmts += $ModComments{$m};
-}
-printf "\n%-20s %6d %6d\n", 'TOTAL:', $tot, $totcmts;