The main changes since last weeks RFC are that I ended up doing more furtling than I wanted to make the Travis coverage report sane. Rather than mess around with .travis.yml I pushed this all into a script.
I also got to the bottom of the missing coverage reports under linux-user. It seems as though our exit path can not trigger the coverage dump so we need to do it ourselves. As we have similar hacks for GPROF and the gdbstub I ended up putting this is a new helper function. The new file might be overkill though but I didn't want to jam the helper in our already oversized main file. Maybe the syscalls can move across later? The Travis updates from Philippe are simple clean-ups including being able to drop the silly wget pre-seed hack in favour of a limited submodule checkout. Anyway comments welcome. Alex Bennée (8): build-system: remove per-test GCOV reporting .gitignore: add .gcov files docker: add gcovr to travis image travis: add gcovr summary for GCOV build build-system: add clean-coverage target build-system: add coverage-report target linux-user: introduce preexit_cleanup linux-user: add gcov support to preexit_cleanup Philippe Mathieu-Daudé (2): travis: do not waste time cloning unused submodules travis: test out-of-tree builds .gitignore | 1 + .travis.yml | 14 ++++++++--- Makefile | 24 ++++++++++++++++++ docs/devel/testing.rst | 21 +++++++++++----- linux-user/Makefile.objs | 2 +- linux-user/exit.c | 35 ++++++++++++++++++++++++++ linux-user/qemu.h | 8 ++++++ linux-user/syscall.c | 10 ++------ scripts/coverage-summary.sh | 27 ++++++++++++++++++++ tests/Makefile.include | 10 -------- tests/docker/dockerfiles/travis.docker | 2 +- 11 files changed, 125 insertions(+), 29 deletions(-) create mode 100644 linux-user/exit.c create mode 100755 scripts/coverage-summary.sh -- 2.17.1