71 lines
1.4 KiB
Groovy
71 lines
1.4 KiB
Groovy
description = 'Kotlin Test for JS IR'
|
|
|
|
apply plugin: 'kotlin-platform-js'
|
|
|
|
|
|
dependencies {
|
|
expectedBy project(':kotlin-test:kotlin-test-common')
|
|
expectedBy project(':kotlin-test:kotlin-test-annotations-common')
|
|
compile project(':kotlin-stdlib-js-ir')
|
|
}
|
|
|
|
def jsCommonDir = "${buildDir}/common-js-sources"
|
|
|
|
task prepareCommonJsSources(type: Sync) {
|
|
from "${projectDir}/../js/src/"
|
|
into jsCommonDir
|
|
}
|
|
|
|
compileKotlin2Js {
|
|
dependsOn prepareCommonJsSources
|
|
|
|
kotlinOptions {
|
|
moduleKind = "umd"
|
|
freeCompilerArgs = [
|
|
"-Xir",
|
|
"-Xir-produce-only=klib",
|
|
"-Xallow-kotlin-package",
|
|
"-Xuse-experimental=kotlin.contracts.ExperimentalContracts",
|
|
]
|
|
}
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
kotlin {
|
|
srcDir jsCommonDir
|
|
}
|
|
}
|
|
}
|
|
|
|
compileTestKotlin2Js {
|
|
kotlinOptions.freeCompilerArgs = [
|
|
"-Xir",
|
|
"-Xir-produce-only=js",
|
|
"-Xallow-kotlin-package",
|
|
]
|
|
kotlinOptions {
|
|
metaInfo = false
|
|
moduleKind = "umd"
|
|
}
|
|
}
|
|
|
|
task sourcesJar(type: Jar, dependsOn: classes) {
|
|
classifier = 'sources'
|
|
from(sourceSets.main.allSource)
|
|
}
|
|
|
|
archivesBaseName = 'kotlin-test-js-ir'
|
|
|
|
jar {
|
|
manifestAttributes(manifest, project, 'Test')
|
|
}
|
|
|
|
artifacts {
|
|
archives sourcesJar
|
|
}
|
|
|
|
if (project.findProperty("kotlin.stdlib.js.ir.publish")?.toBoolean() == true) {
|
|
configurePublishing(project)
|
|
}
|