committed by
Space Team
parent
492a161d2c
commit
9b4821be28
@@ -56,6 +56,7 @@ build/
|
||||
.idea/artifacts/kotlin_reflect_jar.xml
|
||||
.idea/artifacts/kotlin_stdlib_js_ir_*
|
||||
.idea/artifacts/kotlin_test_js_ir_*
|
||||
.idea/artifacts/kotlin_dom_api_compat_*
|
||||
.idea/artifacts/kotlin_stdlib_wasm_*
|
||||
.idea/artifacts/kotlin_test_wasm_*
|
||||
.idea/artifacts/kotlinx_atomicfu_runtime_*
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
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 {
|
||||
compilerOptions.freeCompilerArgs
|
||||
.addAll(
|
||||
"-Xallow-kotlin-package",
|
||||
"-opt-in=kotlin.ExperimentalMultiplatform",
|
||||
"-opt-in=kotlin.contracts.ExperimentalContracts",
|
||||
// TODO: Better to use friendPaths property, but it does not work
|
||||
// KT-56690
|
||||
"-Xfriend-modules=${libraries.joinToString(File.pathSeparator) { it.absolutePath }}"
|
||||
)
|
||||
compilerOptions.allWarningsAsErrors.set(true)
|
||||
}
|
||||
|
||||
val emptyJavadocJar by tasks.creating(Jar::class) {
|
||||
archiveClassifier.set("javadoc")
|
||||
}
|
||||
|
||||
publishing {
|
||||
publications {
|
||||
create<MavenPublication>("maven") {
|
||||
from(components["kotlin"])
|
||||
}
|
||||
withType<MavenPublication> {
|
||||
artifact(emptyJavadocJar)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
configureDefaultPublishing()
|
||||
@@ -0,0 +1 @@
|
||||
kotlin.js.compiler.publish.attribute=false
|
||||
@@ -59,6 +59,10 @@ val jsMainSources by task<Sync> {
|
||||
val excluded = listOf(
|
||||
// stdlib/js/src/generated is used exclusively for current `js-v1` backend.
|
||||
"libraries/stdlib/js/src/generated/**",
|
||||
"libraries/stdlib/js/src/kotlin/browser",
|
||||
"libraries/stdlib/js/src/kotlin/dom",
|
||||
"libraries/stdlib/js/src/org.w3c",
|
||||
"libraries/stdlib/js/src/kotlinx",
|
||||
|
||||
// JS-specific optimized version of emptyArray() already defined
|
||||
"core/builtins/src/kotlin/ArrayIntrinsics.kt"
|
||||
|
||||
@@ -334,6 +334,7 @@ tasks.withType<Test> {
|
||||
dependsOn(":gradle:android-test-fixes:install")
|
||||
dependsOn(":gradle:gradle-warnings-detector:install")
|
||||
dependsOn(":examples:annotation-processor-example:install")
|
||||
dependsOn(":kotlin-dom-api-compat:install")
|
||||
|
||||
systemProperty("kotlinVersion", rootProject.extra["kotlinVersion"] as String)
|
||||
systemProperty("runnerGradleVersion", gradle.gradleVersion)
|
||||
|
||||
@@ -555,6 +555,7 @@ if (buildProperties.inJpsBuildIdeaSync) {
|
||||
":kotlin-stdlib",
|
||||
":kotlin-stdlib-js",
|
||||
":kotlin-stdlib-js-ir",
|
||||
":kotlin-dom-api-compat",
|
||||
":kotlin-stdlib-js-ir-minimal-for-test",
|
||||
":kotlin-stdlib-wasm",
|
||||
":kotlin-stdlib-jdk7",
|
||||
@@ -576,6 +577,7 @@ if (buildProperties.inJpsBuildIdeaSync) {
|
||||
project(':kotlin-stdlib').projectDir = "$rootDir/libraries/stdlib/jvm" as File
|
||||
project(':kotlin-stdlib-js').projectDir = "$rootDir/libraries/stdlib/js-v1" as File
|
||||
project(':kotlin-stdlib-js-ir').projectDir = "$rootDir/libraries/stdlib/js-ir" as File
|
||||
project(':kotlin-dom-api-compat').projectDir = "$rootDir/libraries/kotlin-dom-api-compat" as File
|
||||
project(':kotlin-stdlib-wasm').projectDir = "$rootDir/libraries/stdlib/wasm" as File
|
||||
project(':kotlin-stdlib-js-ir-minimal-for-test').projectDir = "$rootDir/libraries/stdlib/js-ir-minimal-for-test" as File
|
||||
project(':kotlin-stdlib-jdk7').projectDir = "$rootDir/libraries/stdlib/jdk7" as File
|
||||
|
||||
Reference in New Issue
Block a user