xref: /llvm-project/llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn (revision 3a975d697f11b5cccda2f2778c3792c179eecb74)
1import("//llvm/utils/gn/build/write_vcsrevision.gni")
2
3config("write_vcsrevision_config") {
4  # To pick up the generated inc file.
5  include_dirs = [ target_gen_dir ]
6  visibility = [ ":write_vcsversion" ]
7}
8
9write_vcsrevision("write_vcsversion") {
10  visibility = [ ":Basic" ]
11  header = "$target_gen_dir/VCSVersion.inc"
12  names = [
13    "LLVM",
14    "CLANG",
15  ]
16  public_configs = [ ":write_vcsrevision_config" ]
17}
18
19static_library("Basic") {
20  output_name = "clangBasic"
21  configs += [ "//llvm/utils/gn/build:clang_code" ]
22  public_deps = [
23    # public_dep because public header Version.h includes generated Version.inc.
24    "//clang/include/clang/Basic:AttrList",
25    "//clang/include/clang/Basic:AttrParsedAttrList",
26    "//clang/include/clang/Basic:AttrSubMatchRulesList",
27    "//clang/include/clang/Basic:Builtins",
28    "//clang/include/clang/Basic:BuiltinsBPF",
29    "//clang/include/clang/Basic:BuiltinsHexagon",
30    "//clang/include/clang/Basic:BuiltinsNVPTX",
31    "//clang/include/clang/Basic:BuiltinsRISCV",
32    "//clang/include/clang/Basic:BuiltinsSPIRV",
33    "//clang/include/clang/Basic:BuiltinsX86",
34    "//clang/include/clang/Basic:BuiltinsX86_64",
35    "//clang/include/clang/Basic:DiagnosticGroups",
36    "//clang/include/clang/Basic:RegularKeywordAttrInfo",
37    "//clang/include/clang/Basic:arm_cde_builtins",
38    "//clang/include/clang/Basic:arm_immcheck_types",
39    "//clang/include/clang/Basic:arm_mve_builtins",
40    "//clang/include/clang/Basic:arm_sme_builtins",
41    "//clang/include/clang/Basic:arm_sve_builtins",
42    "//clang/include/clang/Basic:arm_sve_typeflags",
43    "//clang/include/clang/Basic:diags_tablegen",
44    "//clang/include/clang/Basic:riscv_sifive_vector_builtins",
45    "//clang/include/clang/Basic:riscv_vector_builtins",
46    "//clang/include/clang/Basic:version",
47
48    # public_dep because public header OpenMPKinds.h includes generated
49    # OMP.h.inc.
50    "//llvm/include/llvm/Frontend/OpenMP:public_tablegen",
51  ]
52  deps = [
53    ":write_vcsversion",
54    "//clang/include/clang/Basic:AttrHasAttributeImpl",
55    "//clang/include/clang/Basic:CXX11AttributeInfo",
56    "//clang/include/clang/Basic:arm_fp16",
57    "//clang/include/clang/Basic:arm_neon",
58    "//clang/include/clang/Config",
59    "//clang/include/clang/Sema:AttrParsedAttrKinds",
60    "//clang/include/clang/Sema:AttrSpellingListIndex",
61    "//llvm/include/llvm/Config:llvm-config",
62    "//llvm/lib/Option",
63    "//llvm/lib/Support",
64    "//llvm/lib/TargetParser",
65  ]
66  include_dirs = [ "." ]
67  sources = [
68    "ASTSourceDescriptor.cpp",
69    "Attributes.cpp",
70    "Builtins.cpp",
71    "CLWarnings.cpp",
72    "CharInfo.cpp",
73    "CodeGenOptions.cpp",
74    "Cuda.cpp",
75    "DarwinSDKInfo.cpp",
76    "Diagnostic.cpp",
77    "DiagnosticIDs.cpp",
78    "DiagnosticOptions.cpp",
79    "ExpressionTraits.cpp",
80    "FileEntry.cpp",
81    "FileManager.cpp",
82    "FileSystemStatCache.cpp",
83    "IdentifierTable.cpp",
84    "LangOptions.cpp",
85    "LangStandards.cpp",
86    "MakeSupport.cpp",
87    "Module.cpp",
88    "NoSanitizeList.cpp",
89    "ObjCRuntime.cpp",
90    "OpenCLOptions.cpp",
91    "OpenMPKinds.cpp",
92    "OperatorPrecedence.cpp",
93    "ParsedAttrInfo.cpp",
94    "ProfileList.cpp",
95    "SanitizerSpecialCaseList.cpp",
96    "Sanitizers.cpp",
97    "Sarif.cpp",
98    "SourceLocation.cpp",
99    "SourceManager.cpp",
100    "SourceMgrAdapter.cpp",
101    "Stack.cpp",
102    "StackExhaustionHandler.cpp",
103    "TargetID.cpp",
104    "TargetInfo.cpp",
105    "Targets.cpp",
106    "Targets/AArch64.cpp",
107    "Targets/AMDGPU.cpp",
108    "Targets/ARC.cpp",
109    "Targets/ARM.cpp",
110    "Targets/AVR.cpp",
111    "Targets/BPF.cpp",
112    "Targets/CSKY.cpp",
113    "Targets/DirectX.cpp",
114    "Targets/Hexagon.cpp",
115    "Targets/Lanai.cpp",
116    "Targets/LoongArch.cpp",
117    "Targets/M68k.cpp",
118    "Targets/MSP430.cpp",
119    "Targets/Mips.cpp",
120    "Targets/NVPTX.cpp",
121    "Targets/OSTargets.cpp",
122    "Targets/PNaCl.cpp",
123    "Targets/PPC.cpp",
124    "Targets/RISCV.cpp",
125    "Targets/SPIR.cpp",
126    "Targets/Sparc.cpp",
127    "Targets/SystemZ.cpp",
128    "Targets/TCE.cpp",
129    "Targets/VE.cpp",
130    "Targets/WebAssembly.cpp",
131    "Targets/X86.cpp",
132    "Targets/XCore.cpp",
133    "Targets/Xtensa.cpp",
134    "TokenKinds.cpp",
135    "TypeTraits.cpp",
136    "Version.cpp",
137    "Warnings.cpp",
138    "XRayInstr.cpp",
139    "XRayLists.cpp",
140  ]
141}
142