# Clang Related Projects

As Clang matures, more and more projects are being built atop the Clang libraries and other open source projects are starting their own Clang related subprojects, like building their source code with Clang or writing custom analysis tools using Clang. This page tracks some of those Clang related projects.

Please email cfe-dev if you have a Clang related project you would like added to this list.

FreeBSD Clang Page

  Site: https://wiki.freebsd.org/BuildingFreeBSDWithClang

  This is an effort to get FreeBSD to build with clang/llvm.

Chromium Clang Page

  Site: https://chromium.googlesource.com/chromium/src/+/master/docs/clang.md

  Notes on using Clang to build the Chromium web browser.

Debian Clang Page

  Sites:
  https://clang.debian.net/
  https://wiki.debian.org/llvm-clang

  Notes on using Clang to rebuild the whole Debian archive.

Include what you use

  Site: https://github.com/include-what-you-use/include-what-you-use

  Analyze #includes in C and C++ source files

OCLint

  Site: http://oclint.org/

  OCLint is a static code analysis tool for improving quality and reducing defects by inspecting C, C++ and Objective-C code.

DXR

  Site: https://github.com/mozilla/dxr

  DXR is a code search and navigation tool aimed at making sense of large projects like Firefox. It supports full-text and regex searches as well as structural queries like "Find all the callers of this function."

CodeCompass

  Site: https://github.com/Ericsson/CodeCompass

  CodeCompass is an open-source, extensible code comprehension framework which uses LLVM/Clang to analyze and visualize C and C++ projects. It also supports both regex-based text search, discovering complex C/C++ language elements, with advanced navigation and visualisation.

CodeChecker

  Site: https://github.com/Ericsson/CodeChecker

  CodeChecker is a static analysis infrastructure built on the LLVM/Clang Static Analyzer toolchain. It provides a user interface to execute analysis of C/C++ projects with Clang SA and Clang-Tidy, which outputs are then stored into a database navigable via a web application. This web application and a corresponding command-line tool supports a variety of report management and issue triaging options, such as difference view between analyses, automatic incremental analysis, marking and commenting on individual reports.