You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.1 KiB
38 lines
1.1 KiB
Facebook Clang Plugins
|
|
======================
|
|
|
|
This folder contains the Infer frontend plugin to the [clang compiler](http://clang.llvm.org/) used to process the syntax of source files and export AST information to the Infer frontend.
|
|
|
|
Structure of the repository
|
|
---------------------------
|
|
|
|
- libtooling : frontend plugins (currently a clang-to-json AST exporter),
|
|
|
|
- clang-ocaml : OCaml libraries to process the JSON output of frontend plugins,
|
|
|
|
|
|
Quick start
|
|
-----------
|
|
|
|
The plugin requires recent version of the clang compiler, re-compiled from source.
|
|
|
|
To compile and use the required version of clang, please run ./clang/setup.sh.
|
|
|
|
Caveat:
|
|
- Because of the nature of C++, clang and the plugins need to be compiled with the exact same C++ libraries.
|
|
- Also, the default stripping command of clang in release mode breaks plugins.
|
|
|
|
Once the target compiler is installed, `make test` should run the unit tests.
|
|
|
|
OCaml users may also run:
|
|
```
|
|
make -C clang-ocaml test #requires proper ocaml libraries, see included clang-ocaml/README
|
|
```
|
|
|
|
Additional configuration options are available in `Makefile.config`.
|
|
|
|
Licence
|
|
-------
|
|
|
|
Infer is MIT-licensed.
|