#!/bin/sh # build coverage server binary make # not super fantastic but most likely good enough export COVSRV_SOCKET=$(mktemp -u) # server program should always be killed at the end of a test run cleanup() { ./build/covsrv quit } # kill server program even if user interrupted us or something else exceptional # happened trap interrupt INT HUP TERM interrupt () { cleanup exit 1 } # start coverage server, should create a unix socket at COVSRV_SOCKET that test # programs can connect to ./build/covsrv & # run tests, pass any flags like -j to make make coverage "$@" cleanup exit 0