diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCliCommonizer.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCliCommonizer.kt index 8f476471425..cec95089cbd 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCliCommonizer.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/compilerRunner/GradleCliCommonizer.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.compilerRunner import org.gradle.api.Project +import org.gradle.api.artifacts.Configuration import org.gradle.api.attributes.Category import org.gradle.api.attributes.LibraryElements import org.gradle.api.attributes.Usage @@ -26,9 +27,9 @@ internal fun GradleCliCommonizer(commonizerToolRunner: KotlinNativeCommonizerToo }) } -internal fun Project.registerCommonizerClasspathConfigurationIfNecessary() { - if (configurations.findByName(KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME) == null) { - project.configurations.create(KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME).run { +internal fun Project.maybeCreateCommonizerClasspathConfiguration(): Configuration { + return configurations.findByName(KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME) + ?: project.configurations.create(KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME).run { isCanBeResolved = true isCanBeConsumed = false attributes.attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.LIBRARY)) @@ -40,5 +41,4 @@ internal fun Project.registerCommonizerClasspathConfigurationIfNecessary() { ) } } - } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt index 615910034cd..6dabde22a86 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPluginWrapper.kt @@ -24,7 +24,7 @@ import org.gradle.api.logging.Logger import org.gradle.api.logging.Logging import org.gradle.api.model.ObjectFactory import org.gradle.tooling.provider.model.ToolingModelBuilderRegistry -import org.jetbrains.kotlin.compilerRunner.registerCommonizerClasspathConfigurationIfNecessary +import org.jetbrains.kotlin.compilerRunner.maybeCreateCommonizerClasspathConfiguration import org.jetbrains.kotlin.gradle.dsl.* import org.jetbrains.kotlin.gradle.internal.KOTLIN_COMPILER_EMBEDDABLE import org.jetbrains.kotlin.gradle.internal.KOTLIN_MODULE_GROUP @@ -159,7 +159,7 @@ abstract class KotlinBasePluginWrapper : DefaultKotlinBasePlugin() { isTransitive = false addGradlePluginMetadataAttributes(project) } - project.registerCommonizerClasspathConfigurationIfNecessary() + project.maybeCreateCommonizerClasspathConfiguration() project.registerDefaultVariantImplementations() diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt index 45fdd8bcd47..a7cae8ac2c5 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CInteropCommonizerTask.kt @@ -15,9 +15,9 @@ import org.gradle.process.ExecOperations import org.jetbrains.kotlin.commonizer.CommonizerDependency import org.jetbrains.kotlin.commonizer.TargetedCommonizerDependency import org.jetbrains.kotlin.commonizer.allLeaves +import org.jetbrains.kotlin.compilerRunner.* import org.jetbrains.kotlin.compilerRunner.GradleCliCommonizer import org.jetbrains.kotlin.compilerRunner.KotlinNativeCommonizerToolRunner -import org.jetbrains.kotlin.compilerRunner.KotlinToolRunner import org.jetbrains.kotlin.compilerRunner.konanHome import org.jetbrains.kotlin.gradle.dsl.multiplatformExtensionOrNull import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation @@ -97,7 +97,6 @@ internal open class CInteropCommonizerTask private val runnerSettings: Provider = kotlinPluginVersion .zip(customJvmArgs) { pluginVersion, customJvmArgs -> - commonizerClasspath KotlinNativeCommonizerToolRunner.Settings( pluginVersion, commonizerClasspath.files, diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt index 675553cb793..f554ebff58e 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt @@ -9,8 +9,8 @@ import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.tasks.Delete import org.gradle.api.tasks.TaskProvider +import org.jetbrains.kotlin.compilerRunner.maybeCreateCommonizerClasspathConfiguration import org.jetbrains.kotlin.gradle.internal.isInIdeaSync -import org.jetbrains.kotlin.gradle.plugin.KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider import org.jetbrains.kotlin.gradle.plugin.getKotlinPluginVersion import org.jetbrains.kotlin.gradle.plugin.ide.Idea222Api @@ -77,9 +77,7 @@ internal val Project.commonizeCInteropTask: TaskProvider description = "Invokes the commonizer on c-interop bindings of the project" kotlinPluginVersion.set(getKotlinPluginVersion()) - commonizerClasspath.from( - configurations.getByName(KLIB_COMMONIZER_CLASSPATH_CONFIGURATION_NAME) - ) + commonizerClasspath.from(project.maybeCreateCommonizerClasspathConfiguration()) customJvmArgs.set(PropertiesProvider(project).commonizerJvmArgs) } ) @@ -127,10 +125,8 @@ internal val Project.commonizeNativeDistributionTask: TaskProvider = kotlinPluginVersion .zip(customJvmArgs) { pluginVersion, customJvmArgs -> - commonizerClasspath KotlinNativeCommonizerToolRunner.Settings( pluginVersion, commonizerClasspath.files, @@ -103,7 +101,6 @@ internal open class NativeDistributionCommonizerTask } init { - project.registerCommonizerClasspathConfigurationIfNecessary() outputs.upToDateWhen { commonizerCache.isUpToDate(commonizerTargets) }