// Copyright (c) 2023, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

plugins { id("dependencies-plugin") }

tasks {
  register<Delete>("clean") {
    delete(rootProject.layout.buildDirectory)
    gradle.includedBuilds.forEach { dependsOn(it.task(":clean")) }
    subprojects.forEach { dependsOn(it.tasks.named("clean")) }
  }
  register("r8") { dependsOn(":dist:r8WithRelocatedDeps") }
  register("swissArmyKnife") { dependsOn(":swissarmyknife:jar") }
  register("r8lib") { dependsOn(":test:assembleR8LibWithRelocatedDeps") }
}
