| import plugins.configureDefaultPublishing |
| |
| plugins { |
| `maven-publish` |
| kotlin("js") |
| } |
| |
| val jsStdlibSources = "${projectDir}/../stdlib/js/src" |
| |
| kotlin { |
| js(IR) { |
| sourceSets { |
| val main by getting { |
| kotlin.srcDir("$jsStdlibSources/org.w3c") |
| kotlin.srcDir("$jsStdlibSources/kotlinx") |
| kotlin.srcDir("$jsStdlibSources/kotlin/browser") |
| kotlin.srcDir("$jsStdlibSources/kotlin/dom") |
| |
| dependencies { |
| api(project(":kotlin-stdlib-js")) |
| } |
| } |
| } |
| } |
| } |
| |
| tasks.withType<org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile>().configureEach { |
| kotlinOptions.freeCompilerArgs += listOf( |
| "-Xallow-kotlin-package", |
| "-opt-in=kotlin.ExperimentalMultiplatform", |
| "-opt-in=kotlin.contracts.ExperimentalContracts", |
| "-Xfriend-modules=${libraries.joinToString(File.pathSeparator) { it.absolutePath }}" |
| ) |
| kotlinOptions.allWarningsAsErrors = true |
| } |
| |
| |
| |
| publishing { |
| publications { |
| create<MavenPublication>("maven") { |
| from(components["kotlin"]) |
| } |
| } |
| } |
| |
| configureDefaultPublishing() |