Model mapping: fix the binaries task not created for Native targets

This commit is contained in:
Sergey Igushkin
2022-02-01 01:00:17 +04:00
committed by Space
parent 55eeb0ca8f
commit 289c42f431
2 changed files with 20 additions and 7 deletions
@@ -29,10 +29,10 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation.Companion.TEST_COMPI
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.KOTLIN_NATIVE_IGNORE_INCORRECT_DEPENDENCIES
import org.jetbrains.kotlin.gradle.plugin.mpp.*
import org.jetbrains.kotlin.gradle.plugin.mpp.apple.registerEmbedAndSignAppleFrameworkTask
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinGradleVariant
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinNativeCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.isMainCompilationData
import org.jetbrains.kotlin.gradle.plugin.mpp.isMain
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KpmAwareTargetConfigurator
import org.jetbrains.kotlin.gradle.targets.metadata.KotlinMetadataTargetConfigurator
import org.jetbrains.kotlin.gradle.targets.metadata.isKotlinGranularMetadataEnabled
import org.jetbrains.kotlin.gradle.targets.native.*
import org.jetbrains.kotlin.gradle.targets.native.internal.commonizeCInteropTask
@@ -545,6 +545,19 @@ open class KotlinNativeTargetConfigurator<T : KotlinNativeTarget> : AbstractKotl
}
}
internal class KpmNativeTargetConfigurator<T : KotlinNativeTarget>(private val nativeTargetConfigurator: KotlinNativeTargetConfigurator<T>) :
KpmAwareTargetConfigurator<T>(nativeTargetConfigurator) {
override fun configureTarget(target: T) {
super.configureTarget(target)
configureBinariesTask(target)
}
private fun configureBinariesTask(target: T) {
target.project.registerTask<DefaultTask>(target.artifactsTaskName) { }
}
}
abstract class KotlinNativeTargetWithTestsConfigurator<
TargetType : KotlinNativeTargetWithTests<TestRunType>,
TestRunType : KotlinNativeBinaryTestRun,
@@ -130,7 +130,7 @@ open class KotlinNativeTargetPreset(name: String, project: Project, konanTarget:
override fun createTargetConfigurator(): AbstractKotlinTargetConfigurator<KotlinNativeTarget> {
val configurator = KotlinNativeTargetConfigurator<KotlinNativeTarget>()
return if (isKpm)
KpmAwareTargetConfigurator(configurator)
KpmNativeTargetConfigurator(configurator)
else configurator
}
@@ -145,7 +145,7 @@ open class KotlinNativeTargetWithHostTestsPreset(name: String, project: Project,
override fun createTargetConfigurator(): AbstractKotlinTargetConfigurator<KotlinNativeTargetWithHostTests> {
val configurator = KotlinNativeTargetWithHostTestsConfigurator()
return if (isKpm)
KpmAwareTargetWithTestsConfigurator(configurator)
KpmNativeTargetConfigurator(configurator)
else configurator
}
@@ -159,7 +159,7 @@ open class KotlinNativeTargetWithSimulatorTestsPreset(name: String, project: Pro
override fun createTargetConfigurator(): AbstractKotlinTargetConfigurator<KotlinNativeTargetWithSimulatorTests> {
val configurator = KotlinNativeTargetWithSimulatorTestsConfigurator()
return if (isKpm)
KpmAwareTargetConfigurator(configurator)
KpmNativeTargetConfigurator(configurator)
else configurator
}