[Gradle][MPP] Remove AbstractKotlinTargetConfigurator.createDefaultSourceSets

^KT-52726 Verification Pending
This commit is contained in:
Sebastian Sellmair
2022-09-11 19:45:44 +02:00
committed by Space
parent 67fc4f0ed6
commit 7fae9a1b73
7 changed files with 11 additions and 29 deletions
@@ -64,7 +64,6 @@ interface KotlinTargetConfigurator<KotlinTargetType : KotlinTarget> {
}
abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>(
internal val createDefaultSourceSets: Boolean,
internal val createTestCompilation: Boolean
) : KotlinTargetConfigurator<KotlinTargetType> {
@@ -99,9 +98,7 @@ abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>
override fun configureSourceSet(target: KotlinTargetType) {
target.compilations.all { compilation ->
if (createDefaultSourceSets) {
compilation.source(compilation.defaultSourceSet) // also adds dependencies, requires the configurations for target and source set to exist at this point
}
compilation.source(compilation.defaultSourceSet) // also adds dependencies, requires the configurations for target and source set to exist at this point
}
}
@@ -142,9 +139,9 @@ abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>
it.group = LifecycleBasePlugin.BUILD_GROUP
it.description = "Assembles outputs for compilation '${compilation.name}' of target '${compilation.target.name}'"
it.inputs.files({
// the task may not be registered at this point, reference it lazily
compilation.compileKotlinTaskProvider.map { it.outputs.files }
})
// the task may not be registered at this point, reference it lazily
compilation.compileKotlinTaskProvider.map { it.outputs.files }
})
if (compilation is KotlinJvmCompilation && compilation.target.withJavaEnabled) {
it.inputs.files({ compilation.compileJavaTaskProvider?.map { it.outputs.files } })
@@ -382,12 +379,8 @@ internal val KotlinTarget.testTaskName: String
get() = lowerCamelCaseName(targetName, AbstractKotlinTargetConfigurator.testTaskNameSuffix)
abstract class KotlinOnlyTargetConfigurator<KotlinCompilationType : KotlinCompilation<*>, KotlinTargetType : KotlinOnlyTarget<KotlinCompilationType>>(
createDefaultSourceSets: Boolean,
createTestCompilation: Boolean
) : AbstractKotlinTargetConfigurator<KotlinTargetType>(
createDefaultSourceSets,
createTestCompilation
) {
) : AbstractKotlinTargetConfigurator<KotlinTargetType>(createTestCompilation) {
open val archiveType: String = ArtifactTypeDefinition.JAR_TYPE
internal abstract fun buildCompilationProcessor(compilation: KotlinCompilationType): KotlinCompilationProcessor<*>
@@ -13,7 +13,7 @@ import java.util.concurrent.Callable
internal open class GradleKpmAwareTargetConfigurator<T : KotlinTarget>(
private val legacyModelTargetConfigurator: AbstractKotlinTargetConfigurator<T>,
) : AbstractKotlinTargetConfigurator<T>(true, legacyModelTargetConfigurator.createDefaultSourceSets),
) : AbstractKotlinTargetConfigurator<T>(true),
KotlinTargetConfigurator<T> by legacyModelTargetConfigurator {
// NB: this override enforces calls to other overridden functions; without it, the delegate would call its own ones
override fun configureTarget(target: T) {
@@ -9,7 +9,6 @@ import org.gradle.api.DefaultTask
import org.gradle.api.Task
import org.gradle.api.attributes.Usage
import org.gradle.language.base.plugins.LifecycleBasePlugin
import org.jetbrains.kotlin.gradle.dsl.kotlinExtension
import org.jetbrains.kotlin.gradle.plugin.*
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinUsages
@@ -21,7 +20,7 @@ import org.jetbrains.kotlin.gradle.testing.testTaskName
import java.util.concurrent.Callable
open class KotlinJsTargetConfigurator :
KotlinOnlyTargetConfigurator<KotlinJsCompilation, KotlinJsTarget>(true, true),
KotlinOnlyTargetConfigurator<KotlinJsCompilation, KotlinJsTarget>(true),
KotlinTargetWithTestsConfigurator<KotlinJsReportAggregatingTestRun, KotlinJsTarget> {
override val testRunClass: Class<KotlinJsReportAggregatingTestRun> get() = KotlinJsReportAggregatingTestRun::class.java
@@ -64,11 +63,7 @@ open class KotlinJsTargetConfigurator :
target.compilations.all { compilation ->
defineConfigurationsForCompilation(compilation)
if (createDefaultSourceSets) {
project.kotlinExtension.sourceSets.maybeCreate(compilation.defaultSourceSetName).also { sourceSet ->
compilation.source(sourceSet) // also adds dependencies, requires the configurations for target and source set to exist at this point
}
}
compilation.source(compilation.defaultSourceSet)
configureResourceProcessing(compilation, project.files(Callable { compilation.allKotlinSourceSets.map { it.resources } }))
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.gradle.utils.klibModuleName
import java.io.File
open class KotlinJsIrTargetConfigurator() :
KotlinOnlyTargetConfigurator<KotlinJsIrCompilation, KotlinJsIrTarget>(true, true),
KotlinOnlyTargetConfigurator<KotlinJsIrCompilation, KotlinJsIrTarget>(true),
KotlinTargetWithTestsConfigurator<KotlinJsReportAggregatingTestRun, KotlinJsIrTarget> {
override val testRunClass: Class<KotlinJsReportAggregatingTestRun> get() = KotlinJsReportAggregatingTestRun::class.java
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.gradle.testing.internal.kotlinTestRegistry
import org.jetbrains.kotlin.gradle.testing.testTaskName
open class KotlinJvmTargetConfigurator :
KotlinOnlyTargetConfigurator<KotlinJvmCompilation, KotlinJvmTarget>(true, true),
KotlinOnlyTargetConfigurator<KotlinJvmCompilation, KotlinJvmTarget>(true),
KotlinTargetWithTestsConfigurator<KotlinJvmTestRun, KotlinJvmTarget> {
override fun configurePlatformSpecificModel(target: KotlinJvmTarget) {
@@ -54,10 +54,7 @@ internal val Project.isCompatibilityMetadataVariantEnabled: Boolean
get() = PropertiesProvider(this).enableCompatibilityMetadataVariant == true
class KotlinMetadataTargetConfigurator :
KotlinOnlyTargetConfigurator<AbstractKotlinCompilation<*>, KotlinMetadataTarget>(
createDefaultSourceSets = false,
createTestCompilation = false
) {
KotlinOnlyTargetConfigurator<AbstractKotlinCompilation<*>, KotlinMetadataTarget>(createTestCompilation = false) {
companion object {
internal const val ALL_METADATA_JAR_NAME = "allMetadataJar"
@@ -29,9 +29,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation.Companion.TEST_COMPI
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.KOTLIN_NATIVE_IGNORE_INCORRECT_DEPENDENCIES
import org.jetbrains.kotlin.gradle.plugin.mpp.*
import org.jetbrains.kotlin.gradle.plugin.mpp.apple.registerEmbedAndSignAppleFrameworkTask
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmAwareTargetConfigurator
import org.jetbrains.kotlin.gradle.targets.metadata.isKotlinGranularMetadataEnabled
import org.jetbrains.kotlin.gradle.targets.native.*
import org.jetbrains.kotlin.gradle.targets.native.internal.commonizeCInteropTask
@@ -49,7 +47,6 @@ import org.jetbrains.kotlin.konan.target.KonanTarget
import java.io.File
open class KotlinNativeTargetConfigurator<T : KotlinNativeTarget> : AbstractKotlinTargetConfigurator<T>(
createDefaultSourceSets = true,
createTestCompilation = true
) {