Chromium Code Reviews| Index: components/cronet/android/BUILD.gn |
| diff --git a/components/cronet/android/BUILD.gn b/components/cronet/android/BUILD.gn |
| index 170bb4c7f3885d6d1c56b6e34efb54a2bdee56f5..170812c5f84b0ef5bf5c863d849af74a0d4a8c2e 100644 |
| --- a/components/cronet/android/BUILD.gn |
| +++ b/components/cronet/android/BUILD.gn |
| @@ -869,6 +869,26 @@ action("generate_javadoc") { |
| ] |
| } |
| +action("enforce_no_neon") { |
| + assert(!arm_use_neon) |
| + script = "//components/cronet/tools/check_no_neon.py" |
| + args = [ |
| + rebase_path("${android_tool_prefix}objdump", root_build_dir), |
| + |
| + # libcronet.so may contain ARM Neon instructions from BoringSSL, but these |
| + # are only used after checking whether the CPU supports NEON at runtime, |
| + # so instead check base/ as it represents a large swath of code that only |
| + # contains Neon instructions when Neon is enabled by default. |
| + rebase_path("$root_out_dir/obj/base/base/*.o", root_build_dir), |
| + ] |
| + outputs = [ |
| + "$root_out_dir/cronet_$target_name.d", |
| + ] |
| + deps = [ |
| + "//base:base", |
| + ] |
| +} |
| + |
| copy("cronet_package_copy") { |
| sources = [ |
| "$root_out_dir/lib.java/components/cronet/android/cronet_api.jar", |
| @@ -909,16 +929,23 @@ copy("cronet_package_copy_native_lib_unstripped") { |
| ] |
| } |
| -group("cronet_package") { |
| - deps = [ |
| - ":cronet_package_copy", |
| - ":cronet_package_copy_native_lib", |
| - ":cronet_package_copy_native_lib_unstripped", |
| - ":generate_javadoc", |
| - ":generate_licenses", |
| - ":jar_cronet_api_source", |
| - ":jar_cronet_other_source", |
| - ":jar_cronet_sample_source", |
| - ":repackage_extracted_jars", |
| - ] |
| +# Enforce that arm_use_neon==false when building for ARMv7 by |
| +# not generating the cronet_package target otherwise. |
| +if (!(target_cpu == "arm" && arm_version == 7) || !arm_use_neon) { |
| + group("cronet_package") { |
|
Dirk Pranke
2016/07/27 00:01:49
It seems like you generally want cronet_package to
pauljensen
2016/07/27 12:11:46
Done.
|
| + deps = [ |
| + ":cronet_package_copy", |
| + ":cronet_package_copy_native_lib", |
| + ":cronet_package_copy_native_lib_unstripped", |
| + ":generate_javadoc", |
| + ":generate_licenses", |
| + ":jar_cronet_api_source", |
| + ":jar_cronet_other_source", |
| + ":jar_cronet_sample_source", |
| + ":repackage_extracted_jars", |
| + ] |
| + if (current_cpu == "arm" && arm_version == 7) { |
| + deps += [ ":enforce_no_neon" ] |
| + } |
| + } |
| } |