KPM: adjust naming to match the MPP plugin

Adjust the names of:
* dependency configurations
* elements configurations
* platform JAR tasks
* metadata JAR tasks

All of them omit the module name if it's `main
This commit is contained in:
Sergey Igushkin
2022-02-01 18:29:02 +04:00
committed by Space
parent 3361f015a5
commit 51f737056e
4 changed files with 21 additions and 5 deletions
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
import org.gradle.api.artifacts.Dependency
import org.gradle.jvm.tasks.Jar
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.disambiguateName
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguationOmittingMain
import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask
import org.jetbrains.kotlin.gradle.utils.dashSeparatedLowercaseName
@@ -24,4 +24,4 @@ val KotlinFragmentCompilationOutputsJarArtifact = FragmentArtifacts<KotlinGradle
}
internal val KotlinGradleVariant.outputsJarTaskName: String
get() = disambiguateName("jar")
get() = FragmentNameDisambiguationOmittingMain(containingModule, name).disambiguateName("jar")
@@ -7,7 +7,7 @@
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguationOmittingMain
typealias KotlinJvmVariantFactory = KotlinGradleFragmentFactory<KotlinJvmVariant>
@@ -53,7 +53,7 @@ class KotlinJvmVariantInstantiator internal constructor(
) : KotlinGradleFragmentFactory.FragmentInstantiator<KotlinJvmVariant> {
override fun create(name: String): KotlinJvmVariant {
val names = FragmentNameDisambiguation(module, name)
val names = FragmentNameDisambiguationOmittingMain(module, name)
val context = KotlinGradleFragmentConfigurationContextImpl(
module, config.dependenciesConfigurationFactory.create(module, names), names
)
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCommonSourceSetProcessor
import org.jetbrains.kotlin.gradle.plugin.mpp.*
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.ComputedCapability
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.disambiguateName
import org.jetbrains.kotlin.gradle.targets.metadata.KotlinMetadataTargetConfigurator
import org.jetbrains.kotlin.gradle.targets.metadata.createGenerateProjectStructureMetadataTask
import org.jetbrains.kotlin.gradle.targets.metadata.filesWithUnpackedArchives
import org.jetbrains.kotlin.gradle.tasks.*
@@ -167,7 +168,7 @@ private fun configureMetadataJarTask(
}
internal fun metadataJarName(module: KotlinGradleModule) =
lowerCamelCaseName(module.moduleClassifier, "metadataJar")
lowerCamelCaseName(module.moduleClassifier, KotlinMetadataTargetConfigurator.ALL_METADATA_JAR_NAME)
private fun createCommonMetadataCompilation(
fragment: KotlinGradleFragment,
@@ -40,6 +40,10 @@ internal fun FragmentNameDisambiguation(module: KotlinModule, fragmentName: Stri
return DefaultKotlinFragmentNameDisambiguation(module, fragmentName)
}
internal fun FragmentNameDisambiguationOmittingMain(module: KotlinModule, fragmentName: String): KotlinNameDisambiguation {
return DefaultKotlinFragmentNameDisambiguationOmittingMain(module, fragmentName)
}
private class DefaultKotlinFragmentNameDisambiguation(
private val module: KotlinModule,
private val fragmentName: String
@@ -49,6 +53,15 @@ private class DefaultKotlinFragmentNameDisambiguation(
}
}
private class DefaultKotlinFragmentNameDisambiguationOmittingMain(
private val module: KotlinModule,
private val fragmentName: String
) : KotlinNameDisambiguation {
override fun disambiguateName(simpleName: String): String {
return KotlinModuleFragment.disambiguateNameOmittingMain(module, fragmentName, simpleName)
}
}
internal fun KotlinModuleFragment.disambiguateName(simpleName: String) =
KotlinModuleFragment.disambiguateName(containingModule, fragmentName, simpleName)
@@ -58,4 +71,6 @@ internal val KotlinModuleFragment.unambiguousNameInProject
internal fun KotlinModuleFragment.Companion.disambiguateName(module: KotlinModule, fragmentName: String, simpleName: String) =
lowerCamelCaseName(fragmentName, module.moduleIdentifier.moduleClassifier ?: KotlinGradleModule.MAIN_MODULE_NAME, simpleName)
internal fun KotlinModuleFragment.Companion.disambiguateNameOmittingMain(module: KotlinModule, fragmentName: String, simpleName: String) =
lowerCamelCaseName(fragmentName, module.moduleIdentifier.moduleClassifier, simpleName)