xref: /llvm-project/llvm/utils/gn/secondary/llvm/triples.gni (revision c8399811e7b162bb1b11c06a2d757d23576b1c95)
1if (current_cpu == "x86") {
2  if (current_os == "linux") {
3    llvm_current_triple = "i386-unknown-linux-gnu"
4  } else if (current_os == "win") {
5    llvm_current_triple = "i386-pc-windows-msvc"
6  } else if (current_os == "android") {
7    llvm_current_triple = "i686-linux-android29"
8  }
9} else if (current_cpu == "x64") {
10  if (current_os == "freebsd") {
11    llvm_current_triple = "x86_64-unknown-freebsd"
12  } else if (current_os == "linux") {
13    llvm_current_triple = "x86_64-unknown-linux-gnu"
14  } else if (current_os == "ios" || current_os == "mac") {
15    llvm_current_triple = "x86_64-apple-darwin"
16  } else if (current_os == "win") {
17    llvm_current_triple = "x86_64-pc-windows-msvc"
18  } else if (current_os == "android") {
19    llvm_current_triple = "x86_64-linux-android29"
20  }
21} else if (current_cpu == "arm") {
22  if (current_os == "android") {
23    llvm_current_triple = "arm-linux-androideabi29"
24  }
25} else if (current_cpu == "arm64") {
26  if (current_os == "android") {
27    llvm_current_triple = "aarch64-linux-android29"
28  } else if (current_os == "ios" || current_os == "mac") {
29    llvm_current_triple = "arm64-apple-darwin"
30  } else if (current_os == "baremetal") {
31    llvm_current_triple = "aarch64-elf"
32  } else if (current_os == "linux") {
33    llvm_current_triple = "aarch64-unknown-linux-gnu"
34  }
35} else if (current_cpu == "ppc64") {
36  if (current_os == "linux") {
37    llvm_current_triple = "powerpc64le-unknown-linux-gnu"
38  }
39}
40
41if (!defined(llvm_current_triple)) {
42  assert(false, "unimplemented cpu/os " + current_cpu + "/" + current_os)
43}
44
45declare_args() {
46  # The default target triple.
47  llvm_target_triple = llvm_current_triple
48}
49