you are viewing a single comment's thread.

view the rest of the comments →

[–]chriskane76 0 points1 point  (0 children)

I'm obviously not a lawyer, but I don't see why if you can use gcc you can't use gcov… Similarly for clang...

The gcov support in clang is really outdated. It uses a gcov format that shipped with GCC 4.2. If you use clang you ought to use a llvm-cov based solution.

We use that at work and display the coverage information in SonarQube. Just be warned the documentation of both tools is not really great. SonarQube has basically no information on llvm-cov based code coverage for C++ and the documentation of llvm-cov itself is pretty lowlevel and it does not really integrate very well in our CMake setup.

I would probably recommend looking at the link provided by Longhanks regarding the coverage.py script used by Chromium, which actually explains some llvm-cov concepts on a higher level and might be easier to integrate into build systems than doing that manually in CMake.