Chromium Code Reviews| Index: build/config/android/rules.gni | 
| diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni | 
| index c516a8c6857711614a7c13f2295a55fc98e6ae1a..82d2781e4f042f769095024798f9fa8307b8b05d 100644 | 
| --- a/build/config/android/rules.gni | 
| +++ b/build/config/android/rules.gni | 
| @@ -1303,6 +1303,12 @@ template("android_apk") { | 
| # Help GN understand that _create_abi_split is not unused (bug in GN). | 
| assert(_create_abi_split || true) | 
| + _proguard_enabled = false | 
| + if (defined(invoker.proguard_enabled) && invoker.proguard_enabled) { | 
| + _proguard_enabled = true | 
| + _proguard_jar_path = "$base_path.proguard.jar" | 
| + } | 
| + | 
| write_build_config("${_template_name}__build_config") { | 
| type = "android_apk" | 
| dex_path = final_dex_path | 
| @@ -1318,12 +1324,18 @@ template("android_apk") { | 
| apk_under_test = invoker.apk_under_test | 
| } | 
| + if (_proguard_enabled) { | 
| + proguard_enabled = true | 
| + proguard_info = "$_proguard_jar_path.info" | 
| + } | 
| + | 
| native_libs = _native_libs | 
| } | 
| final_deps = [] | 
| final_deps += [ ":${_template_name}__process_resources" ] | 
| + _generated_proguard_config = "$base_path.resources.proguard.txt" | 
| process_resources("${_template_name}__process_resources") { | 
| srcjar_path = "${target_gen_dir}/${target_name}.srcjar" | 
| r_text_path = "${target_gen_dir}/${target_name}_R.txt" | 
| @@ -1332,6 +1344,7 @@ template("android_apk") { | 
| zip_path = resources_zip_path | 
| all_resources_zip_path = _all_resources_zip_path | 
| generate_constant_ids = true | 
| + proguard_file = _generated_proguard_config | 
| build_config = _build_config | 
| if (defined(invoker.include_all_resources)) { | 
| @@ -1421,12 +1434,36 @@ template("android_apk") { | 
| } | 
| final_deps += [ ":${_template_name}__final_dex" ] | 
| + | 
| + dex_jar_path = jar_path | 
| + if (defined(invoker.proguard_enabled) && invoker.proguard_enabled) { | 
| + _proguard_configs = [ _generated_proguard_config ] | 
| + if (defined(invoker.proguard_configs)) { | 
| + _proguard_configs += invoker.proguard_configs | 
| + } | 
| + proguard("${_template_name}__proguard") { | 
| + inputs = [ | 
| 
 
newt (away)
2015/05/29 01:43:04
funky indentation. this would be more normal:
 
 | 
| + _build_config, | 
| + jar_path, | 
| + ] + _proguard_configs | 
| + | 
| + output_jar_path = _proguard_jar_path | 
| + rebased_proguard_configs = rebase_path(_proguard_configs, root_build_dir) | 
| + args = [ | 
| + "--proguard-configs=$rebased_proguard_configs", | 
| + "--tested-apk-info=@FileArg($_rebased_build_config:proguard:tested_apk_info)", | 
| + "--input-paths=@FileArg($_rebased_build_config:proguard:input_paths)", | 
| + ] | 
| + } | 
| + dex_jar_path = _proguard_jar_path | 
| + } | 
| + | 
| dex("${_template_name}__final_dex") { | 
| deps = [ | 
| ":${_template_name}__java", | 
| ] | 
| sources = [ | 
| - jar_path, | 
| + dex_jar_path, | 
| ] | 
| inputs = [ | 
| _build_config, |