diff --git a/libraries/stdlib/jvm/build.gradle b/libraries/stdlib/jvm/build.gradle index e0249a98123..32109410cec 100644 --- a/libraries/stdlib/jvm/build.gradle +++ b/libraries/stdlib/jvm/build.gradle @@ -11,6 +11,7 @@ configureSourcesJar() configurations { distSources + withJvmBuiltins.extendsFrom(configurations.compile) } sourceSets { @@ -46,6 +47,7 @@ configurations { attribute(LibraryElements.LIBRARY_ELEMENTS_ATTRIBUTE, objects.named(LibraryElements, LibraryElements.JAR)) } } + builtinsJvm compileOnly.extendsFrom(builtins) } @@ -60,6 +62,7 @@ dependencies { testCompile project(':kotlin-coroutines-experimental-compat') builtins project(':core:builtins') + builtinsJvm project(path: ':core:builtins', configuration: "runtimeElementsJvm") } jar { @@ -97,11 +100,26 @@ configureModularJar { from zipTree(jar.outputs.files.singleFile) } +task withJvmBuiltinsJar(type: Jar) { + dependsOn(jar) + dependsOn(configurations.builtinsJvm) + manifestAttributes(manifest, project, 'Main', true) + destinationDirectory = file("$buildDir/lib/with-jvm-builtins") + + from(zipTree(jar.outputs.files.singleFile)) { + exclude("**/*.kotlin_builtins") + } + from { + zipTree(configurations.builtinsJvm.singleFile) + } +} + artifacts { archives sourcesJar sources sourcesJar distSources distSourcesJar archives modularJar + withJvmBuiltins withJvmBuiltinsJar } DexMethodCountKt.dexMethodCount(project) { task -> diff --git a/prepare/idea-plugin/build.gradle.kts b/prepare/idea-plugin/build.gradle.kts index 1c1cc5a6265..a470cddbdfc 100644 --- a/prepare/idea-plugin/build.gradle.kts +++ b/prepare/idea-plugin/build.gradle.kts @@ -172,13 +172,22 @@ dependencies { embedded(protobufFull()) embedded(kotlinBuiltins(forJvm = true)) - libraries(commonDep(kotlinxCollectionsImmutable())) + libraries(project(":kotlin-stdlib", "withJvmBuiltins")) + libraries(commonDep(kotlinxCollectionsImmutable())) { + exclude("org.jetbrains.kotlin", "kotlin-stdlib") + } libraries(commonDep("javax.inject")) - libraries(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-jdk8")) - libraries(commonDep("org.jetbrains", "markdown")) + libraries(commonDep("org.jetbrains.kotlinx", "kotlinx-coroutines-jdk8")) { + exclude("org.jetbrains.kotlin", "kotlin-stdlib") + } + libraries(commonDep("org.jetbrains", "markdown")) { + exclude("org.jetbrains.kotlin", "kotlin-stdlib") + } libraries(commonDep("io.javaslang", "javaslang")) - libraries(kotlinStdlib("jdk8")) + libraries(project(":kotlin-stdlib-jdk8")) { + exclude("org.jetbrains.kotlin", "kotlin-stdlib") + } Platform[193].orHigher { libraries(commonDep("org.jetbrains.intellij.deps.completion", "completion-ranking-kotlin"))