diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt index 5f50fbc26ff..e28cc93e04f 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsTargetPreset.kt @@ -69,10 +69,13 @@ class KotlinJsSingleTargetPreset( project, kotlinPluginVersion ) { - // In a Kotlin/JS single-platform project, we don't need any disambiguation suffixes or prefixes in the names: override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget): String? = - null + irPreset?.let { + super.provideTargetDisambiguationClassifier(target) + ?.removePrefix(target.name.removeCapitalizedJsCompilerSuffix(JsCompilerType.legacy)) + ?.decapitalize() + } override fun createKotlinTargetConfigurator() = KotlinJsTargetConfigurator( 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 70b017e833c..cae7dd51c72 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 @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCompilationFactory import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTarget import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTargetPreset +import org.jetbrains.kotlin.gradle.plugin.removeCapitalizedJsCompilerSuffix import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName open class KotlinJsIrTargetPreset( @@ -52,11 +53,20 @@ open class KotlinJsIrTargetPreset( class KotlinJsIrSingleTargetPreset( project: Project, kotlinPluginVersion: String -) : - KotlinJsIrTargetPreset(project, kotlinPluginVersion) { - +) : KotlinJsIrTargetPreset( + project, + kotlinPluginVersion +) { // In a Kotlin/JS single-platform project, we don't need any disambiguation suffixes or prefixes in the names: - override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget): String? = null + override fun provideTargetDisambiguationClassifier(target: KotlinOnlyTarget): String? { + return if (mixedMode!!) { + super.provideTargetDisambiguationClassifier(target) + ?.removePrefix(target.name.removeCapitalizedJsCompilerSuffix(JsCompilerType.ir)) + ?.decapitalize() + } else { + null + } + } override fun createKotlinTargetConfigurator(): KotlinOnlyTargetConfigurator = KotlinJsIrTargetConfigurator(kotlinPluginVersion)