From 1d535c69379cf88519ed0e453c963383115c92c3 Mon Sep 17 00:00:00 2001 From: Michael Staib Date: Thu, 29 Oct 2015 16:39:38 +0000 Subject: Moves -printmapping to the end of the Proguard arguments list. If the proguard configuration itself contains -printmapping, this will override the -printmapping specified on the command line (by virtue of coming later). Putting it last means that this -printmapping will take precedence over any others, meaning that Proguard will always generate the correct mapping, preventing an action failure from not producing the correct output files. -- MOS_MIGRATED_REVID=106601595 --- .../devtools/build/lib/rules/android/AndroidBinary.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/main/java/com/google/devtools') diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java index 6c8fd51b0b..a287862241 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java @@ -813,6 +813,13 @@ public abstract class AndroidBinary implements RuleConfiguredTargetFactory { .addArgument(proguardMapping.getExecPathString()); } + builder.addArgument("-outjars") + .addArgument(proguardOutputJar.getExecPathString()); + + for (Artifact proguardSpec : proguardSpecs) { + builder.addArgument("@" + proguardSpec.getExecPathString()); + } + Artifact proguardOutputMap = null; if (ruleContext.attributes().get("proguard_generate_mapping", Type.BOOLEAN)) { proguardOutputMap = ruleContext.getImplicitOutputArtifact( @@ -824,13 +831,6 @@ public abstract class AndroidBinary implements RuleConfiguredTargetFactory { filesBuilder.add(proguardOutputMap); } - builder.addArgument("-outjars") - .addArgument(proguardOutputJar.getExecPathString()); - - for (Artifact proguardSpec : proguardSpecs) { - builder.addArgument("@" + proguardSpec.getExecPathString()); - } - ruleContext.registerAction(builder.build(ruleContext)); return new ProguardOutput(proguardOutputJar, proguardOutputMap); } -- cgit v1.2.3