[Gradle] Rename KotlinCompilationData to GradleKpmCompilationData

^KT-54312 Verification Pending
This commit is contained in:
Sebastian Sellmair
2022-10-26 16:17:27 +02:00
committed by Space Team
parent b3d82c74fe
commit f148390e14
16 changed files with 78 additions and 74 deletions
@@ -1199,6 +1199,24 @@ public class org/jetbrains/kotlin/gradle/plugin/mpp/NativeOutputKind : java/lang
public static fun values ()[Lorg/jetbrains/kotlin/gradle/plugin/mpp/NativeOutputKind;
}
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmCompilationData {
public abstract fun getCompilationClassifier ()Ljava/lang/String;
public abstract fun getCompilationPurpose ()Ljava/lang/String;
public abstract fun getCompileAllTaskName ()Ljava/lang/String;
public abstract fun getCompileDependencyFiles ()Lorg/gradle/api/file/FileCollection;
public abstract fun getCompileKotlinTaskName ()Ljava/lang/String;
public abstract fun getCompilerOptions ()Lorg/jetbrains/kotlin/gradle/plugin/HasCompilerOptions;
public abstract fun getFriendPaths ()Ljava/lang/Iterable;
public abstract fun getKotlinOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions;
public abstract fun getKotlinSourceDirectoriesByFragmentName ()Ljava/util/Map;
public abstract fun getLanguageSettings ()Lorg/jetbrains/kotlin/project/model/LanguageSettings;
public abstract fun getModuleName ()Ljava/lang/String;
public abstract fun getOutput ()Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationOutput;
public abstract fun getOwner ()Ljava/lang/Object;
public abstract fun getPlatformType ()Lorg/jetbrains/kotlin/gradle/plugin/KotlinPlatformType;
public abstract fun getProject ()Lorg/gradle/api/Project;
}
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmCompilerPlugin : org/gradle/api/Plugin {
public abstract fun getKpmCompilerPlugin ()Lorg/jetbrains/kotlin/project/model/KpmCompilerPlugin;
}
@@ -1359,7 +1377,7 @@ public final class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariant$
public static fun getWithRefinesClosure (Lorg/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariant;)Ljava/util/Set;
}
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariantCompilationData : org/jetbrains/kotlin/gradle/plugin/mpp/pm20/KotlinCompilationData {
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariantCompilationData : org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmCompilationData {
public abstract fun getCompilationClassifier ()Ljava/lang/String;
public abstract fun getCompilationPurpose ()Ljava/lang/String;
public abstract fun getCompileAllTaskName ()Ljava/lang/String;
@@ -1404,24 +1422,6 @@ public final class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariantW
public static fun getWithRefinesClosure (Lorg/jetbrains/kotlin/gradle/plugin/mpp/pm20/GradleKpmVariantWithRuntime;)Ljava/util/Set;
}
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/KotlinCompilationData {
public abstract fun getCompilationClassifier ()Ljava/lang/String;
public abstract fun getCompilationPurpose ()Ljava/lang/String;
public abstract fun getCompileAllTaskName ()Ljava/lang/String;
public abstract fun getCompileDependencyFiles ()Lorg/gradle/api/file/FileCollection;
public abstract fun getCompileKotlinTaskName ()Ljava/lang/String;
public abstract fun getCompilerOptions ()Lorg/jetbrains/kotlin/gradle/plugin/HasCompilerOptions;
public abstract fun getFriendPaths ()Ljava/lang/Iterable;
public abstract fun getKotlinOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions;
public abstract fun getKotlinSourceDirectoriesByFragmentName ()Ljava/util/Map;
public abstract fun getLanguageSettings ()Lorg/jetbrains/kotlin/project/model/LanguageSettings;
public abstract fun getModuleName ()Ljava/lang/String;
public abstract fun getOutput ()Lorg/jetbrains/kotlin/gradle/plugin/KotlinCompilationOutput;
public abstract fun getOwner ()Ljava/lang/Object;
public abstract fun getPlatformType ()Lorg/jetbrains/kotlin/gradle/plugin/KotlinPlatformType;
public abstract fun getProject ()Lorg/gradle/api/Project;
}
public abstract interface class org/jetbrains/kotlin/gradle/plugin/mpp/pm20/PublishedModuleCoordinatesProvider {
public abstract fun getCapabilities ()Ljava/lang/Iterable;
public abstract fun getGroup ()Ljava/lang/String;
@@ -16,7 +16,11 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.project.model.LanguageSettings
interface KotlinCompilationData<T : KotlinCommonOptionsDeprecated> {
/*
Previously used to find a common representation for KPM and TCS.
Not in use anymore. Can be removed/inlined into KPM later.
*/
interface GradleKpmCompilationData<T : KotlinCommonOptionsDeprecated> {
val project: Project
val owner: Any?
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.project.model.LanguageSettings
interface GradleKpmVariantCompilationData<T : KotlinCommonOptionsDeprecated> : KotlinCompilationData<T> {
interface GradleKpmVariantCompilationData<T : KotlinCommonOptionsDeprecated> : GradleKpmCompilationData<T> {
override val owner: GradleKpmVariant
override val project: Project get() = owner.containingModule.project
@@ -14,7 +14,7 @@ import org.gradle.api.file.SourceDirectorySet
import org.jetbrains.kotlin.gradle.plugin.mpp.internal
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmModule
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmCompilationData
import org.jetbrains.kotlin.gradle.utils.filesProvider
import org.jetbrains.kotlin.project.model.LanguageSettings
@@ -83,9 +83,9 @@ internal sealed class KotlinCompilationProjection {
get() = origin.allKotlinSourceSets.map { it.kotlin }
}
class KPM(val compilationData: KotlinCompilationData<*>) : KotlinCompilationProjection() {
class KPM(val compilationData: GradleKpmCompilationData<*>) : KotlinCompilationProjection() {
override val origin: KotlinCompilationData<*> = compilationData
override val origin: GradleKpmCompilationData<*> = compilationData
override val project: Project
get() = origin.project
@@ -29,7 +29,7 @@ open class GradleKpmCompilationTaskConfigurator(
fun createKotlinJvmCompilationTask(
variant: GradleKpmVariant,
compilationData: KotlinCompilationData<*>
compilationData: GradleKpmCompilationData<*>
): TaskProvider<out KotlinCompile> {
Kotlin2JvmSourceSetProcessor(KotlinTasksProvider(), KotlinCompilationProjection.KPM(compilationData)).run()
val allSources = getSourcesForFragmentCompilation(variant)
@@ -48,7 +48,7 @@ open class GradleKpmCompilationTaskConfigurator(
protected fun createKotlinNativeCompilationTask(
fragment: GradleKpmFragment,
compilationData: KotlinNativeCompilationData<*>,
compilationData: GradleKpmNativeCompilationData<*>,
configure: KotlinNativeCompile.() -> Unit
): TaskProvider<KotlinNativeCompile> {
val compileTask = KotlinNativeTargetConfigurator.createKlibCompilationTask(
@@ -69,7 +69,7 @@ open class GradleKpmCompilationTaskConfigurator(
fun createKotlinNativeCompilationTask(
variant: GradleKpmNativeVariantInternal,
compilationData: KotlinNativeCompilationData<*>
compilationData: GradleKpmNativeCompilationData<*>
): TaskProvider<KotlinNativeCompile> = createKotlinNativeCompilationTask(variant, compilationData) {
kotlinPluginData = project.compilerPluginProviderForPlatformCompilation(variant, compilationData)
}
@@ -50,7 +50,7 @@ open class GradleKpmFragmentSourcesProvider {
}
open class LifecycleTasksManager(private val project: Project) {
open fun registerClassesTask(compilationData: KotlinCompilationData<*>) = with(project) {
open fun registerClassesTask(compilationData: GradleKpmCompilationData<*>) = with(project) {
val classesTaskName = compilationData.compileAllTaskName
val classesTask = project.tasks.register(classesTaskName) { classesTask ->
classesTask.inputs.files(compilationData.output.allOutputs)
@@ -26,7 +26,7 @@ val GradleKpmHostSpecificMetadataArtifact = GradleKpmConfigurationArtifactsSetup
project.metadataCompilationRegistryByModuleId.getValue(fragment.containingModule.moduleIdentifier)
.withAll { metadataCompilation ->
val metadataFragment = metadataCompilation.fragment
if (metadataCompilation is KotlinNativeFragmentMetadataCompilationData) {
if (metadataCompilation is GradleKpmNativeFragmentMetadataCompilationData) {
jar.from(project.files(project.provider {
if (metadataFragment in fragment.withRefinesClosure && metadataFragment.isNativeHostSpecific())
project.filesWithUnpackedArchives(metadataCompilation.output.allOutputs, setOf(KLIB_FILE_EXTENSION))
@@ -25,20 +25,20 @@ import org.jetbrains.kotlin.gradle.utils.setValue
import org.jetbrains.kotlin.konan.target.HostManager
import org.jetbrains.kotlin.konan.target.KonanTarget
interface KotlinMetadataCompilationData<T : KotlinCommonOptions> : KotlinCompilationData<T> {
interface GradleKpmMetadataCompilationData<T : KotlinCommonOptions> : GradleKpmCompilationData<T> {
val isActive: Boolean
}
interface KotlinCommonFragmentMetadataCompilationData : KotlinMetadataCompilationData<KotlinMultiplatformCommonOptions>
interface GradleKpmCommonFragmentMetadataCompilationData : GradleKpmMetadataCompilationData<KotlinMultiplatformCommonOptions>
internal abstract class AbstractKotlinFragmentMetadataCompilationData<T : KotlinCommonOptions>(
internal abstract class GradleKpmAbstractFragmentMetadataCompilationData<T : KotlinCommonOptions>(
final override val project: Project,
val fragment: GradleKpmFragment,
private val module: GradleKpmModule,
private val compileAllTask: TaskProvider<DefaultTask>,
val metadataCompilationRegistry: MetadataCompilationRegistry,
private val resolvedMetadataFiles: Lazy<Iterable<ResolvedMetadataFilesProvider>>
) : KotlinMetadataCompilationData<T> {
) : GradleKpmMetadataCompilationData<T> {
override val owner
get() = project.topLevelExtension
@@ -103,21 +103,21 @@ internal abstract class AbstractKotlinFragmentMetadataCompilationData<T : Kotlin
}
}
internal open class KotlinCommonFragmentMetadataCompilationDataImpl(
internal open class GradleKpmCommonFragmentMetadataCompilationDataImpl(
project: Project,
fragment: GradleKpmFragment,
module: GradleKpmModule,
compileAllTask: TaskProvider<DefaultTask>,
metadataCompilationRegistry: MetadataCompilationRegistry,
resolvedMetadataFiles: Lazy<Iterable<ResolvedMetadataFilesProvider>>
) : AbstractKotlinFragmentMetadataCompilationData<KotlinMultiplatformCommonOptions>(
) : GradleKpmAbstractFragmentMetadataCompilationData<KotlinMultiplatformCommonOptions>(
project,
fragment,
module,
compileAllTask,
metadataCompilationRegistry,
resolvedMetadataFiles
), KotlinCommonFragmentMetadataCompilationData {
), GradleKpmCommonFragmentMetadataCompilationData {
override val isActive: Boolean
get() = !fragment.isNativeShared() &&
@@ -141,9 +141,9 @@ internal open class KotlinCommonFragmentMetadataCompilationDataImpl(
}
}
interface KotlinNativeFragmentMetadataCompilationData :
KotlinMetadataCompilationData<KotlinCommonOptions>,
KotlinNativeCompilationData<KotlinCommonOptions>
interface GradleKpmNativeFragmentMetadataCompilationData :
GradleKpmMetadataCompilationData<KotlinCommonOptions>,
GradleKpmNativeCompilationData<KotlinCommonOptions>
internal fun GradleKpmFragment.isNativeShared(): Boolean =
containingVariants.run {
@@ -153,21 +153,21 @@ internal fun GradleKpmFragment.isNativeShared(): Boolean =
internal fun GradleKpmFragment.isNativeHostSpecific(): Boolean =
this in getHostSpecificFragments(containingModule)
internal open class KotlinNativeFragmentMetadataCompilationDataImpl(
internal open class GradleKpmNativeFragmentMetadataCompilationDataImpl(
project: Project,
fragment: GradleKpmFragment,
module: GradleKpmModule,
compileAllTask: TaskProvider<DefaultTask>,
metadataCompilationRegistry: MetadataCompilationRegistry,
resolvedMetadataFiles: Lazy<Iterable<ResolvedMetadataFilesProvider>>
) : AbstractKotlinFragmentMetadataCompilationData<KotlinCommonOptions>(
) : GradleKpmAbstractFragmentMetadataCompilationData<KotlinCommonOptions>(
project,
fragment,
module,
compileAllTask,
metadataCompilationRegistry,
resolvedMetadataFiles
), KotlinNativeFragmentMetadataCompilationData {
), GradleKpmNativeFragmentMetadataCompilationData {
override val compileKotlinTaskName: String
get() = lowerCamelCaseName("compile", fragment.disambiguateName(""), "KotlinNativeMetadata")
@@ -202,10 +202,10 @@ internal open class KotlinNativeFragmentMetadataCompilationDataImpl(
// TODO think about more generic case: a fragment that can be compiled by an arbitrary compiler
// what tasks should we create? should there be a generic task for that?
internal class MetadataCompilationRegistry {
private val commonCompilationDataPerFragment = LinkedHashMap<GradleKpmFragment, KotlinCommonFragmentMetadataCompilationDataImpl>()
private val nativeCompilationDataPerFragment = LinkedHashMap<GradleKpmFragment, KotlinNativeFragmentMetadataCompilationDataImpl>()
private val commonCompilationDataPerFragment = LinkedHashMap<GradleKpmFragment, GradleKpmCommonFragmentMetadataCompilationDataImpl>()
private val nativeCompilationDataPerFragment = LinkedHashMap<GradleKpmFragment, GradleKpmNativeFragmentMetadataCompilationDataImpl>()
fun registerCommon(fragment: GradleKpmFragment, compilationData: KotlinCommonFragmentMetadataCompilationDataImpl) {
fun registerCommon(fragment: GradleKpmFragment, compilationData: GradleKpmCommonFragmentMetadataCompilationDataImpl) {
commonCompilationDataPerFragment.compute(fragment) { _, existing ->
existing?.let { error("common compilation data for fragment $fragment already registered") }
compilationData
@@ -213,7 +213,7 @@ internal class MetadataCompilationRegistry {
withAllCommonCallbacks.forEach { it.invoke(compilationData) }
}
fun registerNative(fragment: GradleKpmFragment, compilationData: KotlinNativeFragmentMetadataCompilationDataImpl) {
fun registerNative(fragment: GradleKpmFragment, compilationData: GradleKpmNativeFragmentMetadataCompilationDataImpl) {
nativeCompilationDataPerFragment.compute(fragment) { _, existing ->
existing?.let { error("native compilation data for fragment $fragment already registered") }
compilationData
@@ -221,15 +221,15 @@ internal class MetadataCompilationRegistry {
withAllNativeCallbacks.forEach { it.invoke(compilationData) }
}
fun getForFragmentOrNull(fragment: GradleKpmFragment): AbstractKotlinFragmentMetadataCompilationData<*>? =
fun getForFragmentOrNull(fragment: GradleKpmFragment): GradleKpmAbstractFragmentMetadataCompilationData<*>? =
listOf(commonCompilationDataPerFragment.getValue(fragment), nativeCompilationDataPerFragment.getValue(fragment)).singleOrNull {
it.isActive
}
private val withAllCommonCallbacks = mutableListOf<(AbstractKotlinFragmentMetadataCompilationData<*>) -> Unit>()
private val withAllNativeCallbacks = mutableListOf<(AbstractKotlinFragmentMetadataCompilationData<*>) -> Unit>()
private val withAllCommonCallbacks = mutableListOf<(GradleKpmAbstractFragmentMetadataCompilationData<*>) -> Unit>()
private val withAllNativeCallbacks = mutableListOf<(GradleKpmAbstractFragmentMetadataCompilationData<*>) -> Unit>()
fun withAll(action: (AbstractKotlinFragmentMetadataCompilationData<*>) -> Unit) {
fun withAll(action: (GradleKpmAbstractFragmentMetadataCompilationData<*>) -> Unit) {
commonCompilationDataPerFragment.forEach { action(it.value) }
nativeCompilationDataPerFragment.forEach { action(it.value) }
withAllCommonCallbacks += action
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.konan.target.KonanTarget
internal class GradleKpmNativeVariantCompilationData(
val variant: GradleKpmNativeVariantInternal
) : GradleKpmVariantCompilationDataInternal<KotlinCommonOptions>, KotlinNativeCompilationData<KotlinCommonOptions> {
) : GradleKpmVariantCompilationDataInternal<KotlinCommonOptions>, GradleKpmNativeCompilationData<KotlinCommonOptions> {
override val konanTarget: KonanTarget
get() = variant.konanTarget
@@ -45,7 +45,7 @@ abstract class GradleKpmNativeVariantInternal(
override val compilationData by lazy { GradleKpmNativeVariantCompilationData(this) }
}
interface KotlinNativeCompilationData<T : KotlinCommonOptions> : KotlinCompilationData<T> {
interface GradleKpmNativeCompilationData<T : KotlinCommonOptions> : GradleKpmCompilationData<T> {
val konanTarget: KonanTarget
@Deprecated("Please declare explicit dependency on kotlinx-cli. This option is scheduled to be removed in 1.9.0")
@@ -19,23 +19,23 @@ import java.io.File
internal fun Project.compilerPluginProviderForMetadata(
fragment: GradleKpmFragment,
compilationData: KotlinCommonFragmentMetadataCompilationData
compilationData: GradleKpmCommonFragmentMetadataCompilationData
) = compilerPluginDataProvider(compilationData, fragment::metadataCompilationPluginData)
internal fun Project.compilerPluginProviderForNativeMetadata(
fragment: GradleKpmFragment,
compilationData: KotlinNativeFragmentMetadataCompilationData
compilationData: GradleKpmNativeFragmentMetadataCompilationData
) = compilerPluginDataProvider(compilationData, fragment::nativeMetadataCompilationPluginData)
internal fun Project.compilerPluginProviderForPlatformCompilation(
variant: GradleKpmVariant,
compilationData: KotlinCompilationData<*>
compilationData: GradleKpmCompilationData<*>
) = compilerPluginDataProvider(compilationData, variant::platformCompilationPluginData)
internal fun KotlinCompilationData<*>.pluginClasspathConfigurationName() = "${compileKotlinTaskName}PluginClasspath"
internal fun GradleKpmCompilationData<*>.pluginClasspathConfigurationName() = "${compileKotlinTaskName}PluginClasspath"
private fun Project.compilerPluginDataProvider(
compilationData: KotlinCompilationData<*>,
compilationData: GradleKpmCompilationData<*>,
pluginDataList: () -> List<PluginData>
): Provider<KotlinCompilerPluginData> {
return newProperty {
@@ -180,7 +180,7 @@ private fun createCommonMetadataCompilation(
val project = module.project
val metadataCompilationData =
KotlinCommonFragmentMetadataCompilationDataImpl(
GradleKpmCommonFragmentMetadataCompilationDataImpl(
project,
fragment,
module,
@@ -201,7 +201,7 @@ private fun createNativeMetadataCompilation(
val project = module.project
val metadataCompilationData =
KotlinNativeFragmentMetadataCompilationDataImpl(
GradleKpmNativeFragmentMetadataCompilationDataImpl(
project,
fragment,
module,
@@ -216,7 +216,7 @@ private fun createNativeMetadataCompilation(
private class GradleKpmMetadataCompilationTasksConfigurator(project: Project) : GradleKpmCompilationTaskConfigurator(project) {
fun createKotlinCommonCompilationTask(
fragment: GradleKpmFragment,
compilationData: KotlinCommonFragmentMetadataCompilationData
compilationData: GradleKpmCommonFragmentMetadataCompilationData
) {
KotlinCommonSourceSetProcessor(KotlinCompilationProjection.KPM(compilationData), KotlinTasksProvider()).run()
val allSources = getSourcesForFragmentCompilation(fragment)
@@ -232,7 +232,7 @@ private class GradleKpmMetadataCompilationTasksConfigurator(project: Project) :
fun createKotlinNativeMetadataCompilationTask(
fragment: GradleKpmFragment,
compilationData: KotlinNativeFragmentMetadataCompilationData
compilationData: GradleKpmNativeFragmentMetadataCompilationData
): TaskProvider<KotlinNativeCompile> = createKotlinNativeCompilationTask(fragment, compilationData) {
kotlinPluginData = project.compilerPluginProviderForNativeMetadata(fragment, compilationData)
}
@@ -276,7 +276,7 @@ private fun createExtractMetadataTask(
// FIXME: use this function once more than one platform is supported
private fun disableMetadataCompilationIfNotYetSupported(
metadataCompilationData: AbstractKotlinFragmentMetadataCompilationData<*>
metadataCompilationData: GradleKpmAbstractFragmentMetadataCompilationData<*>
) {
val fragment = metadataCompilationData.fragment
val platforms = fragment.containingVariants.map { it.platformType }.toSet()
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util
import org.gradle.api.Project
import org.gradle.api.file.FileCollection
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.AbstractKotlinFragmentMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmAbstractFragmentMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmVariant
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmVariantWithRuntime
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.resolvableMetadataConfigurationName
@@ -39,7 +39,7 @@ internal fun GradleKpmDependencyFilesHolder.Companion.ofVariantRuntimeDependenci
}
internal fun GradleKpmDependencyFilesHolder.Companion.ofMetadataCompilationDependencies(
compilationData: AbstractKotlinFragmentMetadataCompilationData<*>
compilationData: GradleKpmAbstractFragmentMetadataCompilationData<*>
) = object : GradleKpmDependencyFilesHolder {
override val dependencyConfigurationName: String
get() = compilationData.fragment.containingModule.resolvableMetadataConfigurationName
@@ -7,7 +7,7 @@ package org.jetbrains.kotlin.gradle.targets.native.internal
import org.gradle.api.tasks.Input
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmCompilationData
import org.jetbrains.kotlin.tooling.core.UnsafeApi
import java.io.Serializable
@@ -26,7 +26,7 @@ internal data class CInteropIdentifier internal constructor(
}
@OptIn(UnsafeApi::class)
fun create(compilation: KotlinCompilationData<*>): Scope {
fun create(compilation: GradleKpmCompilationData<*>): Scope {
return Scope("compilation/${compilation.compileKotlinTaskName}")
}
}
@@ -33,8 +33,8 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationProjection
import org.jetbrains.kotlin.gradle.plugin.cocoapods.asValidFrameworkName
import org.jetbrains.kotlin.gradle.plugin.mpp.*
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinNativeCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmNativeCompilationData
import org.jetbrains.kotlin.gradle.plugin.sources.DefaultLanguageSettingsBuilder
import org.jetbrains.kotlin.gradle.plugin.tcsOrNull
import org.jetbrains.kotlin.gradle.targets.native.KonanPropertiesBuildService
@@ -160,7 +160,7 @@ abstract class AbstractKotlinNativeCompile<
@get:Internal
protected val konanTarget by project.provider {
when (val compilation = compilation) {
is KotlinCompilationProjection.KPM -> (compilation.compilationData as KotlinNativeCompilationData<*>).konanTarget
is KotlinCompilationProjection.KPM -> (compilation.compilationData as GradleKpmNativeCompilationData<*>).konanTarget
is KotlinCompilationProjection.TCS -> (compilation.compilation as AbstractKotlinNativeCompilation).konanTarget
}
}
@@ -455,7 +455,7 @@ internal constructor(
}
private val isMetadataCompilation: Boolean = when (compilation) {
is KotlinCompilationProjection.KPM -> compilation.compilationData is KotlinMetadataCompilationData<*>
is KotlinCompilationProjection.KPM -> compilation.compilationData is GradleKpmMetadataCompilationData<*>
is KotlinCompilationProjection.TCS -> compilation.compilation is KotlinMetadataCompilation<*>
}
@@ -10,8 +10,8 @@ import org.gradle.api.provider.Provider
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationProjection
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinCommonCompilation
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.AbstractKotlinFragmentMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmAbstractFragmentMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.GradleKpmMetadataCompilationData
import org.jetbrains.kotlin.gradle.plugin.sources.internal
import org.jetbrains.kotlin.gradle.tasks.KotlinCompileCommon
import java.io.File
@@ -24,7 +24,7 @@ internal class KotlinCompileCommonConfig(
task.expectActualLinker.value(
providers.provider {
(compilationProjection.origin as? KotlinCommonCompilation)?.isKlibCompilation == true ||
compilationProjection.origin is KotlinMetadataCompilationData<*>
compilationProjection.origin is GradleKpmMetadataCompilationData<*>
}
).disallowChanges()
task.refinesMetadataPaths.from(getRefinesMetadataPaths(project)).disallowChanges()
@@ -43,7 +43,7 @@ internal class KotlinCompileCommonConfig(
}
is KotlinCompilationProjection.KPM -> {
val compilationData = compilationProjection.compilationData as AbstractKotlinFragmentMetadataCompilationData<*>
val compilationData = compilationProjection.compilationData as GradleKpmAbstractFragmentMetadataCompilationData<*>
val fragment = compilationData.fragment
project.files(
fragment.refinesClosure.minus(fragment).map {