yokai/build.gradle.kts
Ahmad Ansori Palembani 6c93deacca
refactor: Use AboutLibraries
Should unblock GH-124 from being merged, no thanks to Google.
2024-07-31 10:01:38 +07:00

81 lines
2.6 KiB
Kotlin

import com.android.build.gradle.BaseExtension
import com.android.build.gradle.BasePlugin
import org.gradle.api.tasks.testing.logging.TestLogEvent
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import java.util.*
plugins {
alias(libs.plugins.kotlinter)
alias(libs.plugins.gradle.versions)
alias(androidx.plugins.application) apply false
alias(androidx.plugins.library) apply false
alias(kotlinx.plugins.android) apply false
alias(kotlinx.plugins.compose.compiler) apply false
alias(kotlinx.plugins.multiplatform) apply false
alias(kotlinx.plugins.parcelize) apply false
alias(kotlinx.plugins.serialization) apply false
alias(libs.plugins.aboutlibraries) apply false
alias(libs.plugins.firebase.crashlytics) apply false
alias(libs.plugins.google.services) apply false
alias(libs.plugins.moko) apply false
alias(libs.plugins.sqldelight) apply false
}
subprojects {
tasks.withType<KotlinCompile> {
compilerOptions {
jvmTarget = JvmTarget.JVM_17
}
}
tasks.withType<Test> {
useJUnitPlatform()
testLogging {
events(TestLogEvent.PASSED, TestLogEvent.SKIPPED, TestLogEvent.FAILED)
}
}
plugins.withType<BasePlugin> {
configure<BaseExtension> {
compileSdkVersion(AndroidConfig.compileSdk)
ndkVersion = AndroidConfig.ndk
defaultConfig {
minSdk = AndroidConfig.minSdk
targetSdk = AndroidConfig.targetSdk
ndk {
version = AndroidConfig.ndk
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
isCoreLibraryDesugaringEnabled = true
}
dependencies {
add("coreLibraryDesugaring", libs.desugar)
}
}
}
}
tasks.named("dependencyUpdates", com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask::class.java).configure {
rejectVersionIf {
val stableKeyword = listOf("RELEASE", "FINAL", "GA").any { candidate.version.uppercase(Locale.ROOT).contains(it) }
val regex = "^[0-9,.v-]+(-r)?$".toRegex()
val isStable = stableKeyword || regex.matches(candidate.version)
isStable.not()
}
// optional parameters
checkForGradleUpdate = true
outputFormatter = "json"
outputDir = "build/dependencyUpdates"
reportfileName = "report"
}
tasks.register("clean", Delete::class) {
delete(rootProject.layout.buildDirectory)
}