33 lines
876 B
Bash
Executable file
33 lines
876 B
Bash
Executable file
#!/bin/sh
|
|
|
|
# Generates statistics on pandoc: benchmarks and lines of code
|
|
# The stats are put in the stats directory, marked with date and revision hash.
|
|
|
|
STATSDIR=stats
|
|
mkdir $STATSDIR
|
|
|
|
DATE=`date +%Y_%m_%d`
|
|
REV=`git rev-parse --short HEAD`
|
|
|
|
EXT=$DATE.$REV
|
|
BENCH=$STATSDIR/benchmark.$EXT
|
|
LOC=$STATSDIR/loc.$EXT
|
|
SUMMARY=$STATSDIR/summary.$EXT
|
|
|
|
runghc Benchmark.hs > $BENCH
|
|
find src -name '*.hs' | xargs wc -l > $LOC
|
|
|
|
LOCSUM=`tail -1 $LOC | sed -Ee 's/^ *([0-9]+).*/\1/'`
|
|
|
|
echo "Revision $REV" > $SUMMARY
|
|
echo `date` >> $SUMMARY
|
|
echo "$LOCSUM lines of code" >> $SUMMARY
|
|
echo "" >> $SUMMARY
|
|
|
|
sed -nEe '/^(benchmarking|mean:)/p' $BENCH | \
|
|
sed -Ee '/benchmarking/N;s/\n/: /' | \
|
|
sed -Ee 's/benchmarking (.*)/\1/' | \
|
|
sed -Ee 's/mean: ([^ ]*) *([^,]*).*/\1:\2/' | \
|
|
awk 'BEGIN { FS = ": *" } ; { printf("%s:%7.2f %s\n", $1, $2, $3); }' | \
|
|
column -t -s ":" >> $SUMMARY
|
|
|