~/talk

War story from the build system trenches: Integrating Bazel and Testwell CTC++ code coverage

Talkat NDC TechTown 2025 · 2025-09-22..09-25· [developer-experience]
slides:none on file

Integrates Bazel with Testwell CTC++ by wrapping CDC++ with per-compilation hooks that rewrite timestamps, absolute sandbox paths and fingerprints so instrumented sources and symbol files become reproducible; writes one symbol file per compilation, embeds those files into object files as a CDC sim ELF section, extracts and concatenates them at link time, and re-enables Bazel caching for builds. Full clean coverage still takes ~30–45 minutes, common incremental runs are about five times faster, tests/counter data remain uncached. Bazel sandbox and CDC++ mon.sim handling are central.

AI-written summary · about

  1. 0:00Introduction and speaker background
  2. 1:12Why this talk about Bazel and CTC++
  3. 6:50Complexity in build systems explained
  4. 13:47Deep dive into Bazel features and challenges
  5. 21:06Testwell CTC++ code coverage fundamentals
  6. 24:30Initial attempt to integrate Bazel and CTC++
  7. 29:22Side quests and sandboxing issues
  8. 34:47Making outputs reproducible for caching
  9. 41:22Embedding symbol files in object files
  10. 45:33Recap of the first integration solution
  11. 46:58Second solution with reproducible outputs
  12. 50:06Performance improvements and results
  13. 52:54Lessons learned and future work
  14. 53:16Closing remarks and Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.