build.gradle.kts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import org.gradle.internal.os.OperatingSystem
  2. plugins {
  3. val kotlinVersion = "2.2.0"
  4. kotlin("multiplatform") version kotlinVersion
  5. kotlin("plugin.serialization") version kotlinVersion
  6. id("org.sirekanyan.version-checker") version "1.0.14"
  7. distribution
  8. }
  9. group = "org.sirekanyan"
  10. version = "1.0"
  11. repositories {
  12. mavenCentral()
  13. }
  14. dependencies {
  15. commonMainImplementation("com.github.ajalt.clikt:clikt-core:5.0.3")
  16. commonMainImplementation("org.jetbrains.kotlinx:kotlinx-datetime:0.7.1")
  17. commonMainImplementation("org.jetbrains.kotlinx:kotlinx-io-core:0.8.0")
  18. }
  19. kotlin {
  20. val os = OperatingSystem.current()
  21. when {
  22. os.isLinux -> linuxX64("linux")
  23. os.isMacOsX -> macosX64("macos")
  24. else -> error("Unsupported operating system: $os")
  25. }.binaries {
  26. executable(listOf(if (hasProperty("release")) RELEASE else DEBUG))
  27. }
  28. }
  29. distributions {
  30. main {
  31. contents {
  32. from("build/bin/linux/releaseExecutable/todo.kexe") {
  33. rename { it.removeSuffix(".kexe") }
  34. }
  35. }
  36. }
  37. }
  38. tasks {
  39. getByName<Tar>("distTar") {
  40. compression = Compression.GZIP
  41. archiveExtension = ".tar.gz"
  42. }
  43. }