[Gradle] Move MetadataDependencyTransformationTask configuration to task file
^KT-49933
This commit is contained in:
committed by
Space Team
parent
afaa86291f
commit
244f742610
+25
-1
@@ -6,6 +6,8 @@
|
||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||
|
||||
import org.gradle.api.DefaultTask
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.artifacts.component.ComponentIdentifier
|
||||
import org.gradle.api.artifacts.component.ModuleComponentIdentifier
|
||||
import org.gradle.api.artifacts.component.ProjectComponentIdentifier
|
||||
@@ -21,6 +23,8 @@ import org.jetbrains.kotlin.gradle.plugin.sources.KotlinDependencyScope.*
|
||||
import org.jetbrains.kotlin.gradle.plugin.sources.internal
|
||||
import org.jetbrains.kotlin.gradle.targets.metadata.KotlinMetadataTargetConfigurator
|
||||
import org.jetbrains.kotlin.gradle.targets.metadata.dependsOnClosureWithInterCompilationDependencies
|
||||
import org.jetbrains.kotlin.gradle.tasks.dependsOn
|
||||
import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask
|
||||
import org.jetbrains.kotlin.gradle.tasks.locateTask
|
||||
import org.jetbrains.kotlin.gradle.utils.*
|
||||
import java.io.File
|
||||
@@ -31,6 +35,26 @@ import javax.inject.Inject
|
||||
@Deprecated("Task was renamed to MetadataDependencyTransformationTask", replaceWith = ReplaceWith("MetadataDependencyTransformationTask"))
|
||||
typealias TransformKotlinGranularMetadata = MetadataDependencyTransformationTask
|
||||
|
||||
internal const val TRANSFORM_ALL_SOURCESETS_DEPENDENCIES_METADATA = "transformDependenciesMetadata"
|
||||
private fun transformGranularMetadataTaskName(sourceSetName: String) =
|
||||
lowerCamelCaseName("transform", sourceSetName, "DependenciesMetadata")
|
||||
|
||||
internal fun Project.locateOrRegisterMetadataDependencyTransformationTask(
|
||||
sourceSet: KotlinSourceSet
|
||||
): TaskProvider<MetadataDependencyTransformationTask> {
|
||||
val transformationTask = project.locateOrRegisterTask<MetadataDependencyTransformationTask>(
|
||||
transformGranularMetadataTaskName(sourceSet.name),
|
||||
listOf(sourceSet)
|
||||
) {
|
||||
description =
|
||||
"Generates serialized dependencies metadata for compilation '${sourceSet.name}' (for tooling)"
|
||||
}
|
||||
|
||||
project.locateOrRegisterTask<Task>(TRANSFORM_ALL_SOURCESETS_DEPENDENCIES_METADATA).dependsOn(transformationTask)
|
||||
|
||||
return transformationTask
|
||||
}
|
||||
|
||||
open class MetadataDependencyTransformationTask
|
||||
@Inject constructor(
|
||||
kotlinSourceSet: KotlinSourceSet,
|
||||
@@ -64,7 +88,7 @@ open class MetadataDependencyTransformationTask
|
||||
dependsOnClosureWithInterCompilationDependencies(kotlinSourceSet).mapNotNull {
|
||||
project
|
||||
.tasks
|
||||
.locateTask(KotlinMetadataTargetConfigurator.transformGranularMetadataTaskName(it.name))
|
||||
.locateTask(transformGranularMetadataTaskName(it.name))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-13
@@ -58,10 +58,6 @@ class KotlinMetadataTargetConfigurator :
|
||||
KotlinOnlyTargetConfigurator<KotlinCompilation<*>, KotlinMetadataTarget>(createTestCompilation = false) {
|
||||
companion object {
|
||||
internal const val ALL_METADATA_JAR_NAME = "allMetadataJar"
|
||||
internal const val TRANSFORM_ALL_SOURCESETS_DEPENDENCIES_METADATA = "transformDependenciesMetadata"
|
||||
|
||||
internal fun transformGranularMetadataTaskName(sourceSetName: String) =
|
||||
lowerCamelCaseName("transform", sourceSetName, "DependenciesMetadata")
|
||||
}
|
||||
|
||||
override fun configureTarget(target: KotlinMetadataTarget) {
|
||||
@@ -338,15 +334,7 @@ class KotlinMetadataTargetConfigurator :
|
||||
val project = compilation.target.project
|
||||
val sourceSet = compilation.defaultSourceSet
|
||||
|
||||
val transformationTask = project.locateOrRegisterTask<MetadataDependencyTransformationTask>(
|
||||
transformGranularMetadataTaskName(sourceSet.name),
|
||||
listOf(sourceSet)
|
||||
) {
|
||||
description =
|
||||
"Generates serialized dependencies metadata for compilation '${compilation.name}' of target '${compilation.target.name}' (for tooling)"
|
||||
}
|
||||
|
||||
project.locateOrRegisterTask<Task>(TRANSFORM_ALL_SOURCESETS_DEPENDENCIES_METADATA).dependsOn(transformationTask)
|
||||
val transformationTask = project.locateOrRegisterMetadataDependencyTransformationTask(sourceSet)
|
||||
|
||||
val artifacts = sourceSet.internal.resolvableMetadataConfiguration.incoming.artifacts
|
||||
|
||||
|
||||
Reference in New Issue
Block a user