[Gradle/MPP] Deprecated android in favour androidTarget in MPP DSL
ReplaceWith was added only to `android()` and `android(name)` because it isn't working for other functions: KTIJ-25383. #KT-57903 In Progress
This commit is contained in:
committed by
Space Team
parent
becf50ee0f
commit
70c9d6dc44
+16
@@ -219,3 +219,19 @@ internal fun <T : KotlinTarget> KotlinTargetsContainerWithPresets.configureOrCre
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal fun KotlinTargetsContainerWithPresets.configureOrCreateAndroidTargetAndReportDeprecation(
|
||||||
|
targetName: String,
|
||||||
|
configure: KotlinAndroidTarget.() -> Unit
|
||||||
|
): KotlinAndroidTarget {
|
||||||
|
val targetPreset = presets.getByName("android") as KotlinAndroidTargetPreset
|
||||||
|
val result = configureOrCreate(targetName, targetPreset, configure)
|
||||||
|
|
||||||
|
result.project.logger.warn(
|
||||||
|
"""
|
||||||
|
w: Please use `androidTarget` function instead of `android` to configure android target inside `kotlin { }` block.
|
||||||
|
See the details here: https://kotl.in/android-target-dsl
|
||||||
|
""".trimIndent()
|
||||||
|
)
|
||||||
|
return result
|
||||||
|
}
|
||||||
+26
-1
@@ -10,9 +10,11 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinTargetsContainerWithPresets
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTarget
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTarget
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTargetPreset
|
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinAndroidTargetPreset
|
||||||
|
|
||||||
|
private const val ANDROID_TARGET_MIGRATION_MESSAGE = "Please use androidTarget() instead. Learn more here: https://kotl.in/android-target-dsl"
|
||||||
|
|
||||||
interface KotlinTargetContainerWithAndroidPresetFunctions : KotlinTargetsContainerWithPresets {
|
interface KotlinTargetContainerWithAndroidPresetFunctions : KotlinTargetsContainerWithPresets {
|
||||||
|
|
||||||
fun android(
|
fun androidTarget(
|
||||||
name: String = "android",
|
name: String = "android",
|
||||||
configure: KotlinAndroidTarget.() -> Unit = { }
|
configure: KotlinAndroidTarget.() -> Unit = { }
|
||||||
): KotlinAndroidTarget =
|
): KotlinAndroidTarget =
|
||||||
@@ -22,9 +24,32 @@ interface KotlinTargetContainerWithAndroidPresetFunctions : KotlinTargetsContain
|
|||||||
configure
|
configure
|
||||||
)
|
)
|
||||||
|
|
||||||
|
fun androidTarget() = androidTarget("android") { }
|
||||||
|
fun androidTarget(name: String) = androidTarget(name) { }
|
||||||
|
fun androidTarget(name: String, configure: Action<KotlinAndroidTarget>) = androidTarget(name) { configure.execute(this) }
|
||||||
|
fun androidTarget(configure: Action<KotlinAndroidTarget>) = androidTarget { configure.execute(this) }
|
||||||
|
|
||||||
|
@Deprecated(ANDROID_TARGET_MIGRATION_MESSAGE)
|
||||||
|
fun android(
|
||||||
|
name: String = "android",
|
||||||
|
configure: KotlinAndroidTarget.() -> Unit = { }
|
||||||
|
): KotlinAndroidTarget =
|
||||||
|
configureOrCreateAndroidTargetAndReportDeprecation(name, configure)
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(ANDROID_TARGET_MIGRATION_MESSAGE, replaceWith = ReplaceWith("androidTarget()"))
|
||||||
fun android() = android("android") { }
|
fun android() = android("android") { }
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(ANDROID_TARGET_MIGRATION_MESSAGE, replaceWith = ReplaceWith("androidTarget(name)"))
|
||||||
fun android(name: String) = android(name) { }
|
fun android(name: String) = android(name) { }
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(ANDROID_TARGET_MIGRATION_MESSAGE)
|
||||||
fun android(name: String, configure: Action<KotlinAndroidTarget>) = android(name) { configure.execute(this) }
|
fun android(name: String, configure: Action<KotlinAndroidTarget>) = android(name) { configure.execute(this) }
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(ANDROID_TARGET_MIGRATION_MESSAGE)
|
||||||
fun android(configure: Action<KotlinAndroidTarget>) = android { configure.execute(this) }
|
fun android(configure: Action<KotlinAndroidTarget>) = android { configure.execute(this) }
|
||||||
|
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user