[Gradle] Use global property from Cross Compilation build service
^KT-80008
diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeTarget.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeTarget.kt
index ffbc602..ee24d1e 100644
--- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeTarget.kt
+++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/KotlinNativeTarget.kt
@@ -11,7 +11,6 @@
import org.gradle.api.attributes.Attribute
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.*
-import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider.Companion.kotlinPropertiesProvider
import org.jetbrains.kotlin.gradle.plugin.mpp.resources.publication.setUpResourcesVariant
import org.jetbrains.kotlin.gradle.plugin.sources.awaitPlatformCompilations
import org.jetbrains.kotlin.gradle.plugin.sources.internal
@@ -43,15 +42,16 @@
* Indicates whether cross-compilation is supported on the current host for the associated Kotlin Native Target.
*/
internal val crossCompilationOnCurrentHostSupported: Future<Boolean> = project.future {
- val crossCompilationEnabled = project.kotlinPropertiesProvider.enableKlibsCrossCompilation
val isSupportedHost = hostManager.isEnabled(konanTarget)
// Supported hosts can always compile
if (isSupportedHost) return@future true
- // Unsupported hosts require cross-compilation enabled and no cinterops
- KotlinPluginLifecycle.Stage.AfterFinaliseCompilations.await()
- crossCompilationEnabled && compilations.none { it.cinterops.isNotEmpty() }
+ // Get the cross-compilation service
+ val crossCompilationService = crossCompilationServiceProvider.get()
+
+ // Fetch the service result
+ crossCompilationService.isCrossCompilationSupported()
}
override val kotlinComponents: Set<KotlinTargetComponent> by lazy {