bitchat-android/build.gradle.kts

54 lines
1.9 KiB
Plaintext

import org.gradle.api.artifacts.dsl.LockMode
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.kotlin.compose) apply false
}
val resolveIdeRuntimeClasspathCopyLocks = tasks.register("resolveIdeRuntimeClasspathCopyLocks") {
group = "build setup"
description = "Resolves Android Studio runtime classpath copies when refreshing lock state."
}
subprojects {
dependencyLocking {
lockAllConfigurations()
lockMode.set(LockMode.STRICT)
}
pluginManager.withPlugin("com.android.application") {
val resolveIdeRuntimeClasspathCopyLock = tasks.register("resolveIdeRuntimeClasspathCopyLock") {
group = "build setup"
description = "Resolves this module's Android Studio runtime classpath copies."
notCompatibleWithConfigurationCache("Resolves copied configurations at execution time")
doFirst {
check(gradle.startParameter.isWriteDependencyLocks) {
"$path must be run with --write-locks"
}
}
doLast {
listOf("debugRuntimeClasspath", "releaseRuntimeClasspath").forEach { configurationName ->
configurations.getByName(configurationName).copy().resolve()
}
}
}
resolveIdeRuntimeClasspathCopyLocks.configure {
dependsOn(resolveIdeRuntimeClasspathCopyLock)
}
}
}
tasks.whenTaskAdded {
if (name.contains("ArtProfile")) {
enabled = false
}
}
tasks.register("clientRewriteContractTest") {
group = "verification"
description = "Runs the complete compatibility gate for a from-scratch client rewrite."
dependsOn(":app:testDebugUnitTest")
}