Enable adding deps to classpath when running externally provided R8

Change-Id: Ifb1573726b25b77964673a689f3753cee2af8b4b
diff --git a/build.gradle b/build.gradle
index 272fcdd..496dc65 100644
--- a/build.gradle
+++ b/build.gradle
@@ -533,7 +533,7 @@
     mergeServiceFiles(it)
     exclude { it.getRelativePath().getPathString() == "module-info.class" }
     exclude { it.getRelativePath().getPathString().startsWith("META-INF/maven/") }
-    baseName 'deps'
+    baseName 'deps_not_relocated'
 }
 
 task repackageDeps(type: ShadowJar) {
diff --git a/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java b/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
index e9d85be..1daaad3 100644
--- a/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
+++ b/src/test/java/com/android/tools/r8/ExternalR8TestBuilder.java
@@ -50,6 +50,8 @@
   // Additional Proguard configuration files.
   private List<Path> proguardConfigFiles = new ArrayList<>();
 
+  private boolean addR8ExternalDeps = false;
+
   private ExternalR8TestBuilder(TestState state, Builder builder, Backend backend) {
     super(state, builder, backend);
   }
@@ -72,13 +74,18 @@
       Path outputJar = outputFolder.resolve("output.jar");
       Path proguardMapFile = outputFolder.resolve("output.jar.map");
 
+      String classPath =
+          addR8ExternalDeps
+              ? r8jar.toAbsolutePath().toString() + ":" + ToolHelper.DEPS_NOT_RELOCATED
+              : r8jar.toAbsolutePath().toString();
+
       List<String> command = new ArrayList<>();
       Collections.addAll(
           command,
           getJavaExecutable(),
           "-ea",
           "-cp",
-          r8jar.toAbsolutePath().toString(),
+          classPath,
           R8.class.getTypeName(),
           "--output",
           outputJar.toAbsolutePath().toString(),
@@ -182,4 +189,9 @@
     this.r8jar = r8jar;
     return self();
   }
+
+  public ExternalR8TestBuilder addR8ExternalDepsToClasspath() {
+    this.addR8ExternalDeps = true;
+    return self();
+  }
 }
diff --git a/src/test/java/com/android/tools/r8/ToolHelper.java b/src/test/java/com/android/tools/r8/ToolHelper.java
index 64c735d..1a17a62 100644
--- a/src/test/java/com/android/tools/r8/ToolHelper.java
+++ b/src/test/java/com/android/tools/r8/ToolHelper.java
@@ -118,6 +118,8 @@
   public static final Path R8_JAR = Paths.get(LIBS_DIR, "r8.jar");
   public static final Path R8_WITH_RELOCATED_DEPS_JAR =
       Paths.get(LIBS_DIR, "r8_with_relocated_deps.jar");
+  public static final Path DEPS_NOT_RELOCATED =
+      Paths.get(LIBS_DIR, "deps_not_relocated.jar");
 
   public enum DexVm {
     ART_4_0_4_TARGET(Version.V4_0_4, Kind.TARGET),