plugins { id "org.jetbrains.kotlin.multiplatform" id "org.jetbrains.kotlin.plugin.serialization" version "$kotlinVersion" id "maven-publish" } kotlin { // Enable the default target hierarchy: targetHierarchy.default() jvm { jvmToolchain(8) withJava() // not allowed if android { } is present testRuns["test"].executionTask.configure { useJUnitPlatform() testLogging { // This is for logging and can be removed. events("passed", "skipped", "failed") } } } js(IR) { binaries.executable() browser { testTask { useKarma { // useChromeHeadless() useFirefoxHeadless() } } } nodejs() } linuxX64() mingwX64() ios { binaries { framework { baseName = "fints4k" } } } iosSimulatorArm64() macosX64() macosArm64() watchos() watchosSimulatorArm64() tvos() tvosSimulatorArm64() sourceSets { commonMain { dependencies { api("org.jetbrains.kotlinx:kotlinx-datetime:$kotlinxDateTimeVersion") implementation("net.codinux.log:kmp-log:1.5.1") implementation("org.jetbrains.kotlinx:kotlinx-serialization-core:1.5.1") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion") implementation "co.touchlab:stately-concurrency:1.2.0" implementation("io.ktor:ktor-client-core:$ktorVersion") } } commonTest { dependencies { implementation kotlin("test") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutinesVersion") } } jvmMain { dependencies { // or use client-java or client-okhttp? implementation("io.ktor:ktor-client-cio:$ktorVersion") } } jvmTest { dependencies { implementation "org.assertj:assertj-core:$assertJVersion" implementation "org.mockito:mockito-core:$mockitoVersion" implementation "ch.qos.logback:logback-classic:$logbackVersion" } } jsMain { dependencies { implementation("io.ktor:ktor-client-js:$ktorVersion") api(npm("@js-joda/timezone", "2.3.0")) } } nativeMain { dependencies { } } linuxMain { dependencies { implementation("io.ktor:ktor-client-curl:$ktorVersion") } } mingwMain { dependencies { implementation("io.ktor:ktor-client-winhttp:$ktorVersion") } } appleMain { dependencies { implementation("io.ktor:ktor-client-darwin:$ktorVersion") } } } }