summaryrefslogtreecommitdiffstats
path: root/jack-tests/src/com/android
diff options
context:
space:
mode:
Diffstat (limited to 'jack-tests/src/com/android')
-rw-r--r--jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java16
-rw-r--r--jack-tests/src/com/android/jack/test/toolchain/JackBasedToolchain.java8
-rw-r--r--jack-tests/src/com/android/jack/test/toolchain/JackCliToolchain.java20
-rw-r--r--jack-tests/src/com/android/jack/test/toolchain/LegacyJillToolchain.java6
4 files changed, 50 insertions, 0 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 77a6afac..99b0ddb5 100644
--- a/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
+++ b/jack-tests/src/com/android/jack/test/toolchain/JackApiToolchain.java
@@ -69,6 +69,10 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.getEcjArguments().add(annotationProcessorOutDir.getAbsolutePath());
}
+ for (File res : resImport) {
+ jackOptions.addResource(res);
+ }
+
for (String ecjArg : extraEcjArgs) {
jackOptions.getEcjArguments().add(ecjArg);
}
@@ -136,6 +140,10 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.getEcjArguments().add(annotationProcessorOutDir.getAbsolutePath());
}
+ for (File res : resImport) {
+ jackOptions.addResource(res);
+ }
+
for (String ecjArg : extraEcjArgs) {
jackOptions.getEcjArguments().add(ecjArg);
}
@@ -188,6 +196,10 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.getJayceImport().add(in);
jackOptions.getJayceImport().addAll(staticLibs);
+ for (File res : resImport) {
+ jackOptions.addResource(res);
+ }
+
if (zipFile) {
jackOptions.setOutputZip(out);
} else {
@@ -216,6 +228,10 @@ public class JackApiToolchain extends JackBasedToolchain {
jackOptions.setProguardFlagsFile(proguardFlags);
}
+ for (File res : resImport) {
+ jackOptions.addResource(res);
+ }
+
for (File staticLib : in) {
jackOptions.getJayceImport().add(staticLib);
}
diff --git a/jack-tests/src/com/android/jack/test/toolchain/JackBasedToolchain.java b/jack-tests/src/com/android/jack/test/toolchain/JackBasedToolchain.java
index cb20677a..e5a57acc 100644
--- a/jack-tests/src/com/android/jack/test/toolchain/JackBasedToolchain.java
+++ b/jack-tests/src/com/android/jack/test/toolchain/JackBasedToolchain.java
@@ -49,6 +49,8 @@ public abstract class JackBasedToolchain extends AndroidToolchain {
protected File annotationProcessorOutDir;
@Nonnull
protected List<String> extraEcjArgs = new ArrayList<String>();
+ @Nonnull
+ protected List<File> resImport = new ArrayList<File>();
@Nonnull
public final JackBasedToolchain addProperty(@Nonnull String propertyName,
@@ -81,6 +83,12 @@ public abstract class JackBasedToolchain extends AndroidToolchain {
}
@Nonnull
+ public JackBasedToolchain addResource(@Nonnull File resource) {
+ resImport.add(resource);
+ return this;
+ }
+
+ @Nonnull
public final JackBasedToolchain setAnnotationProcessorOutDir(
@Nonnull File annotationProcessorOutDir) {
this.annotationProcessorOutDir = annotationProcessorOutDir;
diff --git a/jack-tests/src/com/android/jack/test/toolchain/JackCliToolchain.java b/jack-tests/src/com/android/jack/test/toolchain/JackCliToolchain.java
index 517d9552..485d0663 100644
--- a/jack-tests/src/com/android/jack/test/toolchain/JackCliToolchain.java
+++ b/jack-tests/src/com/android/jack/test/toolchain/JackCliToolchain.java
@@ -68,6 +68,11 @@ public class JackCliToolchain extends JackBasedToolchain {
args.add(classpath);
}
+ for (File res : resImport) {
+ args.add("--import-resource");
+ args.add(res.getPath());
+ }
+
if (zipFile) {
args.add("--output-dex-zip");
} else {
@@ -144,6 +149,11 @@ public class JackCliToolchain extends JackBasedToolchain {
args.add(classpath);
}
+ for (File res : resImport) {
+ args.add("--import-resource");
+ args.add(res.getPath());
+ }
+
if (zipFiles) {
args.add("--output-jack");
} else {
@@ -207,6 +217,11 @@ public class JackCliToolchain extends JackBasedToolchain {
}
args.add(com.android.jack.Main.class.getName());
+ for (File res : resImport) {
+ args.add("--import-resource");
+ args.add(res.getPath());
+ }
+
if (withDebugInfos) {
args.add("-D");
args.add("jack.dex.optimize=false");
@@ -257,6 +272,11 @@ public class JackCliToolchain extends JackBasedToolchain {
}
args.add(com.android.jack.Main.class.getName());
+ for (File res : resImport) {
+ args.add("--import-resource");
+ args.add(res.getPath());
+ }
+
addProperties(properties, args);
if (jarjarRules != null) {
diff --git a/jack-tests/src/com/android/jack/test/toolchain/LegacyJillToolchain.java b/jack-tests/src/com/android/jack/test/toolchain/LegacyJillToolchain.java
index ebf83f8f..7ebd63ae 100644
--- a/jack-tests/src/com/android/jack/test/toolchain/LegacyJillToolchain.java
+++ b/jack-tests/src/com/android/jack/test/toolchain/LegacyJillToolchain.java
@@ -116,6 +116,12 @@ public class LegacyJillToolchain extends JillBasedToolchain {
throw new AssertionError("Not Yet Implemented");
}
+ @Override
+ @Nonnull
+ public JackBasedToolchain addResource(@Nonnull File resource) {
+ throw new AssertionError("Not applicable");
+ }
+
private void compileWithExternalRefCompiler(@Nonnull File[] sources,
@Nonnull String classpath, @Nonnull File out) {