import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { alias(libs.plugins.kotlin.multiplatform) alias(libs.plugins.android.library) alias(libs.plugins.ktorfit) alias(libs.plugins.ksp) alias(libs.plugins.kotlinx.serialization) alias(libs.plugins.detekt) } @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 = "core.api" isStatic = true } } sourceSets { val commonMain by getting { dependencies { implementation(libs.koin.core) implementation(libs.kotlinx.serialization.json) implementation(libs.ktorfit.lib) implementation(libs.ktor.serialization) implementation(libs.ktor.contentnegotiation) implementation(libs.ktor.json) implementation(libs.ktor.logging) implementation(projects.core.utils) } } val commonTest by getting { dependencies { implementation(kotlin("test")) } } } } android { namespace = "com.github.diegoberaldin.raccoonforlemmy.core.api" compileSdk = libs.versions.android.targetSdk.get().toInt() defaultConfig { minSdk = libs.versions.android.minSdk.get().toInt() } } dependencies { add("kspCommonMainMetadata", libs.ktorfit.ksp) add("kspAndroid", libs.ktorfit.ksp) add("kspIosX64", libs.ktorfit.ksp) add("kspIosArm64", libs.ktorfit.ksp) add("kspIosSimulatorArm64", libs.ktorfit.ksp) }