69 lines
2.1 KiB
Kotlin
69 lines
2.1 KiB
Kotlin
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
|
|
|
plugins {
|
|
alias(libs.plugins.kotlinMultiplatform)
|
|
alias(libs.plugins.androidKotlinMultiplatformLibrary)
|
|
alias(libs.plugins.kotlinSerialization)
|
|
alias(libs.plugins.sqldelight)
|
|
}
|
|
|
|
kotlin {
|
|
android {
|
|
namespace = "top.zhushenwudi.llmp.shared"
|
|
compileSdk = libs.versions.android.compileSdk.get().toInt()
|
|
minSdk = libs.versions.android.minSdk.get().toInt()
|
|
compilerOptions {
|
|
jvmTarget.set(JvmTarget.JVM_11)
|
|
}
|
|
}
|
|
|
|
listOf(
|
|
iosArm64(),
|
|
iosSimulatorArm64(),
|
|
).forEach { iosTarget ->
|
|
iosTarget.binaries.framework {
|
|
baseName = "Shared"
|
|
isStatic = true
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
commonMain.dependencies {
|
|
implementation(libs.kotlinx.coroutines.core)
|
|
implementation(libs.kotlinx.serialization.json)
|
|
implementation(libs.ktor.client.core)
|
|
implementation(libs.ktor.client.content.negotiation)
|
|
implementation(libs.ktor.client.logging)
|
|
implementation(libs.ktor.client.websockets)
|
|
implementation(libs.ktor.serialization.kotlinx.json)
|
|
implementation(libs.sqldelight.runtime)
|
|
implementation(libs.sqldelight.coroutines)
|
|
api(libs.multiplatform.settings)
|
|
implementation(libs.multiplatform.settings.coroutines)
|
|
}
|
|
commonTest.dependencies {
|
|
implementation(libs.kotlin.test)
|
|
}
|
|
androidMain.dependencies {
|
|
implementation(libs.ktor.client.okhttp)
|
|
implementation(libs.sqldelight.android)
|
|
implementation(libs.kotlinx.coroutines.android)
|
|
implementation(libs.media3.exoplayer)
|
|
implementation(libs.media3.session)
|
|
}
|
|
iosMain.dependencies {
|
|
implementation(libs.ktor.client.darwin)
|
|
implementation(libs.sqldelight.native)
|
|
}
|
|
}
|
|
}
|
|
|
|
sqldelight {
|
|
databases {
|
|
create("LlmpDatabase") {
|
|
packageName.set("top.zhushenwudi.llmp.db")
|
|
verifyMigrations.set(false)
|
|
}
|
|
}
|
|
}
|