[clangd] Move standard options adaptor to CommandMangler
authorDmitry Polukhin <dmitry.polukhin@gmail.com>
Thu, 16 Feb 2023 13:06:53 +0000 (05:06 -0800)
committerDmitry Polukhin <dmitry.polukhin@gmail.com>
Mon, 13 Mar 2023 13:08:22 +0000 (06:08 -0700)
commit34de7da6246cdfa6ff6f3d3c514583cddc0a10ec
tree2c229b3d9a4a411130d4be5d2e7faf9f1a7f9679
parent3870857226b68fe19e97969e256e31c5eb681c04
[clangd] Move standard options adaptor to CommandMangler

There is a discrepancy between how clangd processes CDB loaded from
JSON file on disk and pushed via LSP. Thus the same CDB pushed via
LSP protocol may not work as expected. Some difference between these two
paths is expected but we still need to insert driver mode and target from
binary name and expand response files.

Test Plan: check-clang-tools

Differential Revision: https://reviews.llvm.org/D143436
clang-tools-extra/clangd/CompileCommands.cpp
clang-tools-extra/clangd/CompileCommands.h
clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
clang-tools-extra/clangd/test/did-change-configuration-params.test
clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
clang/include/clang/Tooling/Tooling.h
clang/lib/Tooling/ExpandResponseFilesCompilationDatabase.cpp
clang/lib/Tooling/Tooling.cpp