Raccoon/unit/drafts/build.gradle.kts

104 lines
3.0 KiB
Plaintext

import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
plugins {
alias(libs.plugins.kotlin.multiplatform)
alias(libs.plugins.android.library)
alias(libs.plugins.jetbrains.compose)
alias(libs.plugins.compose.compiler)
alias(libs.plugins.ksp)
}
@OptIn(org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi::class)
kotlin {
applyDefaultHierarchyTemplate()
androidTarget {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_1_8)
}
}
listOf(
iosX64(),
iosArm64(),
iosSimulatorArm64(),
).forEach {
it.binaries.framework {
baseName = "unit.drafts"
isStatic = true
}
}
sourceSets {
val commonMain by getting {
dependencies {
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material)
implementation(compose.material3)
implementation(compose.materialIconsExtended)
implementation(libs.koin.core)
api(libs.koin.annotations)
implementation(libs.voyager.navigator)
implementation(libs.voyager.screenmodel)
implementation(libs.voyager.koin)
implementation(projects.core.appearance)
implementation(projects.core.architecture)
implementation(projects.core.commonui.components)
implementation(projects.core.commonui.detailopenerApi)
implementation(projects.core.commonui.lemmyui)
implementation(projects.core.l10n)
implementation(projects.core.navigation)
implementation(projects.core.notifications)
implementation(projects.core.persistence)
implementation(projects.core.utils)
implementation(projects.domain.lemmy.data)
implementation(projects.domain.lemmy.repository)
}
}
val commonTest by getting {
dependencies {
implementation(kotlin("test"))
}
}
}
}
dependencies {
add("kspCommonMainMetadata", libs.koin.ksp)
add("kspAndroid", libs.koin.ksp)
add("kspIosX64", libs.koin.ksp)
add("kspIosArm64", libs.koin.ksp)
add("kspIosSimulatorArm64", libs.koin.ksp)
}
android {
namespace = "com.livefast.eattrash.raccoonforlemmy.unit.drafts"
compileSdk =
libs.versions.android.compileSdk
.get()
.toInt()
defaultConfig {
minSdk =
libs.versions.android.minSdk
.get()
.toInt()
}
}
ksp {
arg("KOIN_DEFAULT_MODULE", "false")
}
kotlin.sourceSets.commonMain {
kotlin.srcDir("build/generated/ksp/metadata/commonMain/kotlin")
}
tasks.withType(KotlinCompilationTask::class.java).configureEach {
if (name != "kspCommonMainKotlinMetadata") {
dependsOn("kspCommonMainKotlinMetadata")
}
}