[build2] Is clang compilation database supported?
gufideg at gmail.com
Thu Nov 16 19:39:43 UTC 2017
Thanks for the response.
No need to scramble your agenda around, but thanks a lot for showing your
The three questions are legitimate. For number 3, I can imagine IDE to only
want to get the compilation database quickly, so there might be a use case
to generate it separately. But only support it while updating the project
might be enough for a start.
I played a little bit with the KDevelop cmake plugin, and I want to check
if with only a clang database and custom commands I can get the IDE to work
with a build2 project. I'm not extremely familiar with their codebase yet,
but working on this might be a good start for me.
Thanks again, your efforts on this project are highly appreciated. We are
in great need of a build system like build2.
On Wed, 15 Nov 2017 at 08:01 Boris Kolpackov <boris at codesynthesis.com>
> Guillaume Racicot <gufideg at gmail.com> writes:
> > I wondered if outputting clang compilation database json file is
> > or planned to be supported. A lot of tools I use rely on it, including my
> > IDE. Not supporting it would be a huge barrier for our team.
> It is not yet supported though it is pretty high on our TODO list. If you
> are interested in helping to flesh this feature out and then trying it on
> your project, we can move it to the top of the list.
> The Clang compilation database and VC's Open Folder functionality appear
> to be examples of a more general concept of producing some form of build
> description or project description (Open Folder includes both). So we
> want to make sure we get it right.
> Specific to the Clang compilation database, the questions are:
> 1. At what level should we write it? Project? Amalgamation? Somewhere
> else for everything being built in this invocation?
> 2. How do we do incremental updates? Reportedly, for larger projects,
> completely regenerating the database can take a non-trivial amount
> of time.
> 3. Will it be acceptable if the only way to update the database is to
> also update the project? It will be the most natural approach since
> the only time we assemble the complete command lines is when we are
> about to update the target. However, it is not clear whether this
> will be too limiting.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the users