| import("//clang-tools-extra/clangd/xpc/enable.gni") |
| import("//llvm/utils/gn/build/write_cmake_config.gni") |
| |
| config("features_config") { |
| # To pick up the generated inc files. |
| include_dirs = [ target_gen_dir ] |
| visibility = [ ":features" ] |
| } |
| |
| write_cmake_config("features") { |
| input = "Features.inc.in" |
| output = "$target_gen_dir/Features.inc" |
| values = [] |
| if (clangd_build_xpc) { |
| values += [ "CLANGD_BUILD_XPC=1" ] |
| } else { |
| values += [ "CLANGD_BUILD_XPC=0" ] |
| } |
| public_configs = [ ":features_config" ] |
| } |
| |
| static_library("clangd") { |
| output_name = "clangDaemon" |
| configs += [ "//llvm/utils/gn/build:clang_code" ] |
| deps = [ |
| ":features", |
| "//clang-tools-extra/clang-tidy", |
| "//clang-tools-extra/clang-tidy:all-checks", |
| "//clang-tools-extra/clangd/support", |
| "//clang/lib/AST", |
| "//clang/lib/ASTMatchers", |
| "//clang/lib/Basic", |
| "//clang/lib/Driver", |
| "//clang/lib/Format", |
| "//clang/lib/Frontend", |
| "//clang/lib/Index", |
| "//clang/lib/Lex", |
| "//clang/lib/Sema", |
| "//clang/lib/Serialization", |
| "//clang/lib/Tooling", |
| "//clang/lib/Tooling/Core", |
| "//clang/lib/Tooling/Inclusions", |
| "//clang/lib/Tooling/Refactoring", |
| "//clang/lib/Tooling/Syntax", |
| "//llvm/lib/Support", |
| "//llvm/lib/Target:AllTargetsInfos", |
| "//llvm/utils/gn/build/libs/pthread", |
| ] |
| include_dirs = [ |
| ".", |
| |
| # To pick up the generated inc files. |
| "$target_gen_dir/tool", |
| ] |
| sources = [ |
| "AST.cpp", |
| "ClangdLSPServer.cpp", |
| "ClangdServer.cpp", |
| "CodeComplete.cpp", |
| "CodeCompletionStrings.cpp", |
| "CollectMacros.cpp", |
| "CompileCommands.cpp", |
| "Compiler.cpp", |
| "Config.cpp", |
| "ConfigCompile.cpp", |
| "ConfigProvider.cpp", |
| "ConfigYAML.cpp", |
| "Diagnostics.cpp", |
| "DraftStore.cpp", |
| "ExpectedTypes.cpp", |
| "FS.cpp", |
| "FileDistance.cpp", |
| "FindSymbols.cpp", |
| "FindTarget.cpp", |
| "Format.cpp", |
| "FuzzyMatch.cpp", |
| "GlobalCompilationDatabase.cpp", |
| "HeaderSourceSwitch.cpp", |
| "Headers.cpp", |
| "Hover.cpp", |
| "IncludeFixer.cpp", |
| "JSONTransport.cpp", |
| "ParsedAST.cpp", |
| "PathMapping.cpp", |
| "Preamble.cpp", |
| "Protocol.cpp", |
| "Quality.cpp", |
| "QueryDriverDatabase.cpp", |
| "RIFF.cpp", |
| "Selection.cpp", |
| "SemanticHighlighting.cpp", |
| "SemanticSelection.cpp", |
| "SourceCode.cpp", |
| "TUScheduler.cpp", |
| "URI.cpp", |
| "XRefs.cpp", |
| "index/Background.cpp", |
| "index/BackgroundIndexLoader.cpp", |
| "index/BackgroundIndexStorage.cpp", |
| "index/BackgroundQueue.cpp", |
| "index/BackgroundRebuild.cpp", |
| "index/CanonicalIncludes.cpp", |
| "index/FileIndex.cpp", |
| "index/Index.cpp", |
| "index/IndexAction.cpp", |
| "index/MemIndex.cpp", |
| "index/Merge.cpp", |
| "index/Ref.cpp", |
| "index/Relation.cpp", |
| "index/Serialization.cpp", |
| "index/Symbol.cpp", |
| "index/SymbolCollector.cpp", |
| "index/SymbolID.cpp", |
| "index/SymbolLocation.cpp", |
| "index/SymbolOrigin.cpp", |
| "index/YAMLSerialization.cpp", |
| "index/dex/Dex.cpp", |
| "index/dex/Iterator.cpp", |
| "index/dex/PostingList.cpp", |
| "index/dex/Trigram.cpp", |
| "refactor/Rename.cpp", |
| "refactor/Tweak.cpp", |
| ] |
| } |