lcov-report/lcov-report.sh |  116 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 116 insertions(+)

New commits:
commit a9b64f309fdae9135d7223f0aec55d95a7517f13
Author: Maarten Hoes <[email protected]>
Date:   Sat Nov 8 23:10:51 2014 +0100

    shell script to generate lcov code coverage reports.
    
    Change-Id: I684207b6aad4549a9f333ab800dae0ed0b507bab
    Reviewed-on: https://gerrit.libreoffice.org/12315
    Reviewed-by: Norbert Thiebaud <[email protected]>
    Tested-by: Norbert Thiebaud <[email protected]>

diff --git a/lcov-report/lcov-report.sh b/lcov-report/lcov-report.sh
new file mode 100755
index 0000000..7f5c2b6
--- /dev/null
+++ b/lcov-report/lcov-report.sh
@@ -0,0 +1,116 @@
+#!/bin/sh
+
+SRC_DIR=/home/buildslave/source/libo-core
+TRACEFILE_DIR=/home/buildslave/lcov
+HTML_DIR=/home/buildslave/lcov/html
+
+if [ ! -d "$SRC_DIR" ]
+then
+       echo "ERROR: Failed to locate directory $SRC_DIR" >&2
+       exit 1
+fi
+
+rm -rf "$TRACEFILE_DIR" "$HTML_DIR"
+
+mkdir "$TRACEFILE_DIR"
+if [ "$?" != "0" ]
+then
+       echo "ERROR: Failed to create directory $TRACEFILE_DIR" >&2
+fi
+
+mkdir "$HTML_DIR"
+if [ "$?" != "0" ]
+then
+       echo "ERROR: Failed to create directory $HTML_DIR" >&2
+fi
+
+lcov --zerocounters --directory "$SRC_DIR"
+
+cd "$SRC_DIR"
+make distclean
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: make distclean failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+./autogen.sh
+
+LDFLAGS+='-fprofile-arcs' CFLAGS+='-fprofile-arcs -ftest-coverage' 
CXXFLAGS+='-fprofile-arcs -ftest-coverage' CPPFLAGS+='-fprofile-arcs 
-ftest-coverage' ./configure --disable-online-update --without-system-libs 
--without-system-headers
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: configure failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+make build-nocheck
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: make build-nocheck failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+
+lcov --rc geninfo_auto_base=1 --no-external --capture --initial --directory 
"$SRC_DIR" --output-file "$TRACEFILE_DIR"/libreoffice_base.info
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: tracefile $TRACEFILE_DIR/libreoffice_base.info generation 
failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+make check
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: make check failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+lcov --rc geninfo_auto_base=1 --no-external --capture --directory "$SRC_DIR" 
--output-file "$TRACEFILE_DIR"/libreoffice_test.info
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: tracefile $TRACEFILE_DIR/libreoffice_test.info generation 
failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+lcov --rc geninfo_auto_base=1 --add-tracefile 
"$TRACEFILE_DIR"/libreoffice_base.info --add-tracefile 
"$TRACEFILE_DIR"/libreoffice_test.info --output-file 
"$TRACEFILE_DIR"/libreoffice_total.info
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: tracefile generation $TRACEFILE_DIR/libreoffice_total.info 
failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+lcov --rc geninfo_auto_base=1 --remove "$TRACEFILE_DIR"/libreoffice_total.info 
 "/usr/include/*" "/usr/lib/*" "$SRC_DIR/*/UnpackedTarball/*" 
"$SRC_DIR/workdir/*" "$SRC_DIR/instdir/*" "$SRC_DIR/external/*" -o 
"$TRACEFILE_DIR"/libreoffice_filtered.info
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo "ERROR: tracefile generation 
$TRACEFILE_DIR/libreoffice_filtered.info failed with exitcode $MY_EXITCODE" >&2
+       exit "$MY_EXITCODE"
+fi
+
+cd "$SRC_DIR"
+COMMIT_SHA1=$(git log --date=iso | head -3 | awk '/^commit/ {print $2}')
+COMMIT_DATE=$(git log --date=iso | head -3 | awk '/^Date/ {print $2}')
+COMMIT_TIME=$(git log --date=iso | head -3 | awk '/^Date/ {print $3}')
+mkdir "$HTML_DIR"/master~"$COMMIT_DATE"_"$COMMIT_TIME"
+MY_EXITCODE=$?
+if [ ! -d "$HTML_DIR"/master~"$COMMIT_DATE"_"$COMMIT_TIME" ]
+then
+       echo >&2 ERROR: failed to create subdirectory in 
$HTML_DIR/master~"$COMMIT_DATE"_"$COMMIT_TIME" with exitcode $MY_EXITCODE
+       exit "$MY_EXITCODE"
+fi
+
+genhtml --rc geninfo_auto_base=1 --prefix "$SRC_DIR" --ignore-errors source 
"$TRACEFILE_DIR"/libreoffice_filtered.info --legend --title "commit 
$COMMIT_SHA1" 
--output-directory="$HTML_DIR"/master~"$COMMIT_DATE"_"$COMMIT_TIME"
+MY_EXITCODE=$?
+if [ "$MY_EXITCODE" != "0" ]
+then
+       echo >&2 ERROR: Generation of html files in 
$HTML_DIR/master~"$COMMIT_DATE"_"$COMMIT_TIME" failed with exitcode $MY_EXITCODE
+       exit "$MY_EXITCODE"
+fi
+
_______________________________________________
Libreoffice-commits mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to