Skip to content

Commit

Permalink
Compilation Database: Point Bazel users to a solution
Browse files Browse the repository at this point in the history
This doc lists ways of getting compilation databases out of some popular build systems for use with clangd and other tooling.

We built such a way for Bazel and just released it after a bunch of requests on GitHub. Thought I should propose that we add a link to help people find it and use clang tooling.

(This is my first revision submitted via LLVM Phabricator, so if I've messed something up, I'd really appreciate your help and patience. Asking for a review from Sam McCall, because I've had a great time working with him elsewhere on GitHub before and because I saw him in the Git history for this file.)

Reviewed By: sammccall

Differential Revision: https://reviews.llvm.org/D114213
  • Loading branch information
HighCommander4 committed Nov 29, 2021
1 parent e80a0b3 commit 5233ad1
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions clang/docs/JSONCompilationDatabase.rst
Expand Up @@ -36,6 +36,12 @@ works) with the option ``CMAKE_EXPORT_COMPILE_COMMANDS``.
For projects on Linux, there is an alternative to intercept compiler
calls with a tool called `Bear <https://github.com/rizsotto/Bear>`_.

`Bazel <https://bazel.build>`_ can export a compilation database via
`this extractor extension
<https://github.com/hedronvision/bazel-compile-commands-extractor>`_.
Bazel is otherwise resistant to Bear and other compiler-intercept
techniques.

Clang's tooling interface supports reading compilation databases; see
the :doc:`LibTooling documentation <LibTooling>`. libclang and its
python bindings also support this (since clang 3.2); see
Expand Down

0 comments on commit 5233ad1

Please sign in to comment.