[build2] Is clang compilation database supported?

Guillaume Racicot 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
support :)

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
> supported
> > 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.
> Boris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.build2.org/archives/users/attachments/20171116/21539138/attachment.html>

More information about the users mailing list