35 lines
933 B
Bash
35 lines
933 B
Bash
#!/bin/bash
|
|
|
|
# We cheat and do this in a shell script so I don't go Makefile crazy.
|
|
|
|
SKIBOOT_GCOV_ADDR=$(perl -e "printf '0x%x', 0x30000000 + 0x$(grep gcov_info_list skiboot.map|cut -f 1 -d ' ')")
|
|
|
|
LCOV_INFO_FILES=""
|
|
|
|
function process_dump {
|
|
./extract-gcov $1 $SKIBOOT_GCOV_ADDR
|
|
lcov -q -b . -d . -c -o $2 --gcov-tool ${CROSS}gcov
|
|
LCOV_INFO_FILES="$LCOV_INFO_FILES -a $2"
|
|
find .|grep '\.gcda$'|xargs rm -f
|
|
}
|
|
|
|
|
|
find .|grep '\.gcda$'|xargs rm -f
|
|
|
|
for i in $BOOT_TESTS; do
|
|
if [ -f ./external/mambo/skiboot-$i.dump ]; then
|
|
process_dump ./external/mambo/skiboot-$i.dump skiboot-$i.info
|
|
fi
|
|
if [ -f ./skiboot-$i.dump ]; then
|
|
process_dump ./skiboot-$i.dump skiboot-$i.info
|
|
fi
|
|
done
|
|
|
|
if [ -z "$LCOV_INFO_FILES" ]; then
|
|
echo "ERROR: no lcov files found"
|
|
exit 1;
|
|
fi
|
|
|
|
lcov -q -b . -d . --gcov-tool ${CROSS}gcov -o skiboot-boot.info $LCOV_INFO_FILES
|
|
|
|
genhtml -o boot-coverage-report skiboot-boot.info
|