summaryrefslogtreecommitdiffstats
path: root/jill
diff options
context:
space:
mode:
authorJean-Philippe Lesot <jplesot@google.com>2014-10-23 19:31:39 +0200
committerJean-Philippe Lesot <jplesot@google.com>2014-10-23 19:37:11 +0200
commit916c60b458937e26064df8f8391ea54e862cdfcd (patch)
tree2f39624378c7c461cc1e1353f2ba8ef0c173db62 /jill
parent589e047557d3bafd14fc581106a42b8b7119b086 (diff)
downloadtoolchain_jill-916c60b458937e26064df8f8391ea54e862cdfcd.tar.gz
toolchain_jill-916c60b458937e26064df8f8391ea54e862cdfcd.tar.bz2
toolchain_jill-916c60b458937e26064df8f8391ea54e862cdfcd.zip
Add support for generic '@' in Jill command line
Change-Id: I78ab36986d9867e6020d8181ffcf36c46086f20f
Diffstat (limited to 'jill')
-rw-r--r--jill/src/com/android/jill/Main.java21
1 files changed, 18 insertions, 3 deletions
diff --git a/jill/src/com/android/jill/Main.java b/jill/src/com/android/jill/Main.java
index a9a6885..7c65d47 100644
--- a/jill/src/com/android/jill/Main.java
+++ b/jill/src/com/android/jill/Main.java
@@ -16,11 +16,16 @@
package com.android.jill;
+import com.android.sched.util.config.cli.TokenIterator;
+import com.android.sched.util.location.NoLocation;
+
import org.kohsuke.args4j.CmdLineException;
import org.kohsuke.args4j.CmdLineParser;
import java.io.IOException;
import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Properties;
import javax.annotation.Nonnull;
@@ -30,7 +35,7 @@ import javax.annotation.Nonnull;
*/
public class Main {
- public static void main(@Nonnull String[] args) throws IOException {
+ public static void main(@Nonnull String[] args) {
Options options = null;
try {
@@ -61,6 +66,10 @@ public class Main {
System.err.println("Try --help for help");
}
System.exit(ExitStatus.FAILURE_USAGE);
+ } catch (IOException e) {
+ System.err.println(e.getMessage());
+
+ System.exit(ExitStatus.FAILURE_USAGE);
} catch (JillException e) {
if (options != null) {
System.err.println("Binary transformation of " + options.getBinaryFile().getName()
@@ -79,13 +88,19 @@ public class Main {
}
@Nonnull
- public static Options getOptions(@Nonnull String[] args) throws CmdLineException {
+ public static Options getOptions(@Nonnull String[] args) throws CmdLineException, IOException {
Options options = new Options();
+
CmdLineParser parser = new CmdLineParser(options);
parser.setUsageWidth(100);
- parser.parseArgument(args);
+ TokenIterator iterator = new TokenIterator(new NoLocation(), args);
+ List<String> list = new ArrayList<String>();
+ while (iterator.hasNext()) {
+ list.add(iterator.next());
+ }
+ parser.parseArgument(list);
parser.stopOptionParsing();
try {