OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 import("//build/config/sanitizers/sanitizers.gni") | |
6 import("//build/config/sysroot.gni") | 5 import("//build/config/sysroot.gni") |
7 import("//build/toolchain/toolchain.gni") | |
8 | 6 |
9 assert(is_posix) | 7 assert(is_posix) |
10 | 8 |
11 # This is included by reference in the //build/config/compiler config that | |
12 # is applied to all Posix targets. It is here to separate out the logic that is | |
13 # Posix-only. Note that this is in addition to an OS-specific variant of this | |
14 # config. | |
15 config("compiler") { | |
16 if ((allow_posix_link_time_opt || is_cfi) && !is_nacl) { | |
17 arflags = [ | |
18 "--plugin", | |
19 rebase_path("//third_party/llvm-build/Release+Asserts/lib/LLVMgold.so", | |
20 root_build_dir), | |
21 ] | |
22 } | |
23 } | |
24 | |
25 # This is included by reference in the //build/config/compiler:runtime_library | 9 # This is included by reference in the //build/config/compiler:runtime_library |
26 # config that is applied to all targets. It is here to separate out the logic | 10 # config that is applied to all targets. It is here to separate out the logic |
27 # that is Posix-only. Please see that target for advice on what should go in | 11 # that is Posix-only. Please see that target for advice on what should go in |
28 # :runtime_library vs. :compiler. | 12 # :runtime_library vs. :compiler. |
29 config("runtime_library") { | 13 config("runtime_library") { |
30 if (!is_mac && !is_ios && sysroot != "") { | 14 if (!is_mac && !is_ios && sysroot != "") { |
31 # Pass the sysroot to all C compiler variants, the assembler, and linker. | 15 # Pass the sysroot to all C compiler variants, the assembler, and linker. |
32 cflags = [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ] | 16 cflags = [ "--sysroot=" + rebase_path(sysroot, root_build_dir) ] |
33 asmflags = cflags | 17 asmflags = cflags |
34 ldflags = cflags | 18 ldflags = cflags |
35 | 19 |
36 # Need to get some linker flags out of the sysroot. | 20 # Need to get some linker flags out of the sysroot. |
37 ldflags += [ exec_script("sysroot_ld_path.py", | 21 ldflags += [ exec_script("sysroot_ld_path.py", |
38 [ | 22 [ |
39 rebase_path("//build/linux/sysroot_ld_path.sh", | 23 rebase_path("//build/linux/sysroot_ld_path.sh", |
40 root_build_dir), | 24 root_build_dir), |
41 sysroot, | 25 sysroot, |
42 ], | 26 ], |
43 "value") ] | 27 "value") ] |
44 } | 28 } |
45 } | 29 } |
OLD | NEW |