import org.jetbrains.kotlin.gradle.plugin.mpp.apple.XCFramework plugins { alias(libs.plugins.kotlin.multiplatform) alias(libs.plugins.android.library) alias(libs.plugins.compose.multiplatform) alias(libs.plugins.compose.compiler) `maven-publish` } group = "dev.dtrentin" version = "0.5.0-SNAPSHOT" kotlin { applyDefaultHierarchyTemplate() androidTarget { compilations.all { compileTaskProvider.configure { compilerOptions { jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } } } publishLibraryVariants("release") } val xcf = XCFramework("ChartRealtime") listOf( iosX64(), iosArm64(), iosSimulatorArm64() ).forEach { target -> target.binaries.framework { baseName = "ChartRealtime" xcf.add(this) } } sourceSets { commonMain.dependencies { implementation(compose.runtime) implementation(compose.ui) implementation(compose.foundation) implementation(compose.material3) implementation(libs.coroutines.core) } androidMain.dependencies { implementation(libs.androidx.core) } commonTest.dependencies { implementation(libs.kotlin.test) } } } android { namespace = "dev.dtrentin.chart" compileSdk = 35 defaultConfig { minSdk = 26 } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } } publishing { // KMP plugin auto-creates per-target publications. // Run: ./gradlew publishToMavenLocal }