On Sun, Jun 6, 2021 at 4:06 AM Matt Rogers <mattr94@xxxxxxxxx> wrote: > > On Fri, Jun 4, 2021 at 5:09 PM Sibi Siddharthan > <sibisiddharthan.github@xxxxxxxxx> wrote: > > > > On Fri, Jun 4, 2021 at 11:13 PM Matthew Rogers via GitGitGadget > > <gitgitgadget@xxxxxxxxx> 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. > > Is that 150 ms for the whole process or just the difference between the two > options? I'm running this on windows via the git bash provided by the > git sdk. The difference between the two. Without exporting compile_commands.json it takes around 650ms, with it around 750ms. NOTE: This is for subsequent CMake runs. (Excludes the initial run) Thank You, Sibi Siddharthan