[Gradle] rework addSourceSet to not let sourceSets be exposed in groovy
Also mark it as deprecated to prevent internal misuses. ^KT-58234 Verification Pending
This commit is contained in:
committed by
Space Team
parent
f05856f6a0
commit
67f4343137
+2
@@ -194,6 +194,7 @@ internal abstract class AbstractKotlinPlugin(
|
||||
javaSourceSet.resources.setSrcDirs(
|
||||
listOf { kotlinSourceSet.resources.sourceDirectories }
|
||||
)
|
||||
@Suppress("DEPRECATION")
|
||||
kotlinCompilation.addSourceSet(kotlinSourceSet)
|
||||
project.compatibilityConventionRegistrar.addConvention(javaSourceSet, kotlinSourceSetDslName, kotlinSourceSet)
|
||||
javaSourceSet.addExtension(kotlinSourceSetDslName, kotlinSourceSet.kotlin)
|
||||
@@ -204,6 +205,7 @@ internal abstract class AbstractKotlinPlugin(
|
||||
}
|
||||
|
||||
kotlinTarget.compilations.all { kotlinCompilation ->
|
||||
@Suppress("DEPRECATION")
|
||||
kotlinCompilation.addSourceSet(kotlinCompilation.defaultSourceSet)
|
||||
}
|
||||
|
||||
|
||||
+1
@@ -100,6 +100,7 @@ abstract class AbstractKotlinTargetConfigurator<KotlinTargetType : KotlinTarget>
|
||||
|
||||
override fun configureSourceSet(target: KotlinTargetType) {
|
||||
target.compilations.all { compilation ->
|
||||
@Suppress("DEPRECATION")
|
||||
compilation.addSourceSet(compilation.defaultSourceSet) // also adds dependencies, requires the configurations for target and source set to exist at this point
|
||||
}
|
||||
}
|
||||
|
||||
+6
-4
@@ -6,16 +6,17 @@
|
||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||
|
||||
import org.gradle.api.file.FileCollection
|
||||
import org.jetbrains.kotlin.gradle.InternalKotlinGradlePluginApi
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
|
||||
import org.jetbrains.kotlin.gradle.plugin.await
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationConfigurationsContainer
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationSourceSetsContainer
|
||||
import org.jetbrains.kotlin.gradle.utils.ObservableSet
|
||||
import org.jetbrains.kotlin.tooling.core.HasMutableExtras
|
||||
|
||||
@InternalKotlinGradlePluginApi
|
||||
internal interface InternalKotlinCompilation<out T : KotlinCommonOptions> : KotlinCompilation<T>, HasMutableExtras {
|
||||
override val kotlinSourceSets: ObservableSet<KotlinSourceSet>
|
||||
override val allKotlinSourceSets: ObservableSet<KotlinSourceSet>
|
||||
@@ -23,7 +24,6 @@ internal interface InternalKotlinCompilation<out T : KotlinCommonOptions> : Kotl
|
||||
val configurations: KotlinCompilationConfigurationsContainer
|
||||
val friendPaths: Iterable<FileCollection>
|
||||
val processResourcesTaskName: String?
|
||||
val sourceSets: KotlinCompilationSourceSetsContainer
|
||||
}
|
||||
|
||||
internal val <T : KotlinCommonOptions> KotlinCompilation<T>.internal: InternalKotlinCompilation<T>
|
||||
@@ -36,5 +36,7 @@ internal suspend fun InternalKotlinCompilation<*>.awaitAllKotlinSourceSets(): Se
|
||||
return allKotlinSourceSets
|
||||
}
|
||||
|
||||
internal fun KotlinCompilation<*>.addSourceSet(kotlinSourceSet: KotlinSourceSet) =
|
||||
internal.sourceSets.source(kotlinSourceSet)
|
||||
@Deprecated("KT-58234: Adding source sets to Compilation is not recommended. Please consider using dependsOn.")
|
||||
internal fun KotlinCompilation<*>.addSourceSet(kotlinSourceSet: KotlinSourceSet) {
|
||||
internal.decoratedInstance.compilation.sourceSets.source(kotlinSourceSet)
|
||||
}
|
||||
+1
-1
@@ -59,7 +59,7 @@ internal class KotlinCompilationImpl constructor(
|
||||
|
||||
override val extras: MutableExtras = mutableExtrasOf()
|
||||
|
||||
override val sourceSets get() = params.sourceSets
|
||||
val sourceSets get() = params.sourceSets
|
||||
|
||||
override val configurations: KotlinCompilationConfigurationsContainer
|
||||
get() = params.dependencyConfigurations
|
||||
|
||||
+2
@@ -206,9 +206,11 @@ internal class AndroidProjectHandler(
|
||||
}
|
||||
|
||||
// Register the source only after the task is created, because the task is required for that:
|
||||
@Suppress("DEPRECATION")
|
||||
compilation.addSourceSet(defaultSourceSet)
|
||||
|
||||
compilation.androidVariant.forEachKotlinSourceSet(project) { kotlinSourceSet ->
|
||||
@Suppress("DEPRECATION")
|
||||
compilation.addSourceSet(kotlinSourceSet)
|
||||
}
|
||||
}
|
||||
|
||||
+1
@@ -62,6 +62,7 @@ open class KotlinJsTargetConfigurator :
|
||||
val project = target.project
|
||||
|
||||
target.compilations.all { compilation ->
|
||||
@Suppress("DEPRECATION")
|
||||
compilation.addSourceSet(compilation.defaultSourceSet)
|
||||
|
||||
configureResourceProcessing(
|
||||
|
||||
+1
@@ -79,6 +79,7 @@ class KotlinMetadataTargetConfigurator :
|
||||
// it isn't necessary for KLib compilations
|
||||
// see [KotlinCompilationSourceSetInclusion.AddSourcesWithoutDependsOnClosure]
|
||||
defaultSourceSet.internal.dependsOnClosure.forAll {
|
||||
@Suppress("DEPRECATION")
|
||||
addSourceSet(it)
|
||||
}
|
||||
} else {
|
||||
|
||||
+1
@@ -54,6 +54,7 @@ class KotlinMetadataTargetPreset(
|
||||
val mainCompilation = compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME)
|
||||
val commonMainSourceSet = project.kotlinExtension.sourceSets.getByName(KotlinSourceSet.COMMON_MAIN_SOURCE_SET_NAME)
|
||||
|
||||
@Suppress("DEPRECATION")
|
||||
mainCompilation.addSourceSet(commonMainSourceSet)
|
||||
|
||||
project.whenEvaluated {
|
||||
|
||||
Reference in New Issue
Block a user