1#!/bin/bash 2 3LOGDIR=$1 4if [ -n "$2" ]; then 5 ODIR=$2 6else 7 ODIR=. 8fi 9TMPDIR=/tmp/logs 10 11mv $LOGDIR/alt-* $TMPDIR 12 13cd $TMPDIR 14args="" 15for i in lcov-*.info-*; do 16 args="$args -a $i" 17done 18 19lcov $args -o $LOGDIR/combined.info > $LOGDIR/combined-lcov.log 2>&1 20cat $LOGDIR/combined.info | 21 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/bits\/byteswap.h$\)/\1/};/^SF:.*\/bits\/byteswap.h$/,/^end_of_record$/d" | 22 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/openssl\/x509.h$\)/\1/};/^SF:.*\/openssl\/x509.h$/,/^end_of_record$/d" | 23 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/openssl\/x509v3.h$\)/\1/};/^SF:.*\/openssl\/x509v3.h$/,/^end_of_record$/d" | 24 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/common\/wpa_ctrl.c$\)/\1/};/^SF:.*\/common\/wpa_ctrl.c$/,/^end_of_record$/d" | 25 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/common\/cli.c$\)/\1/};/^SF:.*\/common\/cli.c$/,/^end_of_record$/d" | 26 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/utils\/edit.c$\)/\1/};/^SF:.*\/utils\/edit.c$/,/^end_of_record$/d" | 27 sed "/^TN:$/{N;s/TN:\n\(SF:.*_module_tests.c$\)/\1/};/^SF:.*_module_tests.c$/,/^end_of_record$/d" | 28 sed "/^TN:$/{N;s/TN:\n\(SF:.*\/hostapd\/hostapd_cli.c$\)/\1/};/^SF:.*\/hostapd\/hostapd_cli.c$/,/^end_of_record$/d" | 29 sed "/^TN:$/{N;s/TN:\n\(SF:.*wpa_supplicant\/wpa_cli.c$\)/\1/};/^SF:.*wpa_supplicant\/wpa_cli.c$/,/^end_of_record$/d" > $LOGDIR/combined.info.filtered 30 31cd $LOGDIR 32genhtml -t "wpa_supplicant/hostapd combined for hwsim test run $(date +%s)" combined.info.filtered --output-directory $ODIR > lcov.log 2>&1 33 34rm -r /tmp/logs/alt-wpa_supplicant 35rm -r /tmp/logs/alt-hostapd 36rm -r /tmp/logs/alt-hostapd-as 37rm -r /tmp/logs/alt-hlr_auc_gw 38rm /tmp/logs/lcov-*info-* 39rmdir /tmp/logs 40