Hamazing/tools/platostools/build.gradle.kts
2023-05-22 18:29:18 +02:00

58 lines
1.6 KiB
Plaintext

plugins {
application
kotlin("multiplatform") version "1.8.21"
}
repositories {
mavenCentral()
}
kotlin {
sourceSets {
commonMain {
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-cli:0.3.5")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.0")
}
}
}
val hostOs = System.getProperty("os.name")
val isMingwX64 = hostOs.startsWith("Windows")
val nativeTarget = when {
hostOs == "Mac OS X" -> macosX64("native")
hostOs == "Linux" -> linuxX64("native")
isMingwX64 -> mingwX64("native")
else -> throw GradleException("Host OS is not supported in Kotlin/Native.")
}
val crossTarget = mingwX64("wingw64")
nativeTarget.apply {
compilations["main"].enableEndorsedLibs = true
binaries {
executable("platosadf") {
entryPoint = "de.platon42.demoscene.tools.platosadf.main"
}
executable("juggler") {
entryPoint = "de.platon42.demoscene.tools.juggler.main"
}
}
}
crossTarget.apply {
compilations["main"].enableEndorsedLibs = true
binaries {
executable("platosadf") {
entryPoint = "de.platon42.demoscene.tools.platosadf.main"
}
executable("juggler") {
entryPoint = "de.platon42.demoscene.tools.juggler.main"
}
}
}
sourceSets {
val nativeMain by getting
val nativeTest by getting
}
}