[Gradle] Implement KotlinArtifactsExtensionSetupAction

KT-61634
This commit is contained in:
Sebastian Sellmair
2023-10-17 10:01:14 +02:00
committed by Space Team
parent cc0a9e1cc1
commit 0ccb98f579
3 changed files with 5 additions and 3 deletions
@@ -20,7 +20,6 @@ import org.jetbrains.kotlin.gradle.plugin.statistics.KotlinBuildStatsService
import org.jetbrains.kotlin.gradle.targets.js.KotlinWasmTargetType
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrTargetPreset
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinWasmTargetPreset
import org.jetbrains.kotlin.gradle.targets.native.tasks.artifact.registerKotlinArtifactsExtension
import org.jetbrains.kotlin.gradle.utils.checkGradleCompatibility
import org.jetbrains.kotlin.konan.target.HostManager
import org.jetbrains.kotlin.konan.target.KonanTarget.*
@@ -47,7 +46,6 @@ class KotlinMultiplatformPlugin : Plugin<Project> {
KotlinMetadataTargetPreset(project),
METADATA_TARGET_NAME
)
project.registerKotlinArtifactsExtension()
}
@@ -41,6 +41,7 @@ import org.jetbrains.kotlin.gradle.scripting.internal.ScriptingGradleSubpluginSe
import org.jetbrains.kotlin.gradle.targets.js.npm.AddNpmDependencyExtensionProjectSetupAction
import org.jetbrains.kotlin.gradle.targets.native.CreateFatFrameworksSetupAction
import org.jetbrains.kotlin.gradle.targets.native.internal.CInteropCommonizedCInteropApiElementsConfigurationsSetupAction
import org.jetbrains.kotlin.gradle.targets.native.tasks.artifact.KotlinArtifactsExtensionSetupAction
import org.jetbrains.kotlin.gradle.tooling.RegisterBuildKotlinToolingMetadataTask
/**
@@ -60,6 +61,7 @@ internal fun Project.registerKotlinPluginExtensions() {
}
if (isMultiplatform) {
register(project, KotlinArtifactsExtensionSetupAction)
register(project, MultiplatformPublishingSetupAction)
register(project, LanguageSettingsSetupAction)
register(project, GlobalProjectStructureMetadataStorageSetupAction)
@@ -10,6 +10,7 @@ import org.gradle.api.Project
import org.gradle.api.plugins.ExtensionAware
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeArtifactDSL.ExperimentalArtifactDsl
import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupAction
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.kotlinPropertiesProvider
import org.jetbrains.kotlin.gradle.plugin.diagnostics.KotlinToolingDiagnostics
import org.jetbrains.kotlin.gradle.plugin.diagnostics.reportDiagnosticOncePerProject
@@ -17,7 +18,8 @@ import org.jetbrains.kotlin.gradle.utils.castIsolatedKotlinPluginClassLoaderAwar
import javax.inject.Inject
private const val KOTLIN_ARTIFACTS_EXTENSION_NAME = "kotlinArtifacts"
internal fun Project.registerKotlinArtifactsExtension() {
internal val KotlinArtifactsExtensionSetupAction = KotlinProjectSetupAction {
val kotlinArtifactsExt = objects.newInstance(KotlinArtifactsExtensionImpl::class.java, this)
extensions.add(KOTLIN_ARTIFACTS_EXTENSION_NAME, kotlinArtifactsExt)
kotlinArtifactsExt.artifacts.all { it.registerAssembleTask(this) }