build.gradle.kts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import org.jetbrains.kotlin.gradle.ExperimentalWasmDsl
  2. import org.jetbrains.kotlin.gradle.dsl.JvmTarget
  3. import org.jetbrains.kotlin.gradle.targets.js.webpack.KotlinWebpackConfig
  4. plugins {
  5. alias(libs.plugins.kotlin.multiplatform)
  6. alias(libs.plugins.android.library)
  7. }
  8. kotlin {
  9. @OptIn(ExperimentalWasmDsl::class)
  10. wasmJs {
  11. browser {
  12. commonWebpackConfig {
  13. devServer = (devServer ?: KotlinWebpackConfig.DevServer()).apply {
  14. static = (static ?: mutableListOf()).apply {
  15. // Serve sources to debug inside browser
  16. add(project.projectDir.path)
  17. }
  18. }
  19. }
  20. }
  21. }
  22. androidTarget {
  23. compilerOptions {
  24. jvmTarget.set(JvmTarget.JVM_17)
  25. }
  26. }
  27. jvm()
  28. sourceSets {
  29. commonMain.dependencies {
  30. // date & time
  31. implementation(libs.kotlinx.datetime)
  32. // desktop files
  33. implementation(libs.ini4j)
  34. // files
  35. // implementation(libs.kotlinx.io)
  36. implementation(libs.okio)
  37. }
  38. }
  39. }
  40. android {
  41. namespace = "org.mjdev.desktop.shared"
  42. compileSdk = libs.versions.android.compile.sdk.get().toInt()
  43. compileOptions {
  44. sourceCompatibility = JavaVersion.VERSION_17
  45. targetCompatibility = JavaVersion.VERSION_17
  46. }
  47. defaultConfig {
  48. minSdk = libs.versions.android.min.sdk.get().toInt()
  49. }
  50. }