apatch/build.gradle.kts

78 lines
2.2 KiB
Text
Raw Permalink Normal View History

2026-01-04 20:10:16 +01:00
import com.android.build.api.dsl.ApplicationDefaultConfig
import com.android.build.api.dsl.CommonExtension
import com.android.build.gradle.api.AndroidBasePlugin
plugins {
alias(libs.plugins.agp.app) apply false
alias(libs.plugins.agp.lib) apply false
alias(libs.plugins.kotlin) apply false
alias(libs.plugins.kotlin.compose.compiler) apply false
}
project.ext.set("kernelPatchVersion", "0.12.2")
val androidMinSdkVersion = 26
val androidTargetSdkVersion = 36
val androidCompileSdkVersion = 36
val androidBuildToolsVersion = "36.0.0"
val androidCompileNdkVersion = "29.0.14206865"
val managerVersionCode by extra(getVersionCode())
val managerVersionName by extra(getVersionName())
val branchname by extra(getbranch())
fun Project.exec(command: String) = providers.exec {
commandLine(command.split(" "))
}.standardOutput.asText.get().trim()
fun getGitCommitCount(): Int {
return exec("git rev-list --count HEAD").trim().toInt()
}
fun getGitDescribe(): String {
return exec("git rev-parse --verify --short HEAD").trim()
}
fun getVersionCode(): Int {
val commitCount = getGitCommitCount()
val major = 1
return major * 10000 + commitCount + 200
}
fun getbranch(): String {
return exec("git rev-parse --abbrev-ref HEAD").trim()
}
fun getVersionName(): String {
return getGitDescribe()
}
tasks.register("printVersion") {
doLast {
println("Version code: $managerVersionCode")
println("Version name: $managerVersionName")
}
}
subprojects {
plugins.withType(AndroidBasePlugin::class.java) {
extensions.configure(CommonExtension::class.java) {
compileSdk = androidCompileSdkVersion
buildToolsVersion = androidBuildToolsVersion
ndkVersion = androidCompileNdkVersion
defaultConfig {
minSdk = androidMinSdkVersion
if (this is ApplicationDefaultConfig) {
targetSdk = androidTargetSdkVersion
versionCode = managerVersionCode
versionName = managerVersionName
}
}
lint {
abortOnError = true
checkReleaseBuilds = false
}
}
}
}