new: introduce build-logic module to centralize Gradle configuration

This commit is contained in:
2026-07-02 18:29:07 +02:00
parent 87ae329230
commit ddab9b642d
14 changed files with 104 additions and 273 deletions
+4 -33
View File
@@ -1,15 +1,12 @@
import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.androidMultiplatformLibrary)
alias(libs.plugins.composeMultiplatform)
alias(libs.plugins.composeCompiler)
id("gwenedeg.kmp.library")
id("gwenedeg.compose")
alias(libs.plugins.kotlinSerialization)
}
kotlin {
// Targets are declared by the convention plugin; these calls return the
// existing targets, so this only adds the iOS framework packaging.
listOf(
iosArm64(),
iosSimulatorArm64(),
@@ -20,31 +17,8 @@ kotlin {
}
}
jvm()
js {
browser()
}
@OptIn(ExperimentalWasmDsl::class)
wasmJs {
browser()
}
androidLibrary {
namespace = "fr.ajaury.gwenedeg.shared"
compileSdk =
libs.versions.androidCompileSdk
.get()
.toInt()
minSdk =
libs.versions.androidMinSdk
.get()
.toInt()
compilerOptions {
jvmTarget = JvmTarget.JVM_11
}
androidResources {
enable = true
}
@@ -91,9 +65,6 @@ kotlin {
implementation(libs.koin.compose)
implementation(libs.koin.compose.viewmodel)
}
commonTest.dependencies {
implementation(libs.kotlin.test)
}
jvmTest.dependencies {
// Koin configuration validation
implementation(project.dependencies.platform(libs.koin.bom))