OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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/android/config.gni") | 5 import("//build/config/android/config.gni") |
6 import("//build/config/sanitizers/sanitizers.gni") | 6 import("//build/config/sanitizers/sanitizers.gni") |
7 import("//build/config/sysroot.gni") | 7 import("//build/config/sysroot.gni") |
8 | 8 |
9 assert(is_android) | 9 assert(is_android) |
10 | 10 |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 } | 108 } |
109 cflags += [ | 109 cflags += [ |
110 "-target", | 110 "-target", |
111 abi_target, | 111 abi_target, |
112 ] | 112 ] |
113 ldflags += [ | 113 ldflags += [ |
114 "-target", | 114 "-target", |
115 abi_target, | 115 abi_target, |
116 ] | 116 ] |
117 } | 117 } |
| 118 |
| 119 # Assign any flags set for the C compiler to asmflags so that they are sent |
| 120 # to the assembler. |
| 121 asmflags = cflags |
118 } | 122 } |
119 | 123 |
120 # This is included by reference in the //build/config/compiler:runtime_library | 124 # This is included by reference in the //build/config/compiler:runtime_library |
121 # config that is applied to all targets. It is here to separate out the logic | 125 # config that is applied to all targets. It is here to separate out the logic |
122 # that is Android-only. Please see that target for advice on what should go in | 126 # that is Android-only. Please see that target for advice on what should go in |
123 # :runtime_library vs. :compiler. | 127 # :runtime_library vs. :compiler. |
124 config("runtime_library") { | 128 config("runtime_library") { |
125 # NOTE: The libc++ header include paths below are specified in cflags | 129 # NOTE: The libc++ header include paths below are specified in cflags |
126 # rather than include_dirs because they need to come after include_dirs. | 130 # rather than include_dirs because they need to come after include_dirs. |
127 # Think of them like system headers, but don't use '-isystem' because the | 131 # Think of them like system headers, but don't use '-isystem' because the |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
187 | 191 |
188 # Clang with libc++ does not require an explicit atomic library reference. | 192 # Clang with libc++ does not require an explicit atomic library reference. |
189 if (!is_clang) { | 193 if (!is_clang) { |
190 libs += [ "atomic" ] | 194 libs += [ "atomic" ] |
191 } | 195 } |
192 } | 196 } |
193 | 197 |
194 config("sdk") { | 198 config("sdk") { |
195 if (sysroot != "") { | 199 if (sysroot != "") { |
196 cflags = [ "--sysroot=" + sysroot ] | 200 cflags = [ "--sysroot=" + sysroot ] |
| 201 asmflags = [ "--sysroot=" + sysroot ] |
197 ldflags = [ "--sysroot=" + sysroot ] | 202 ldflags = [ "--sysroot=" + sysroot ] |
198 | 203 |
199 # Need to get some linker flags out of the sysroot. | 204 # Need to get some linker flags out of the sysroot. |
200 sysroot_ld_path = rebase_path("//build/config/linux/sysroot_ld_path.py") | 205 sysroot_ld_path = rebase_path("//build/config/linux/sysroot_ld_path.py") |
201 ldflags += [ exec_script(sysroot_ld_path, | 206 ldflags += [ exec_script(sysroot_ld_path, |
202 [ | 207 [ |
203 rebase_path("//build/linux/sysroot_ld_path.sh"), | 208 rebase_path("//build/linux/sysroot_ld_path.sh"), |
204 sysroot, | 209 sysroot, |
205 ], | 210 ], |
206 "value") ] | 211 "value") ] |
207 } | 212 } |
208 } | 213 } |
209 | 214 |
210 config("executable_config") { | 215 config("executable_config") { |
211 cflags = [ "-fPIE" ] | 216 cflags = [ "-fPIE" ] |
| 217 asmflags = [ "-fPIE" ] |
212 ldflags = [ "-pie" ] | 218 ldflags = [ "-pie" ] |
213 } | 219 } |
214 | 220 |
215 config("hide_native_jni_exports") { | 221 config("hide_native_jni_exports") { |
216 ldflags = [ "-Wl,--version-script=" + | 222 ldflags = [ "-Wl,--version-script=" + |
217 rebase_path("//build/android/android_no_jni_exports.lst") ] | 223 rebase_path("//build/android/android_no_jni_exports.lst") ] |
218 } | 224 } |
OLD | NEW |