Re: [PATCH 2/3] cmake: create compile_commands.json by default
From: Sibi Siddharthan <hidden>
Date: 2021-06-04 21:09:25
On Fri, Jun 4, 2021 at 11:13 PM Matthew Rogers via GitGitGadget [off-list ref] wrote:
A straightforward way to accomplish this is to make it as simple as
possible is to enable the generation of the compile_commands.json file,
which is supported by many tools such as: clang-tidy, clang-format,
sourcetrail, etc.
This does come with a small run-time overhead during the configuration
step (~6 seconds on my machine):
Time to configure with CMAKE_EXPORT_COMPILE_COMMANDS=TRUE
real 1m9.840s
user 0m0.031s
sys 0m0.031s
Time to configure with CMAKE_EXPORT_COMPILE_COMMANDS=FALSE
real 1m3.195s
user 0m0.015s
sys 0m0.015s
This seems like a small enough price to pay to make the project more
accessible to newer users. Additionally there are other large projects
like llvm [2] which has had this enabled by default for >6 years at the
time of this writing, and no real negative consequences that I can find
with my search-skills.The overhead is actually much smaller than that. In my system it is less than 150ms. The first configure takes this long because we generate command-list.h and config-list.h. This process is really slow under Windows. Thank You, Sibi Siddharthan