OLD | NEW |
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 declare_args() { | 5 declare_args() { |
6 # Enable the optional type profiler in Clang, which will tag heap allocations | 6 # Enable the optional type profiler in Clang, which will tag heap allocations |
7 # with the allocation type. | 7 # with the allocation type. |
8 use_clang_type_profiler = false | 8 use_clang_type_profiler = false |
9 } | 9 } |
10 | |
11 if (is_clang) { | |
12 # Define "make_clang_dir" which is the directory relative to the source root | |
13 # of the clang directory we're using. This is used for defining the header | |
14 # for GYP so it must match the directory format of GYP (rather than using | |
15 # GN-style "//..." paths). | |
16 if (is_linux && use_clang_type_profiler) { | |
17 if (cpu_arch == "x64") { | |
18 make_clang_dir = "third_party/llvm-allocated-type/Linux_x64" | |
19 } else { | |
20 # 32-bit Clang is unsupported. It may not build. Put your 32-bit Clang in | |
21 # this directory at your own risk if needed for some purpose (e.g. to | |
22 # compare 32-bit and 64-bit behavior like memory usage). Any failure by | |
23 # this compiler should not close the tree. | |
24 make_clang_dir = "third_party/llvm-allocated-type/Linux_ia32" | |
25 } | |
26 } else { | |
27 make_clang_dir = "third_party/llvm-build/Release+Asserts" | |
28 } | |
29 | |
30 # This includes the array values but not the 'make_global_settings' name. | |
31 make_clang_global_settings = | |
32 "['CC', '$make_clang_dir/bin/clang']," + | |
33 "['CXX', '$make_clang_dir/bin/clang++']," + | |
34 "['CC.host', '\$(CC)']," + | |
35 "['CXX.host', '\$(CXX)']," | |
36 } | |
OLD | NEW |