Cleanup and rework build logic (#3113)

# Conflicts:
#	app/build.gradle.kts
#	app/shortcuts.xml
#	app/src/main/res/xml/shortcuts.xml
#	app/src/main/shortcuts.xml
#	build.gradle.kts
#	buildSrc/src/main/kotlin/mihon/buildlogic/AndroidConfig.kt
#	core/archive/build.gradle.kts
#	core/common/build.gradle.kts
#	gradle/build-logic/src/main/kotlin/mihon/gradle/BuildConfig.kt
#	settings.gradle.kts
#	source-api/build.gradle.kts
#	source-local/build.gradle.kts
#	telemetry/build.gradle.kts
This commit is contained in:
AntsyLich
2026-03-22 01:34:45 +06:00
committed by Jobobby04
parent d225b7c586
commit a7d93ae751
63 changed files with 733 additions and 639 deletions
+17 -34
View File
@@ -1,25 +1,23 @@
import mihon.buildlogic.generatedBuildDir
import mihon.buildlogic.tasks.getLocalesConfigTask
import mihon.gradle.tasks.GenerateLocalesConfigTask
import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi
plugins {
id("mihon.library")
kotlin("multiplatform")
alias(mihonx.plugins.kotlin.multiplatform)
alias(mihonx.plugins.spotless)
alias(libs.plugins.moko.resources)
id("com.github.ben-manes.versions")
}
kotlin {
androidTarget()
android {
namespace = "tachiyomi.i18n"
}
applyDefaultHierarchyTemplate()
sourceSets {
commonMain {
dependencies {
api(libs.moko.resources)
}
}
@OptIn(ExperimentalKotlinGradlePluginApi::class)
@Suppress("UnstableApiUsage")
dependencies {
api(libs.moko.resources)
}
@OptIn(ExperimentalKotlinGradlePluginApi::class)
@@ -28,31 +26,16 @@ kotlin {
}
}
val generatedAndroidResourceDir = generatedBuildDir.resolve("android/res")
androidComponents {
onVariants { variant ->
val resSource = variant.sources.res ?: return@onVariants
android {
namespace = "tachiyomi.i18n"
sourceSets {
val main by getting
main.res.srcDirs(
"src/commonMain/resources",
generatedAndroidResourceDir,
)
}
lint {
disable.addAll(listOf("MissingTranslation", "ExtraTranslation"))
val variantName = variant.name.replaceFirstChar { it.uppercase() }
val task = tasks.register<GenerateLocalesConfigTask>("generate${variantName}LocalesConfig")
resSource.addGeneratedSourceDirectory(task) { it.outputDir }
}
}
multiplatformResources {
resourcesPackage.set("tachiyomi.i18n")
}
tasks {
val localesConfigTask = project.getLocalesConfigTask(generatedAndroidResourceDir)
preBuild {
dependsOn(localesConfigTask)
}
}