blob: e232fcdfe86432bff7343713e1ae8be65b243985 [file] [log] [blame]
Sean Silva63c3af62013-02-19 16:58:15 +00001=============================
2External Projects Using Clang
3=============================
4
5Clang is more than a compiler; its library-based approach allows creation of
6different kinds of tools that can process source code.
7
8This page contains references to Clang based tools and projects. To extend
9the list you could write email to the `development mailing list
10<http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev>`_.
11
12List of projects and tools
13==========================
14
15`<https://github.com/etaoins/qconnectlint>`_
16 "qconnectlint is a Clang tool for statically verifying the consistency
17 of signal and slot connections made with Qt's ``QObject::connect``."
18
19`<https://github.com/woboq/woboq_codebrowser>`_
20 "The Woboq Code Browser is a web-based code browser for C/C++ projects.
21 Check out `<http://code.woboq.org/>`_ for an example!"
22
23`<https://github.com/mozilla/dxr>`_
24 "DXR is a source code cross-reference tool that uses static analysis
25 data collected by instrumented compilers."
26
27`<https://github.com/eschulte/clang-mutate>`_
28 "This tool performs a number of operations on C-language source files."
29
30`<https://github.com/gmarpons/Crisp>`_
31 "A coding rule validation add-on for LLVM/clang. Crisp rules are written
32 in Prolog. A high-level declarative DSL to easily write new rules is under
33 development. It will be called CRISP, an acronym for *Coding Rules in
34 Sugared Prolog*."
35
36`<https://github.com/drothlis/clang-ctags>`_
37 "Generate tag file for C++ source code."
38
39`<https://github.com/exclipy/clang_indexer>`_
40 "This is an indexer for C and C++ based on the libclang library."
41
42`<https://github.com/holtgrewe/linty>`_
43 "Linty - C/C++ Style Checking with Python & libclang."
44
45`<https://github.com/axw/cmonster>`_
46 "cmonster is a Python wrapper for the Clang C++ parser."
47
48`<https://github.com/rizsotto/Constantine>`_
49 "Constantine is a toy project to learn how to write clang plugin.
50 Implements pseudo const analysis. Generates warnings about variables,
51 which were declared without const qualifier."
52
53`<https://github.com/jessevdk/cldoc>`_
54 "cldoc is a Clang based documentation generator for C and C++.
55 cldoc tries to solve the issue of writing C/C++ software documentation
56 with a modern, non-intrusive and robust approach."