With clangd as an lsp how do you deal with any but the simplest build systems?
For instance, in MicroPython there are 24 "ports" and most of them have multiple "boards" or "variants". Altogether there are 200+ boards and variants put together.
There are probably a half dozen different compilers used for different CPU architectures, different builds have radically different compiler flags, and some files are included in all 200+ of those builds.
Oh and did I mention that some use make and some use cmake? (besides the ones that use west, but I am gonna just choose not to care about those right now)
I know how to pick ONE make-based build and make a complier_commands.json for it using bear, but it's going to only give me a tiny sliver of the whole picture.
Yes, one encounters the same problems when trying to validate changes via compiling, but since I'm new to language servers and clangd in particular I feel like I should ask.
(If it makes a difference I'm using neovim 0.11.3)
#lsp #languageServer #clang #clangd #askFedi