[ORC] Add std::tuple support to SimplePackedSerialization.
[llvm-project.git] / llvm / utils / gn / secondary / clang-tools-extra / clangd / BUILD.gn
blob8e2cd1cf73dfb8d64958a2713f4d9844d33cc7fb
1 import("//clang-tools-extra/clangd/quality/gen_decision_forest.gni")
2 import("//clang-tools-extra/clangd/xpc/enable.gni")
3 import("//llvm/utils/gn/build/write_cmake_config.gni")
5 config("features_config") {
6   # To pick up the generated inc files.
7   include_dirs = [ target_gen_dir ]
8   visibility = [ ":features" ]
11 write_cmake_config("features") {
12   input = "Features.inc.in"
13   output = "$target_gen_dir/Features.inc"
14   values = [
15     "CLANGD_ENABLE_REMOTE=0",
16     "CLANGD_MALLOC_TRIM=1",
17     "CLANGD_TIDY_CHECKS=1",
18     "ENABLE_GRPC_REFLECTION=0",
19   ]
20   if (clangd_build_xpc) {
21     values += [ "CLANGD_BUILD_XPC=1" ]
22   } else {
23     values += [ "CLANGD_BUILD_XPC=0" ]
24   }
25   public_configs = [ ":features_config" ]
28 gen_decision_forest("CompletionModel") {
29   model = "quality/model"
30   filename = "CompletionModel"
31   cpp_class = "clang::clangd::Example"
32   deps = [ "//clang/lib/Sema" ]
35 static_library("clangd") {
36   output_name = "clangDaemon"
37   configs += [ "//llvm/utils/gn/build:clang_code" ]
38   deps = [
39     ":CompletionModel",
40     ":features",
41     "//clang-tools-extra/clang-tidy",
42     "//clang-tools-extra/clang-tidy:all-checks",
43     "//clang-tools-extra/clang-tidy:clang-tidy-config",
44     "//clang-tools-extra/clangd/support",
45     "//clang/lib/AST",
46     "//clang/lib/ASTMatchers",
47     "//clang/lib/Basic",
48     "//clang/lib/Driver",
49     "//clang/lib/Format",
50     "//clang/lib/Frontend",
51     "//clang/lib/Index",
52     "//clang/lib/Lex",
53     "//clang/lib/Sema",
54     "//clang/lib/Serialization",
55     "//clang/lib/Tooling",
56     "//clang/lib/Tooling/Core",
57     "//clang/lib/Tooling/Inclusions",
58     "//clang/lib/Tooling/Refactoring",
59     "//clang/lib/Tooling/Syntax",
60     "//llvm/lib/Support",
61     "//llvm/lib/Target:AllTargetsInfos",
62     "//llvm/utils/gn/build/libs/pthread",
63   ]
64   include_dirs = [
65     ".",
67     # To pick up the generated inc files.
68     "$target_gen_dir/tool",
69   ]
70   sources = [
71     "AST.cpp",
72     "ASTSignals.cpp",
73     "ClangdLSPServer.cpp",
74     "ClangdServer.cpp",
75     "CodeComplete.cpp",
76     "CodeCompletionStrings.cpp",
77     "CollectMacros.cpp",
78     "CompileCommands.cpp",
79     "Compiler.cpp",
80     "Config.cpp",
81     "ConfigCompile.cpp",
82     "ConfigProvider.cpp",
83     "ConfigYAML.cpp",
84     "Diagnostics.cpp",
85     "DraftStore.cpp",
86     "DumpAST.cpp",
87     "ExpectedTypes.cpp",
88     "FS.cpp",
89     "Feature.cpp",
90     "FeatureModule.cpp",
91     "FileDistance.cpp",
92     "FindSymbols.cpp",
93     "FindTarget.cpp",
94     "Format.cpp",
95     "FuzzyMatch.cpp",
96     "GlobalCompilationDatabase.cpp",
97     "HeaderSourceSwitch.cpp",
98     "Headers.cpp",
99     "HeuristicResolver.cpp",
100     "Hover.cpp",
101     "IncludeCleaner.cpp",
102     "IncludeFixer.cpp",
103     "InlayHints.cpp",
104     "JSONTransport.cpp",
105     "ParsedAST.cpp",
106     "PathMapping.cpp",
107     "Preamble.cpp",
108     "Protocol.cpp",
109     "Quality.cpp",
110     "QueryDriverDatabase.cpp",
111     "RIFF.cpp",
112     "Selection.cpp",
113     "SemanticHighlighting.cpp",
114     "SemanticSelection.cpp",
115     "SourceCode.cpp",
116     "TUScheduler.cpp",
117     "TidyProvider.cpp",
118     "URI.cpp",
119     "XRefs.cpp",
120     "index/Background.cpp",
121     "index/BackgroundIndexLoader.cpp",
122     "index/BackgroundIndexStorage.cpp",
123     "index/BackgroundQueue.cpp",
124     "index/BackgroundRebuild.cpp",
125     "index/CanonicalIncludes.cpp",
126     "index/FileIndex.cpp",
127     "index/Index.cpp",
128     "index/IndexAction.cpp",
129     "index/MemIndex.cpp",
130     "index/Merge.cpp",
131     "index/ProjectAware.cpp",
132     "index/Ref.cpp",
133     "index/Relation.cpp",
134     "index/Serialization.cpp",
135     "index/Symbol.cpp",
136     "index/SymbolCollector.cpp",
137     "index/SymbolID.cpp",
138     "index/SymbolLocation.cpp",
139     "index/SymbolOrigin.cpp",
140     "index/YAMLSerialization.cpp",
141     "index/dex/Dex.cpp",
142     "index/dex/Iterator.cpp",
143     "index/dex/PostingList.cpp",
144     "index/dex/Trigram.cpp",
145     "refactor/Rename.cpp",
146     "refactor/Tweak.cpp",
147   ]