tomcrypt/coverage.sh

57 lines
1.4 KiB
Bash
Raw Normal View History

2016-04-03 11:45:16 -04:00
#!/bin/bash
set -e
if [ "$TRAVIS_CI" == "private" ]; then
exit 0
fi
2016-04-03 11:45:16 -04:00
if [ "$#" != "5" ]; then
echo "Usage is: ${0} \"coverage\" \"<prepend CFLAGS>\" \"<makefile>\" \"<append CFLAGS>\" <math library to link to>"
2016-04-03 11:45:16 -04:00
echo "CC=gcc ${0} \"coverage\" \" \" \"makefile\" \"-DUSE_LTM -DLTM_DESC -I../libtommath\" ../libtommath/libtommath.a"
exit -1
fi
2014-05-05 05:06:40 -04:00
if [ -z "$(echo $CC | grep "gcc")" ]; then
echo "no gcc detected, early exit success"
exit 0
fi
# output version
bash printinfo.sh
2016-04-03 11:45:16 -04:00
bash build.sh " $1" " $2" " $3 COVERAGE=1" "$4 -fprofile-arcs -ftest-coverage " "$5 -lgcov"
2014-05-05 05:06:40 -04:00
if [ -a testok.txt ] && [ -f testok.txt ]; then
echo
else
echo
echo "Test failed"
exit 1
2014-05-05 05:06:40 -04:00
fi
./sizes
./constants
2017-04-23 16:04:39 -04:00
2017-04-23 10:10:01 -04:00
for i in $(./hashsum | tail -n +3 | awk '{print $1}' | sort); do echo -n "$i: " && ./hashsum $i testprof/test.key ; done > hashsum_tv.txt
difftroubles=$(diff -i -w -B hashsum_tv.txt notes/hashsum_tv.txt | grep '^<') || true
if [ -n "$difftroubles" ]; then
echo "FAILURE: hashsum_tv.tx"
diff -i -w -B hashsum_tv.txt notes/hashsum_tv.txt
echo "hashsum failed" && rm -f testok.txt && exit 1
else
echo "hashsum okay"
fi
2016-04-03 11:45:16 -04:00
# if this was executed as './coverage.sh ...' create coverage locally
if [[ "${0%% *}" == "./${0##*/}" ]]; then
make lcov-single
2016-04-03 11:45:16 -04:00
else
cpp-coveralls -e 'demos/' -e 'testprof/' -e 'notes/' -e 'src/headers/'
2016-04-03 11:45:16 -04:00
fi
2014-05-05 05:06:40 -04:00
exit 0
# $Source$
# $Revision$
# $Date$