summaryrefslogtreecommitdiff
path: root/llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
blob: ce80af8e179572a62c46f54f1ef0ce3f7c36f8c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
static_library("Driver") {
  output_name = "clangDriver"
  configs += [ "//llvm/utils/gn/build:clang_code" ]
  include_dirs = [ "." ]
  deps = [
    "//clang/include/clang/Config",

    # Driver doesn't depend on StaticAnalyzer and the other way round, but
    # as of clang r311958 Driver does depend on StaticAnalyzer/Checkers's
    # tablegen'd Checkers.inc.  The CMake build runs all clang tablegen steps
    # before all lib compilations via the clang-tablegen-targets target; the
    # GN build has this dependency instead.
    # FIXME: Move Checkers.td somewhere else to clean up this layering mess.
    # See the review thread of r311958 for details.
    "//clang/include/clang/StaticAnalyzer/Checkers",
    "//clang/lib/Basic",
    "//llvm/include/llvm/Config:llvm-config",
    "//llvm/lib/BinaryFormat",
    "//llvm/lib/Option",
    "//llvm/lib/Support",
  ]
  public_deps = [
    # public_dep because public header Options.h includes generated Options.inc.
    "//clang/include/clang/Driver:Options",
  ]
  if (host_os == "win") {
    # MSVCToolChain.cpp uses version.dll.
    libs = [ "version.lib" ]
  }
  sources = [
    "Action.cpp",
    "Compilation.cpp",
    "DarwinSDKInfo.cpp",
    "Distro.cpp",
    "Driver.cpp",
    "DriverOptions.cpp",
    "Job.cpp",
    "Multilib.cpp",
    "Phases.cpp",
    "SanitizerArgs.cpp",
    "Tool.cpp",
    "ToolChain.cpp",
    "ToolChains/AMDGPU.cpp",
    "ToolChains/AVR.cpp",
    "ToolChains/Ananas.cpp",
    "ToolChains/Arch/AArch64.cpp",
    "ToolChains/Arch/ARM.cpp",
    "ToolChains/Arch/Mips.cpp",
    "ToolChains/Arch/PPC.cpp",
    "ToolChains/Arch/RISCV.cpp",
    "ToolChains/Arch/Sparc.cpp",
    "ToolChains/Arch/SystemZ.cpp",
    "ToolChains/Arch/X86.cpp",
    "ToolChains/BareMetal.cpp",
    "ToolChains/Clang.cpp",
    "ToolChains/CloudABI.cpp",
    "ToolChains/CommonArgs.cpp",
    "ToolChains/Contiki.cpp",
    "ToolChains/CrossWindows.cpp",
    "ToolChains/Cuda.cpp",
    "ToolChains/Darwin.cpp",
    "ToolChains/DragonFly.cpp",
    "ToolChains/FreeBSD.cpp",
    "ToolChains/Fuchsia.cpp",
    "ToolChains/Gnu.cpp",
    "ToolChains/HIP.cpp",
    "ToolChains/Haiku.cpp",
    "ToolChains/Hexagon.cpp",
    "ToolChains/Hurd.cpp",
    "ToolChains/Linux.cpp",
    "ToolChains/MSVC.cpp",
    "ToolChains/MinGW.cpp",
    "ToolChains/Minix.cpp",
    "ToolChains/MipsLinux.cpp",
    "ToolChains/Myriad.cpp",
    "ToolChains/NaCl.cpp",
    "ToolChains/NetBSD.cpp",
    "ToolChains/OpenBSD.cpp",
    "ToolChains/PS4CPU.cpp",
    "ToolChains/RISCVToolchain.cpp",
    "ToolChains/Solaris.cpp",
    "ToolChains/TCE.cpp",
    "ToolChains/WebAssembly.cpp",
    "ToolChains/XCore.cpp",
    "Types.cpp",
    "XRayArgs.cpp",
  ]
}