Move 1.3-specific part of stdlib to another source set
This commit is contained in:
@@ -16,6 +16,7 @@ def builtinsSrcDir2 = "${buildDir}/builtin-sources-for-builtins"
|
||||
def commonSrcDir = "${buildDir}/common-sources"
|
||||
def commonTestSrcDir = "${buildDir}/common-test-sources"
|
||||
def builtinsDir = "${rootDir}/core/builtins"
|
||||
def experimentalSrcDir = "${rootDir}/libraries/stdlib/experimental"
|
||||
def jsLibrariesDir = "${rootDir}/js/js.libraries"
|
||||
def jsSrcDir = "${jsLibrariesDir}/src"
|
||||
def jsTestSrcDir = "${jsLibrariesDir}/test"
|
||||
@@ -46,6 +47,12 @@ sourceSets {
|
||||
}
|
||||
}
|
||||
|
||||
experimental {
|
||||
kotlin {
|
||||
srcDir experimentalSrcDir
|
||||
}
|
||||
}
|
||||
|
||||
test {
|
||||
kotlin {
|
||||
srcDir commonTestSrcDir
|
||||
@@ -140,6 +147,18 @@ compileKotlin2Js {
|
||||
}
|
||||
}
|
||||
|
||||
compileExperimentalKotlin2Js {
|
||||
dependsOn compileKotlin2Js
|
||||
kotlinOptions {
|
||||
languageVersion = "1.3"
|
||||
apiVersion = "1.3"
|
||||
outputFile = "${buildDir}/classes/main/kotlin-experimental.js"
|
||||
sourceMap = true
|
||||
sourceMapPrefix = "./"
|
||||
freeCompilerArgs += [ "-source-map-base-dirs", [experimentalSrcDir].join(File.pathSeparator) ]
|
||||
}
|
||||
}
|
||||
|
||||
compileTestKotlin2Js {
|
||||
dependsOn preprocessSourcesTest
|
||||
kotlinOptions {
|
||||
@@ -148,21 +167,26 @@ compileTestKotlin2Js {
|
||||
}
|
||||
|
||||
task compileJs(type: JavaExec) {
|
||||
dependsOn compileBuiltinsKotlin2Js, compileKotlin2Js
|
||||
dependsOn compileBuiltinsKotlin2Js, compileKotlin2Js, compileExperimentalKotlin2Js
|
||||
inputs.files(compileBuiltinsKotlin2Js.outputs.files)
|
||||
inputs.files(compileKotlin2Js.outputs.files)
|
||||
inputs.files(compileExperimentalKotlin2Js.outputs.files)
|
||||
inputs.dir(jsSrcDir)
|
||||
outputs.file(jsOutputFile)
|
||||
outputs.file("${jsOutputFile}.map")
|
||||
|
||||
def inputFiles = fileTree("${jsSrcJsDir}") {
|
||||
def inputFiles = fileTree(jsSrcJsDir) {
|
||||
include '**/*.js'
|
||||
}
|
||||
|
||||
main = "org.jetbrains.kotlin.js.FileMergerKt"
|
||||
doFirst {
|
||||
args = [jsOutputFile, rootDir, "$jsSrcDir/wrapper.js"] + inputFiles.collect { it.path } +
|
||||
["$buildDir/classes/builtins/kotlin.js", "$buildDir/classes/main/kotlin.js"]
|
||||
(compileBuiltinsKotlin2Js.outputs.files.collect { it.path } +
|
||||
compileKotlin2Js.outputs.files.collect { it.path } +
|
||||
compileExperimentalKotlin2Js.outputs.files.collect { it.path }).findAll {
|
||||
it.endsWith(".js") && !it.endsWith(".meta.js")
|
||||
}
|
||||
}
|
||||
classpath = configurations.merger
|
||||
|
||||
@@ -241,6 +265,9 @@ task sourcesJar(type: Jar, dependsOn: classes) {
|
||||
exclude '**/*.java'
|
||||
exclude 'js/**'
|
||||
}
|
||||
from (sourceSets.experimental.allSource) {
|
||||
into 'kotlin'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user