xref: /llvm-project/llvm/utils/gn/build/buildflags.gni (revision 0083a02839c3365af4b406042d35b82ded6b505c)
1declare_args() {
2  # Build for debugging. Equivalent to is_optimized=false symbol_level=2.
3  is_debug = false
4
5  # Whether to build with tsan.
6  use_tsan = false
7
8  # Whether to build with ubsan.
9  use_ubsan = false
10
11  # Whether to build with asan.
12  use_asan = false
13
14  # Whether to enable assertions.
15  llvm_enable_assertions = true
16
17  # Whether to enable expensive checks.
18  llvm_enable_expensive_checks = false
19
20  # Whether to build with ThinLTO.
21  use_thinlto = false
22
23  # Max jobs per ThinLTO link.
24  max_jobs_per_lto_link = 8
25}
26
27# args that depend on other args must live in a later declare_args() block.
28declare_args() {
29  # Whether to build with optimizations.
30  is_optimized = !is_debug
31
32  if (is_debug) {
33    # Debug info symbol level. 0: No symbols; 1: Line numbers; 2: Full symbols.
34    symbol_level = 2
35  } else {
36    # Debug info symbol level. 0: No symbols; 1: Line numbers; 2: Full symbols.
37    symbol_level = 0
38  }
39}
40