If you don’t mind more setup in return for more speed, replace
autocomplete-clang and linter-clang with you-complete-me. This requires
setting up ycmd.
Most third-party libraries used by this project can only be used in specific
components. CMakeLists.txt enforces these constraints, and
third_party/README.md describes the motivations
behind them.
Static Analysis
This project is experimenting with
Facebook Infer for static analysis. The
following command collects diagnostics.
BerryDB - An Experimental Key-Value Store
This is not an official Google product. LevelDB is a stable key-value store that is widely used at Google.
This is an experimental implementation of a key-value store.
Prerequisites
This project uses CMake for building and testing. CMake is available in all popular Linux distributions, as well as in Homebrew.
This project uses submodules for dependency management.
If you’re using Atom, the following packages can help.
If you don’t mind more setup in return for more speed, replace
autocomplete-clangandlinter-clangwithyou-complete-me. This requires setting up ycmd.Building
The following commands build the project.
Development
The following command (when executed from
build/) (re)builds the project and runs the tests.Android Testing
The following command builds the project against the Android NDK, which is useful for benchmarking against ARM processors.
The following commands install and run the benchmarks.
The following commands install and run the tests.
Most third-party libraries used by this project can only be used in specific components.
CMakeLists.txtenforces these constraints, and third_party/README.md describes the motivations behind them.Static Analysis
This project is experimenting with Facebook Infer for static analysis. The following command collects diagnostics.