summaryrefslogtreecommitdiffstats
path: root/build/java_apk.gypi
diff options
context:
space:
mode:
authorraywilliams <raywilliams@google.com>2015-06-22 09:17:37 -0700
committerCommit bot <commit-bot@chromium.org>2015-06-22 16:17:59 +0000
commit6ffb1179d6adf08edd64848b45b7415b6b6de43d (patch)
tree18fbe00ba29dae845f555ec1f266cb75693b45e0 /build/java_apk.gypi
parent50f6a89145b1e209ae464d95b1576a2a4116ac8a (diff)
downloadchromium_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.gypi20
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)',
],
},