# Needed by LLVM's CMake checks because this file defines multiple targets. set(LLVM_OPTIONAL_SOURCES ClangdToolMain.cpp) add_clang_library(clangdMain ClangdMain.cpp Check.cpp ) add_clang_tool(clangd ClangdToolMain.cpp $ ) set(LLVM_LINK_COMPONENTS support ) set(CLANGD_XPC_LIBS "") if(CLANGD_BUILD_XPC) list(APPEND CLANGD_XPC_LIBS "clangdXpcJsonConversions" "clangdXpcTransport") endif() clang_target_link_libraries(clangdMain PRIVATE clangAST clangBasic clangFormat clangFrontend clangTooling clangToolingSyntax ) target_link_libraries(clangdMain PRIVATE clangTidy clangDaemon clangdRemoteIndex clangdSupport ${CLANGD_XPC_LIBS} ) clang_target_link_libraries(clangd PRIVATE clangAST clangBasic clangLex clangSema clangToolingCore clangToolingRefactoring clangToolingSyntax ) target_link_libraries(clangd PRIVATE clangdMain clangDaemon clangdSupport )