plugins { kotlin("multiplatform") id("com.android.library") kotlin("plugin.serialization") } kotlin { androidTarget() listOf(iosArm64(), iosSimulatorArm64()).forEach { it.binaries.framework { baseName = "Twigs" } } sourceSets { val commonMain by getting { dependencies { implementation(libs.ktor.client.core) implementation(libs.ktor.client.logging) implementation(libs.ktor.client.serialization) implementation(libs.ktor.client.content.negotiation) implementation(libs.kotlinx.coroutines.core) api(libs.kotlinx.datetime) implementation(libs.kotlinx.serialization.json) api(libs.multiplatform.settings) } } val commonTest by getting { dependencies { implementation(kotlin("test")) implementation(libs.kotlinx.coroutines.test) } } val androidMain by getting { dependencies { implementation(libs.ktor.client.android) } } val iosArm64Main by getting val iosSimulatorArm64Main by getting val iosMain by creating { dependsOn(commonMain) iosArm64Main.dependsOn(this) iosSimulatorArm64Main.dependsOn(this) dependencies { implementation(libs.ktor.client.ios) } } } } android { sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") compileSdk = libs.versions.maxSdk.get().toInt() defaultConfig { minSdk = libs.versions.minSdk.get().toInt() } compileOptions { sourceCompatibility = project.ext["jvm"] as JavaVersion targetCompatibility = project.ext["jvm"] as JavaVersion } buildTypes { release { consumerProguardFiles("proguard-rules.pro") } } namespace = "com.wbrawner.twigs.android" }