From 8b641bf6135e0a3bda24b1afa4fe7d2acfcfacd2 Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Wed, 25 Dec 2019 18:09:37 +0300 Subject: [PATCH] [Gradle, JS] Add mpp presets for jsIr --- ...otlinTargetContainerWithPresetFunctions.kt | 27 ++++++++++++------- .../plugin/mpp/KotlinMultiplatformPlugin.kt | 3 ++- .../targets/js/ir/KotlinJsIrTargetPreset.kt | 2 +- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinTargetContainerWithPresetFunctions.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinTargetContainerWithPresetFunctions.kt index cefc0f2082b..f10d47f89a0 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinTargetContainerWithPresetFunctions.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/dsl/KotlinTargetContainerWithPresetFunctions.kt @@ -3,17 +3,9 @@ package org.jetbrains.kotlin.gradle.dsl import groovy.lang.Closure import org.gradle.util.ConfigureUtil import org.jetbrains.kotlin.gradle.plugin.KotlinTargetsContainerWithPresets -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTarget -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTargetPreset -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsTargetPreset -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJvmTargetPreset -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetPreset -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetWithHostTests -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetWithHostTestsPreset -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetWithSimulatorTests -import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTargetWithSimulatorTestsPreset +import org.jetbrains.kotlin.gradle.plugin.mpp.* import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget +import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget // DO NOT EDIT MANUALLY! Generated by org.jetbrains.kotlin.generators.gradle.dsl.MppPresetFunctionsCodegenKt @@ -50,6 +42,21 @@ interface KotlinTargetContainerWithPresetFunctions : KotlinTargetsContainerWithP fun js(name: String, configure: Closure<*>) = js(name) { ConfigureUtil.configure(configure, this) } fun js(configure: Closure<*>) = js { ConfigureUtil.configure(configure, this) } + fun jsIr( + name: String = "jsIr", + configure: KotlinJsIrTarget.() -> Unit = { } + ): KotlinJsIrTarget = + configureOrCreate( + name, + presets.getByName("jsIr") as KotlinJsIrTargetPreset, + configure + ) + + fun jsIr() = jsIr("jsIr") { } + fun jsIr(name: String) = jsIr(name) { } + fun jsIr(name: String, configure: Closure<*>) = jsIr(name) { ConfigureUtil.configure(configure, this) } + fun jsIr(configure: Closure<*>) = jsIr { ConfigureUtil.configure(configure, this) } + fun android( name: String = "android", configure: KotlinAndroidTarget.() -> Unit = { } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt index 19a98635fbe..ec09fee3b93 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt @@ -21,7 +21,7 @@ import org.gradle.api.publish.maven.tasks.AbstractPublishToMaven import org.gradle.api.tasks.compile.AbstractCompile import org.gradle.jvm.tasks.Jar import org.gradle.util.ConfigureUtil -import org.jetbrains.kotlin.gradle.dsl.* +import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension import org.jetbrains.kotlin.gradle.dsl.configureOrCreate import org.jetbrains.kotlin.gradle.dsl.kotlinExtension import org.jetbrains.kotlin.gradle.dsl.multiplatformExtension @@ -155,6 +155,7 @@ class KotlinMultiplatformPlugin( with(project.multiplatformExtension.presets) { add(KotlinJvmTargetPreset(project, kotlinPluginVersion)) add(KotlinJsTargetPreset(project, kotlinPluginVersion)) + add(KotlinJsIrTargetPreset(project, kotlinPluginVersion)) add(KotlinAndroidTargetPreset(project, kotlinPluginVersion)) add(KotlinJvmWithJavaTargetPreset(project, kotlinPluginVersion)) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt index fe67529fd67..037549e7534 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrTargetPreset.kt @@ -35,7 +35,7 @@ open class KotlinJsIrTargetPreset( KotlinJsCompilationFactory(project, forTarget) companion object { - const val PRESET_NAME = "js" + const val PRESET_NAME = "jsIr" } }