Chromium Code Reviews| 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 | 7 |
| 8 assert(is_android) | 8 assert(is_android) |
| 9 | 9 |
| 10 # This is included by reference in the //build/config/compiler config that | 10 # This is included by reference in the //build/config/compiler config that |
| (...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 114 lib_dirs = [ android_libcpp_lib_dir ] | 114 lib_dirs = [ android_libcpp_lib_dir ] |
| 115 | 115 |
| 116 # The libc++ runtime library (must come first). | 116 # The libc++ runtime library (must come first). |
| 117 # ASan needs to dynamically link to libc++ even in static builds so | 117 # ASan needs to dynamically link to libc++ even in static builds so |
| 118 # that it can interpose operator new. | 118 # that it can interpose operator new. |
| 119 if (is_component_build || is_asan) { | 119 if (is_component_build || is_asan) { |
| 120 libs = [ "c++_shared" ] | 120 libs = [ "c++_shared" ] |
| 121 } else { | 121 } else { |
| 122 libs = [ "c++_static" ] | 122 libs = [ "c++_static" ] |
| 123 } | 123 } |
| 124 libs += [ | |
| 125 "c++abi", | |
|
agrieve
2016/09/04 00:44:32
Might need to update cpplib_* with these extra lib
jbudorick
2016/09/05 16:33:03
I don't think that's necessary here; libc++_shared
| |
| 126 "android_support", | |
| 127 ] | |
| 128 | |
| 129 if (current_cpu == "arm") { | |
|
agrieve
2016/09/04 00:44:32
This raises an eyebrow (needs a comment). Why only
jbudorick
2016/09/05 16:33:03
Comment added. libc++ requires it, but only on arm
| |
| 130 libs += [ "unwind" ] | |
| 131 } | |
| 124 | 132 |
| 125 # Manually link the libgcc.a that the cross compiler uses. This is | 133 # Manually link the libgcc.a that the cross compiler uses. This is |
| 126 # absolute because the linker will look inside the sysroot if it's not. | 134 # absolute because the linker will look inside the sysroot if it's not. |
| 127 libs += [ | 135 libs += [ |
| 128 rebase_path(android_libgcc_file), | 136 rebase_path(android_libgcc_file), |
| 129 "c", | 137 "c", |
| 130 ] | 138 ] |
| 131 | 139 |
| 132 # Clang with libc++ does not require an explicit atomic library reference. | 140 # Clang with libc++ does not require an explicit atomic library reference. |
| 133 if (!is_clang) { | 141 if (!is_clang) { |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 188 | 196 |
| 189 # Avoid errors with current NDK: | 197 # Avoid errors with current NDK: |
| 190 # "third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.6/preb uilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/include/arm_neon.h:34 26:3: error: argument must be a constant" | 198 # "third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.6/preb uilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.6/include/arm_neon.h:34 26:3: error: argument must be a constant" |
| 191 "-finstrument-functions-exclude-file-list=arm_neon.h", | 199 "-finstrument-functions-exclude-file-list=arm_neon.h", |
| 192 ] | 200 ] |
| 193 } | 201 } |
| 194 } | 202 } |
| 195 | 203 |
| 196 config("no_cygprofile_instrumentation") { | 204 config("no_cygprofile_instrumentation") { |
| 197 } | 205 } |
| OLD | NEW |