commit | 21b5eb627d78c09d47c4de957e9e6b56a9ae6fad | [log] [tgz] |
---|---|---|
author | plf <plf@google.com> | Wed Oct 21 06:53:30 2020 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Oct 21 06:54:43 2020 -0700 |
tree | d839a27b6a8d7f332478c73b4f9b21d557948ad1 | |
parent | 87f83815cb673304354f6346fc4626e123856e46 [diff] |
Fix Bazel clang coverage to produce lcov report Support for coverage with clang in Bazel was half working because the report produced was in a binary format and it wasn't be utilized by the LCOV merger and therefore didn't show up in the final LCOV report. This CL uses llvm-cov as was used by Envoy in https://github.com/envoyproxy/envoy/pull/10909 to produce an LCOV report. To run this the following environment variable and build flags are needed: BAZEL_USE_LLVM_NATIVE_COVERAGE=1 GCOV={path to llvm_profdata} CC=clang \ BAZEL_LLVM_COV={path to llvm_cov} bazel coverage --experimental_generate_llvm_lcov PiperOrigin-RevId: 338254344
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
See CONTRIBUTING.md