summaryrefslogtreecommitdiffstats
path: root/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
diff options
context:
space:
mode:
authorJean-Marie Henaff <jmhenaff@google.com>2014-12-22 11:42:12 +0100
committerJean-Marie Henaff <jmhenaff@google.com>2014-12-23 11:52:38 +0100
commita39b4cca9527eafc3937441fb872d6c83034aa78 (patch)
treef67c9977f10394bda7a12bd8275245e3f6b62a0d /jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
parent2c17cbfaa698e70f05d29ebaf6cf4c58139d46d4 (diff)
downloadtoolchain_jack-a39b4cca9527eafc3937441fb872d6c83034aa78.zip
toolchain_jack-a39b4cca9527eafc3937441fb872d6c83034aa78.tar.gz
toolchain_jack-a39b4cca9527eafc3937441fb872d6c83034aa78.tar.bz2
Add support for creation of lib from no source in api toolchain
Change-Id: Ib4ab93d406a548bfd041e3641887ece1a6be35d7
Diffstat (limited to 'jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java')
-rw-r--r--jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java64
1 files changed, 29 insertions, 35 deletions
diff --git a/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java b/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
index 7bb7ff0..f6eee6d 100644
--- a/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
+++ b/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
@@ -23,6 +23,7 @@ import com.android.jack.shrob.spec.Flags;
import java.io.File;
import java.util.ArrayList;
+import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
@@ -58,28 +59,12 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.applyShrobFlags();
}
- jackOptions.setEcjArguments(new ArrayList<String>());
-
- if (annotationProcessorClass != null) {
- jackOptions.getEcjArguments().add("-processor");
- jackOptions.getEcjArguments().add(annotationProcessorClass.getName());
- }
-
- if (annotationProcessorOutDir != null) {
- jackOptions.getEcjArguments().add("-d");
- jackOptions.getEcjArguments().add(annotationProcessorOutDir.getAbsolutePath());
- }
+ fillEcjArgs(sources);
for (File res : resImport) {
jackOptions.addResource(res);
}
- for (String ecjArg : extraEcjArgs) {
- jackOptions.getEcjArguments().add(ecjArg);
- }
-
- AbstractTestTools.addFile(jackOptions.getEcjArguments(),
- /* mustExist = */false, sources);
jackOptions.setClasspath(classpath);
if (zipFile) {
@@ -129,29 +114,13 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.setJayceOutputDir(out);
}
- jackOptions.setEcjArguments(new ArrayList<String>());
-
- if (annotationProcessorClass != null) {
- jackOptions.getEcjArguments().add("-processor");
- jackOptions.getEcjArguments().add(annotationProcessorClass.getName());
- }
-
- if (annotationProcessorOutDir != null) {
- jackOptions.getEcjArguments().add("-d");
- jackOptions.getEcjArguments().add(annotationProcessorOutDir.getAbsolutePath());
- }
+ fillEcjArgs(sources);
for (File res : resImport) {
jackOptions.addResource(res);
}
- for (String ecjArg : extraEcjArgs) {
- jackOptions.getEcjArguments().add(ecjArg);
- }
-
- AbstractTestTools.addFile(jackOptions.getEcjArguments(),
- /* mustExist = */false, sources);
-
+ jackOptions.setJayceImports(staticLibs);
jackOptions.setJarjarRulesFile(jarjarRules);
@@ -279,4 +248,29 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.addProperty(entry.getKey(), entry.getValue());
}
}
+
+ private final void fillEcjArgs(@Nonnull File... sources) {
+ List<String> ecjArgs = new ArrayList<String>();
+
+ if (annotationProcessorClass != null) {
+ ecjArgs.add("-processor");
+ ecjArgs.add(annotationProcessorClass.getName());
+ }
+
+ if (annotationProcessorOutDir != null) {
+ ecjArgs.add("-d");
+ ecjArgs.add(annotationProcessorOutDir.getAbsolutePath());
+ }
+
+ for (String ecjArg : extraEcjArgs) {
+ ecjArgs.add(ecjArg);
+ }
+
+ AbstractTestTools.addFile(ecjArgs, /* mustExist = */false, sources);
+
+ if (ecjArgs.size() > 0) {
+ jackOptions.setEcjArguments(ecjArgs);
+ }
+ }
+
}