Index: build/config/android/rules.gni |
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni |
index 91d84cc48dd514cc274735a92ddcd3ccd3bfea8f..fe40a45541fc128f9755d016e9c1d5411308c528 100644 |
--- a/build/config/android/rules.gni |
+++ b/build/config/android/rules.gni |
@@ -1399,6 +1399,7 @@ if (enable_java_templates) { |
# default will use the build arg run_findbugs. |
# proguard_jar_path: The path to proguard.jar you wish to use. If undefined, |
# the proguard used will be the checked in one in //third_party/proguard. |
+ # never_incremental: If true, |incremental_apk_by_default| will be ignored. |
agrieve
2016/12/14 15:53:03
Just realized - we should set this for monochrome_
estevenson
2016/12/14 22:26:03
Done.
|
# |
# Example |
# android_apk("foo_apk") { |
@@ -1463,7 +1464,11 @@ if (enable_java_templates) { |
_install_script_name = invoker.install_script_name |
} |
_incremental_install_script_path = |
- "${root_out_dir}/bin/${_install_script_name}_incremental" |
+ "${root_out_dir}/bin/${_install_script_name}" |
+ if (!incremental_apk_by_default) { |
+ _incremental_install_script_path = |
+ "${_incremental_install_script_path}_incremental" |
+ } |
_version_code = android_default_version_code |
if (defined(invoker.version_code)) { |
@@ -2197,18 +2202,26 @@ if (enable_java_templates) { |
} |
group(target_name) { |
- forward_variables_from(invoker, |
- [ |
- "data", |
- "data_deps", |
- ]) |
- public_deps = _final_deps |
- |
- # Make the proguard .mapping file easy to find by putting it beside the .apk. |
- if (_proguard_enabled) { |
+ _incremental_allowed = |
+ !(defined(invoker.never_incremental) && invoker.never_incremental) |
+ if (_incremental_allowed && incremental_apk_by_default) { |
deps = [ |
- ":$_copy_proguard_mapping_target", |
+ ":${target_name}_incremental", |
] |
+ } else { |
+ forward_variables_from(invoker, |
+ [ |
+ "data", |
+ "data_deps", |
+ ]) |
+ public_deps = _final_deps |
+ |
+ # Make the proguard .mapping file easy to find by putting it beside the .apk. |
+ if (_proguard_enabled) { |
+ deps = [ |
+ ":$_copy_proguard_mapping_target", |
+ ] |
+ } |
} |
} |
group("${target_name}_incremental") { |
agrieve
2016/12/14 15:53:03
Realized too - we should not define this target wh
estevenson
2016/12/14 22:26:03
Done.
|
@@ -2282,25 +2295,33 @@ if (enable_java_templates) { |
_install_script_name = "install_$target_name" |
_dist_ijar_path = |
"$root_build_dir/test.lib.java/" + invoker.apk_name + ".jar" |
- |
- test_runner_script(_test_runner_target_name) { |
- forward_variables_from(invoker, |
- [ |
- "additional_apks", |
- "apk_under_test", |
- "data", |
- "data_deps", |
- "deps", |
- "ignore_all_data_deps", |
- "public_deps", |
- ]) |
- test_name = invoker.target_name |
- test_type = "instrumentation" |
- apk_target = ":$_apk_target_name" |
- test_jar = _dist_ijar_path |
+ _incremental_test_runner_target_name = |
+ "${_test_runner_target_name}_incremental" |
+ _incremental_test_name = "${invoker.target_name}_incremental" |
+ if (incremental_apk_by_default) { |
+ _incremental_test_runner_target_name = _test_runner_target_name |
+ _incremental_test_name = invoker.target_name |
} |
- test_runner_script("${_test_runner_target_name}_incremental") { |
+ if (!incremental_apk_by_default) { |
+ test_runner_script(_test_runner_target_name) { |
+ forward_variables_from(invoker, |
+ [ |
+ "additional_apks", |
+ "apk_under_test", |
+ "data", |
+ "data_deps", |
+ "deps", |
+ "ignore_all_data_deps", |
+ "public_deps", |
+ ]) |
+ test_name = invoker.target_name |
+ test_type = "instrumentation" |
+ apk_target = ":$_apk_target_name" |
+ test_jar = _dist_ijar_path |
+ } |
+ } |
+ test_runner_script(_incremental_test_runner_target_name) { |
forward_variables_from(invoker, |
[ |
"additional_apks", |
@@ -2311,7 +2332,7 @@ if (enable_java_templates) { |
"ignore_all_data_deps", |
"public_deps", |
]) |
- test_name = "${invoker.target_name}_incremental" |
+ test_name = _incremental_test_name |
test_type = "instrumentation" |
apk_target = ":$_apk_target_name" |
test_jar = _dist_ijar_path |
@@ -2354,15 +2375,21 @@ if (enable_java_templates) { |
} |
group(target_name) { |
- public_deps = [ |
- ":$_apk_target_name", |
- ":$_test_runner_target_name", |
+ if (incremental_apk_by_default) { |
+ deps = [ |
+ ":${target_name}_incremental", |
+ ] |
+ } else { |
+ public_deps = [ |
+ ":$_apk_target_name", |
+ ":$_test_runner_target_name", |
- # Required by test runner to enumerate test list. |
- ":${_apk_target_name}_dist_ijar", |
- ] |
- if (defined(invoker.apk_under_test)) { |
- public_deps += [ invoker.apk_under_test ] |
+ # Required by test runner to enumerate test list. |
+ ":${_apk_target_name}_dist_ijar", |
+ ] |
+ if (defined(invoker.apk_under_test)) { |
+ public_deps += [ invoker.apk_under_test ] |
+ } |
} |
} |
@@ -2374,9 +2401,9 @@ if (enable_java_templates) { |
} |
group("${target_name}_incremental") { |
public_deps = [ |
+ ":$_incremental_test_runner_target_name", |
":${_apk_target_name}_dist_ijar", |
":${_apk_target_name}_incremental", |
- ":${_test_runner_target_name}_incremental", |
] |
if (defined(invoker.apk_under_test)) { |
public_deps += [ "${invoker.apk_under_test}_incremental" ] |