From 8f8eaa28d5afe9155d517ef9c386ef89c20546f6 Mon Sep 17 00:00:00 2001 From: Ilya Goncharov Date: Thu, 23 Jan 2020 19:42:18 +0300 Subject: [PATCH] [Gradle, JS] Add attribute for IR target --- .../kotlin/gradle/plugin/KotlinTargetConfigurator.kt | 6 ++++++ .../kotlin/gradle/targets/js/KotlinJsCompilation.kt | 2 +- .../jetbrains/kotlin/gradle/targets/js/KotlinJsTarget.kt | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt index e09056cbf15..96b6761e8ed 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinTargetConfigurator.kt @@ -29,7 +29,9 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions import org.jetbrains.kotlin.gradle.dsl.kotlinExtension import org.jetbrains.kotlin.gradle.plugin.mpp.* import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget +import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget.Companion.IR import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget.Companion.LEGACY +import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTarget import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName import java.util.concurrent.Callable import kotlin.reflect.KMutableProperty1 @@ -451,6 +453,10 @@ fun Configuration.usesPlatformOf(target: KotlinTarget): Configuration { attributes.attribute(KotlinJsTarget.jsLegacyAttribute, LEGACY) } + if (target is KotlinJsIrTarget) { + attributes.attribute(KotlinJsTarget.jsLegacyAttribute, IR) + } + // TODO: Provide an universal way to copy attributes from the target. if (target is KotlinNativeTarget) { attributes.attribute(KotlinNativeTarget.konanTargetAttribute, target.konanTarget.name) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt index 2c2361de6cf..1a99d6242f8 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsCompilation.kt @@ -34,7 +34,7 @@ open class KotlinJsCompilation( override val defaultSourceSetName: String get() = lowerCamelCaseName( - target.disambiguationClassifier?.removePrefix(LEGACY_DISAMBIGUATION_CLASSIFIER), + target.disambiguationClassifier?.removePrefix(LEGACY_DISAMBIGUATION_CLASSIFIER)?.toLowerCase(), compilationName ) } \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTarget.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTarget.kt index 7506d971522..0a0a60149de 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTarget.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTarget.kt @@ -182,6 +182,7 @@ constructor( ) const val LEGACY = "legacy" + const val IR = "ir" fun setupAttributesMatchingStrategy(attributesSchema: AttributesSchema) { attributesSchema.attribute(jsLegacyAttribute)