diff options
author | raywilliams <raywilliams@google.com> | 2015-06-22 09:17:37 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-06-22 16:17:59 +0000 |
commit | 6ffb1179d6adf08edd64848b45b7415b6b6de43d (patch) | |
tree | 18fbe00ba29dae845f555ec1f266cb75693b45e0 /build/java_apk.gypi | |
parent | 50f6a89145b1e209ae464d95b1576a2a4116ac8a (diff) | |
download | chromium_src-6ffb1179d6adf08edd64848b45b7415b6b6de43d.zip chromium_src-6ffb1179d6adf08edd64848b45b7415b6b6de43d.tar.gz chromium_src-6ffb1179d6adf08edd64848b45b7415b6b6de43d.tar.bz2 |
Add the Errorprone Java Compiler
These changes let the errorprone compiler find problems when building Android.
A global flag disabled Errorprone by default.
When enabled, code problems will be shown with suggestions on how to fix them.
BUG=485599
Review URL: https://codereview.chromium.org/1136573002
Cr-Commit-Position: refs/heads/master@{#335509}
Diffstat (limited to 'build/java_apk.gypi')
-rw-r--r-- | build/java_apk.gypi | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/build/java_apk.gypi b/build/java_apk.gypi index 6b92021..64cd67c 100644 --- a/build/java_apk.gypi +++ b/build/java_apk.gypi @@ -209,6 +209,8 @@ 'native_lib_placeholder_stamp': '<(apk_package_native_libs_dir)/<(android_app_abi)/native_lib_placeholder.stamp', 'native_lib_placeholders': [], 'main_apk_name': '<(apk_name)', + 'enable_errorprone%': '0', + 'errorprone_exe_path': '<(PRODUCT_DIR)/bin.java/chromium_errorprone', }, # Pass the jar path to the apk's "fake" jar target. This would be better as # direct_dependent_settings, but a variable set by a direct_dependent_settings @@ -251,6 +253,11 @@ '<(DEPTH)/base/base.gyp:chromium_android_linker', ], }], + ['enable_errorprone == 1', { + 'dependencies': [ + '<(DEPTH)/third_party/errorprone/errorprone.gyp:chromium_errorprone', + ], + }], ['native_lib_target != ""', { 'variables': { 'conditions': [ @@ -793,6 +800,8 @@ 'action_name': 'javac_<(_target_name)', 'message': 'Compiling java for <(_target_name)', 'variables': { + 'extra_args': [], + 'extra_inputs': [], 'gen_src_dirs': [ '<(intermediate_dir)/gen', '>@(generated_src_dirs)', @@ -808,7 +817,14 @@ # targets use the same java_in_dir and both use java_apk.gypi or # both use java.gypi.) 'java_sources': ['>!@(find >(java_in_dir)>(java_in_dir_suffix) >(additional_src_dirs) -name "*.java" # apk)'], - + 'conditions': [ + ['enable_errorprone == 1', { + 'extra_inputs': [ + '<(errorprone_exe_path)', + ], + 'extra_args': [ '--use-errorprone-path=<(errorprone_exe_path)' ], + }], + ], }, 'inputs': [ '<(DEPTH)/build/android/gyp/util/build_utils.py', @@ -816,6 +832,7 @@ '>@(java_sources)', '>@(input_jars_paths)', '<(codegen_stamp)', + '<@(extra_inputs)', ], 'conditions': [ ['native_lib_target != ""', { @@ -835,6 +852,7 @@ '--jar-path=<(javac_jar_path)', '--jar-excluded-classes=<(jar_excluded_classes)', '--stamp=<(compile_stamp)', + '<@(extra_args)', '>@(java_sources)', ], }, |