Fix license file generation for swissarmyknife

Bug: 301573288
Change-Id: I561c8ea8c7982328b193f69bbf9fe32a437d011a
diff --git a/d8_r8/main/build.gradle.kts b/d8_r8/main/build.gradle.kts
index 84e22483..84edbbc 100644
--- a/d8_r8/main/build.gradle.kts
+++ b/d8_r8/main/build.gradle.kts
@@ -123,7 +123,7 @@
     from(sourceSets.main.get().output)
     from(keepAnnoJarTask.outputs.files.map(::zipTree))
     from(resourceShrinkerJarTask.outputs.files.map(::zipTree))
-    from(consolidatedLicense)
+    from(getRoot().resolve("LICENSE"))
     entryCompression = ZipEntryCompression.STORED
     manifest {
       attributes["Main-Class"] = "com.android.tools.r8.SwissArmyKnife"
@@ -134,11 +134,12 @@
     archiveFileName.set("r8-full-exclude-deps.jar")
   }
 
-  val depsJar by registering(Jar::class) {
+  val depsJar by registering(Zip::class) {
     dependsOn(gradle.includedBuild("shared").task(":downloadDeps"))
     dependsOn(resourceShrinkerDepsTask)
     from(mainJarDependencies().map(::zipTree))
     from(resourceShrinkerDepsTask.outputs.files.map(::zipTree))
+    from(consolidatedLicense)
     exclude("**/module-info.class")
     exclude("**/*.kotlin_metadata")
     exclude("META-INF/*.kotlin_module")
@@ -155,15 +156,22 @@
     exclude("README.md")
     exclude("javax/annotation/**")
     exclude("wireless/**")
-    manifest {}
     duplicatesStrategy = DuplicatesStrategy.EXCLUDE
     archiveFileName.set("deps.jar")
   }
 
-  val r8WithRelocatedDeps by registering(Exec::class) {
+
+val swissArmyKnifeWithoutLicense by registering(Zip::class) {
     dependsOn(swissArmyKnife)
+    from(swissArmyKnife.get().outputs.files.map(::zipTree))
+    exclude("LICENSE")
+    archiveFileName.set("swiss-army-no-license.jar")
+}
+
+val r8WithRelocatedDeps by registering(Exec::class) {
     dependsOn(depsJar)
-    val swissArmy = swissArmyKnife.get().outputs.getFiles().getSingleFile()
+    dependsOn(swissArmyKnifeWithoutLicense)
+    val swissArmy = swissArmyKnifeWithoutLicense.get().outputs.getFiles().getSingleFile()
     val deps = depsJar.get().outputs.files.getSingleFile()
     inputs.files(listOf(swissArmy, deps))
     val output = getRoot().resolveAll("build", "libs", "r8.jar")