diff options
author | 2018-03-26 13:36:22 -0700 | |
---|---|---|
committer | 2018-03-26 13:38:59 -0700 | |
commit | 848e78623fb418381e2982e00b7a3021e6c312f0 (patch) | |
tree | db7c26d8ed1002e93042ff1ec9196f88ad561d84 /src | |
parent | 7a45873dcdebc3e78cc7f26402d533ef9101106b (diff) |
Enable params files for DexMapper.
RELNOTES: None
PiperOrigin-RevId: 190516662
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/android/AndroidBinary.java | 4 | ||||
-rw-r--r-- | src/tools/android/java/com/google/devtools/build/android/ziputils/DexMapper.java | 14 |
2 files changed, 13 insertions, 5 deletions
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 44a171ae27..2d1c5e9e5e 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 @@ -34,6 +34,7 @@ import com.google.devtools.build.lib.actions.FailAction; import com.google.devtools.build.lib.actions.MutableActionGraph.ActionConflictException; import com.google.devtools.build.lib.actions.ParamFileInfo; import com.google.devtools.build.lib.actions.ParameterFile; +import com.google.devtools.build.lib.actions.ParameterFile.ParameterFileType; import com.google.devtools.build.lib.analysis.ConfiguredTarget; import com.google.devtools.build.lib.analysis.FileProvider; import com.google.devtools.build.lib.analysis.FilesToRunProvider; @@ -1490,7 +1491,8 @@ public abstract class AndroidBinary implements RuleConfiguredTargetFactory { } } - shardAction.addCommandLine(shardCommandLine.build()); + shardAction.addCommandLine( + shardCommandLine.build(), ParamFileInfo.builder(ParameterFileType.SHELL_QUOTED).build()); ruleContext.registerAction(shardAction.build(ruleContext)); if (makeDexArchives && proguardedJar != null) { diff --git a/src/tools/android/java/com/google/devtools/build/android/ziputils/DexMapper.java b/src/tools/android/java/com/google/devtools/build/android/ziputils/DexMapper.java index cbb0e80fa7..d143eb276d 100644 --- a/src/tools/android/java/com/google/devtools/build/android/ziputils/DexMapper.java +++ b/src/tools/android/java/com/google/devtools/build/android/ziputils/DexMapper.java @@ -19,8 +19,10 @@ import com.google.common.base.Predicates; import com.google.devtools.common.options.Option; import com.google.devtools.common.options.OptionDocumentationCategory; import com.google.devtools.common.options.OptionEffectTag; -import com.google.devtools.common.options.Options; import com.google.devtools.common.options.OptionsBase; +import com.google.devtools.common.options.OptionsParser; +import com.google.devtools.common.options.ShellQuotedParamsFilePreProcessor; +import java.nio.file.FileSystems; import java.util.List; /** @@ -36,9 +38,13 @@ public class DexMapper { * @param args the command line arguments */ public static void main(String[] args) { - DexMapperOptions options = - Options.parseAndExitUponError(DexMapperOptions.class, /*allowResidue=*/ true, args) - .getOptions(); + + OptionsParser parser = OptionsParser.newOptionsParser(DexMapperOptions.class); + parser.setAllowResidue(true); + parser.enableParamsFileSupport(new ShellQuotedParamsFilePreProcessor(FileSystems.getDefault())); + parser.parseAndExitUponError(args); + DexMapperOptions options = parser.getOptions(DexMapperOptions.class); + List<String> inputs = options.inputJars; List<String> outputs = options.outputJars; String filterFile = options.mainDexFilter; |