mirror of
https://github.com/libressl/portable.git
synced 2026-01-17 21:51:17 +01:00
59 lines
1.8 KiB
Bash
Executable File
59 lines
1.8 KiB
Bash
Executable File
#
|
|
# Copyright (c) 2014 Brent Cook
|
|
#
|
|
# Permission to use, copy, modify, and distribute this software for any
|
|
# purpose with or without fee is hereby granted, provided that the above
|
|
# copyright notice and this permission notice appear in all copies.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
#
|
|
#!/bin/sh
|
|
|
|
VERSION=$(cat VERSION)
|
|
DESTDIR=libressl-coverage-$VERSION
|
|
|
|
echo "This will generate a code coverage report under $DESTDIR"
|
|
echo
|
|
|
|
if [ "x$(which lcov)" = "x" ]; then
|
|
echo "'lcov' is required but not found!"
|
|
exit 1
|
|
fi
|
|
|
|
if [ "x$(which genhtml)" = "x" ]; then
|
|
echo "'genhtml' is required but not found!"
|
|
exit 1
|
|
fi
|
|
|
|
find -name '*.gcda' -o -name '*.gcno' -delete
|
|
rm -fr $DESTDIR
|
|
|
|
echo "Configuring to build with code coverage support"
|
|
./configure CFLAGS='-O0 -fprofile-arcs -ftest-coverage'
|
|
|
|
echo "Running all code paths"
|
|
make clean
|
|
make check
|
|
|
|
echo "Generating report"
|
|
mkdir -p $DESTDIR
|
|
find tests -name '*.gcda' -o -name '*.gcno' -delete
|
|
lcov --capture --output-file $DESTDIR/coverage.tmp \
|
|
--rc lcov_branch_coverage=1 \
|
|
--directory crypto \
|
|
--directory ssl \
|
|
--directory tls \
|
|
--test-name "LibreSSL $VERSION"
|
|
genhtml --prefix . --output-directory $DESTDIR \
|
|
--branch-coverage --function-coverage \
|
|
--rc lcov_branch_coverage=1 \
|
|
--title "LibreSSL $VERSION" --legend --show-detail $DESTDIR/coverage.tmp
|
|
|
|
echo "Code coverage report is available under $DESTDIR"
|