osquery / osquery-toolchain

A LLVM-based toolchain for Linux designed to build a portable osquery
Other
38 stars 22 forks source link

Reduce the number of LLVM tools built to improve size and compilation time #3

Open Smjert opened 5 years ago

Smjert commented 5 years ago

There are many tools we don't use or need. Off the top of my head what we really need is clang, lld, clang-tidy, scan-build, clang-format, excluded dependencies.

The way I started to trim things is by disabling the one we don't use through setting the respective CMake variables, which are named LLVM_TOOL_<TOOL NAME>_BUILD. I'm not 100% sure they are all consistent with that format, but if they are we could even list them in the config file and make them easily selectable.

Worth nothing that the first stage LLVM needs only clang and lld, plus dependencies, so we can have to sets of tools disabled and save more time there.