Add missing clean tasks

Bug: b/326837090
Bug: b/327315907
Change-Id: Ib47f71c50a4dd6a7d2900acb32c55bff82cba31a
diff --git a/d8_r8/build.gradle.kts b/d8_r8/build.gradle.kts
index 187f708..b7eeeb82 100644
--- a/d8_r8/build.gradle.kts
+++ b/d8_r8/build.gradle.kts
@@ -9,6 +9,7 @@
 
 tasks {
   "clean" {
+    dependsOn(gradle.includedBuild("commonBuildSrc").task(":clean"))
     dependsOn(gradle.includedBuild("keepanno").task(":clean"))
     dependsOn(gradle.includedBuild("resourceshrinker").task(":clean"))
     dependsOn(gradle.includedBuild("main").task(":clean"))
diff --git a/d8_r8/test/build.gradle.kts b/d8_r8/test/build.gradle.kts
index 0535eec..2f81edc 100644
--- a/d8_r8/test/build.gradle.kts
+++ b/d8_r8/test/build.gradle.kts
@@ -43,6 +43,16 @@
     }
   }
 
+  "clean" {
+    dependsOn(gradle.includedBuild("tests_bootstrap").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_8").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_9").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_10").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_11").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_17").task(":clean"))
+    dependsOn(gradle.includedBuild("tests_java_21").task(":clean"))
+  }
+
   val packageTests by registering(Jar::class) {
     dependsOn(java8TestJarTask)
     from(java8TestJarTask.outputs.files.map(::zipTree))
diff --git a/d8_r8/test/settings.gradle.kts b/d8_r8/test/settings.gradle.kts
index 38ba359..5c2726d 100644
--- a/d8_r8/test/settings.gradle.kts
+++ b/d8_r8/test/settings.gradle.kts
@@ -28,5 +28,11 @@
 includeBuild(root.resolve("keepanno"))
 includeBuild(root.resolve("main"))
 includeBuild(root.resolve("resourceshrinker"))
-includeBuild(root.resolve("test_modules").resolve("tests_java_8"))
 includeBuild(root.resolve("test_modules").resolve("tests_bootstrap"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_8"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_9"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_10"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_11"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_17"))
+includeBuild(root.resolve("test_modules").resolve("tests_java_21"))
+
diff --git a/d8_r8/test_modules/tests_java_8/build.gradle.kts b/d8_r8/test_modules/tests_java_8/build.gradle.kts
index d29c709..98ab1c9 100644
--- a/d8_r8/test_modules/tests_java_8/build.gradle.kts
+++ b/d8_r8/test_modules/tests_java_8/build.gradle.kts
@@ -84,8 +84,15 @@
 }
 
 tasks {
+
+  getByName<Delete>("clean") {
+    // TODO(b/327315907): Don't generating into the root build dir.
+    delete.add(getRoot().resolveAll("build", "generated", "test", "java", "com", "android", "tools", "r8", "art"))
+  }
+
   val createArtTests by registering(Exec::class) {
     dependsOn(gradle.includedBuild("shared").task(":downloadDeps"))
+    // TODO(b/327315907): Don't generating into the root build dir.
     val outputDir = getRoot().resolveAll("build", "generated", "test", "java", "com", "android", "tools", "r8", "art")
     val createArtTestsScript = getRoot().resolveAll("tools", "create_art_tests.py")
     inputs.file(createArtTestsScript)