Make 'Framework.embedBitcodeMode' lazy provider.

This commit is contained in:
konstantin.tskhovrebov
2022-09-27 12:56:44 +02:00
committed by Space Team
parent 8c2b2eb278
commit 7ca5750255
2 changed files with 19 additions and 6 deletions
@@ -279,14 +279,22 @@ class Framework(
/** /**
* Embed bitcode for the framework or not. See [BitcodeEmbeddingMode]. * Embed bitcode for the framework or not. See [BitcodeEmbeddingMode].
*/ */
var embedBitcode: org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode = val embedBitcodeMode = project.objects.property(org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode::class.java).apply {
Xcode.defaultBitcodeEmbeddingMode(konanTarget, buildType) convention(project.provider { Xcode.defaultBitcodeEmbeddingMode(konanTarget, buildType) })
}
@Deprecated("Use 'embedBitcodeMode' property instead.")
var embedBitcode: org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
get() = embedBitcodeMode.get()
set(value) {
embedBitcodeMode.set(value)
}
/** /**
* Enable or disable embedding bitcode for the framework. See [BitcodeEmbeddingMode]. * Enable or disable embedding bitcode for the framework. See [BitcodeEmbeddingMode].
*/ */
fun embedBitcode(mode: org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode) { fun embedBitcode(mode: org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode) {
embedBitcode = mode embedBitcodeMode.set(mode)
} }
/** /**
@@ -192,9 +192,14 @@ constructor(
val target: String val target: String
get() = compilation.konanTarget.name get() = compilation.konanTarget.name
@get:Input @Deprecated("Use 'embedBitcodeMode' provider instead.", ReplaceWith("embedBitcodeMode.get()"))
@get:Internal
val embedBitcode: BitcodeEmbeddingMode val embedBitcode: BitcodeEmbeddingMode
get() = (binary as? Framework)?.embedBitcode ?: BitcodeEmbeddingMode.DISABLE get() = embedBitcodeMode.get()
@get:Input
val embedBitcodeMode: Provider<BitcodeEmbeddingMode> =
(binary as? Framework)?.embedBitcodeMode ?: project.provider { BitcodeEmbeddingMode.DISABLE }
@get:Internal @get:Internal
val apiFiles = project.files(project.configurations.getByName(compilation.apiConfigurationName)).filterKlibsPassedToCompiler() val apiFiles = project.files(project.configurations.getByName(compilation.apiConfigurationName)).filterKlibsPassedToCompiler()
@@ -331,7 +336,7 @@ constructor(
plugins, plugins,
processTests, processTests,
entryPoint, entryPoint,
embedBitcode, embedBitcodeMode.get(),
linkerOpts, linkerOpts,
binaryOptions, binaryOptions,
isStaticFramework, isStaticFramework,