BankingClient/fints4k/build.gradle

123 lines
2.7 KiB
Groovy

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 project(":multiplatform-utils")
implementation("net.codinux.log:kmp-log:1.1.2")
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json: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" // only left here cause kmp-web-client doesn't expose ktor as api
implementation("net.dankito.web.client:kmp-web-client:1.0.0-SNAPSHOT")
}
}
commonTest {
dependencies {
implementation kotlin("test")
}
}
jvmMain {
dependencies {
implementation "org.slf4j:slf4j-api:$slf4jVersion"
}
}
jvmTest {
dependencies {
implementation "org.assertj:assertj-core:$assertJVersion"
implementation "org.mockito:mockito-core:$mockitoVersion"
implementation "org.apache.commons:commons-csv:1.8"
implementation "ch.qos.logback:logback-classic:$logbackVersion"
}
}
jsMain {
dependencies {
}
}
nativeMain {
dependencies {
implementation("com.github.ajalt.clikt:clikt:3.5.4")
// only needed for writing files to output
implementation "com.soywiz.korlibs.korio:korio:3.4.0"
}
}
}
}