Gradle, native: Minor fixes
Fix ReplaceWith for compilation.extraOpts Simplify languageSettings access in compile tasks Use checkedReplace in binary integration tests
This commit is contained in:
+1
-1
@@ -1110,7 +1110,7 @@ class NewMultiplatformIT : BaseGradleIT() {
|
|||||||
}
|
}
|
||||||
projectDir.resolve("src/commonMain/kotlin/PackageMain.kt").modify {
|
projectDir.resolve("src/commonMain/kotlin/PackageMain.kt").modify {
|
||||||
// Remove usages of the ":exported" dependency to be able to compile the sources.
|
// Remove usages of the ":exported" dependency to be able to compile the sources.
|
||||||
it.replace("import com.example.exported", "").replace("val exp = exported()", "val exp = 42")
|
it.checkedReplace("import com.example.exported", "").checkedReplace("val exp = exported()", "val exp = 42")
|
||||||
}
|
}
|
||||||
build("linkReleaseFrameworkIos") {
|
build("linkReleaseFrameworkIos") {
|
||||||
assertFailed()
|
assertFailed()
|
||||||
|
|||||||
+2
-2
@@ -71,11 +71,11 @@ class KotlinNativeCompilation(
|
|||||||
extraOptsNoWarn = value
|
extraOptsNoWarn = value
|
||||||
}
|
}
|
||||||
|
|
||||||
@Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs"))
|
@Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs += values as Array<String>"))
|
||||||
@Suppress("Deprecation")
|
@Suppress("Deprecation")
|
||||||
fun extraOpts(vararg values: Any) = extraOpts(values.toList())
|
fun extraOpts(vararg values: Any) = extraOpts(values.toList())
|
||||||
|
|
||||||
@Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs"))
|
@Deprecated("Use kotlinOptions.freeCompilerArgs instead", ReplaceWith("kotlinOptions.freeCompilerArgs += values as List<String>"))
|
||||||
@Suppress("Deprecation")
|
@Suppress("Deprecation")
|
||||||
fun extraOpts(values: List<Any>) {
|
fun extraOpts(values: List<Any>) {
|
||||||
extraOpts.addAll(values.map { it.toString() })
|
extraOpts.addAll(values.map { it.toString() })
|
||||||
|
|||||||
+15
-15
@@ -131,12 +131,12 @@ abstract class AbstractKotlinNativeCompile<T : KotlinCommonToolOptions> : Abstra
|
|||||||
abstract val additionalCompilerOptions: Collection<String>
|
abstract val additionalCompilerOptions: Collection<String>
|
||||||
|
|
||||||
@get:Internal
|
@get:Internal
|
||||||
val languageSettings: LanguageSettingsBuilder?
|
val languageSettings: LanguageSettingsBuilder
|
||||||
get() = project.kotlinExtension.sourceSets.findByName(compilation.defaultSourceSetName)?.languageSettings
|
get() = compilation.defaultSourceSet.languageSettings
|
||||||
|
|
||||||
@get:Input
|
@get:Input
|
||||||
val progressiveMode: Boolean
|
val progressiveMode: Boolean
|
||||||
get() = languageSettings?.progressiveMode ?: false
|
get() = languageSettings.progressiveMode
|
||||||
// endregion.
|
// endregion.
|
||||||
|
|
||||||
val kotlinNativeVersion: String
|
val kotlinNativeVersion: String
|
||||||
@@ -275,27 +275,27 @@ open class KotlinNativeCompile : AbstractKotlinNativeCompile<KotlinCommonOptions
|
|||||||
|
|
||||||
// region Language settings imported from a SourceSet.
|
// region Language settings imported from a SourceSet.
|
||||||
val languageVersion: String?
|
val languageVersion: String?
|
||||||
@Optional @Input get() = languageSettings?.languageVersion
|
@Optional @Input get() = languageSettings.languageVersion
|
||||||
|
|
||||||
val apiVersion: String?
|
val apiVersion: String?
|
||||||
@Optional @Input get() = languageSettings?.apiVersion
|
@Optional @Input get() = languageSettings.apiVersion
|
||||||
|
|
||||||
val enabledLanguageFeatures: Set<String>
|
val enabledLanguageFeatures: Set<String>
|
||||||
@Input get() = languageSettings?.enabledLanguageFeatures ?: emptySet()
|
@Input get() = languageSettings.enabledLanguageFeatures
|
||||||
|
|
||||||
val experimentalAnnotationsInUse: Set<String>
|
val experimentalAnnotationsInUse: Set<String>
|
||||||
@Input get() = languageSettings?.experimentalAnnotationsInUse.orEmpty()
|
@Input get() = languageSettings.experimentalAnnotationsInUse
|
||||||
// endregion.
|
// endregion.
|
||||||
|
|
||||||
// region Kotlin options.
|
// region Kotlin options.
|
||||||
private inner class NativeCompileOptions : KotlinCommonOptions {
|
private inner class NativeCompileOptions : KotlinCommonOptions {
|
||||||
override var apiVersion: String?
|
override var apiVersion: String?
|
||||||
get() = languageSettings?.apiVersion
|
get() = languageSettings.apiVersion
|
||||||
set(value) { languageSettings!!.apiVersion = value }
|
set(value) { languageSettings.apiVersion = value }
|
||||||
|
|
||||||
override var languageVersion: String?
|
override var languageVersion: String?
|
||||||
get() = this@KotlinNativeCompile.languageVersion
|
get() = this@KotlinNativeCompile.languageVersion
|
||||||
set(value) { languageSettings!!.languageVersion = value }
|
set(value) { languageSettings.languageVersion = value }
|
||||||
|
|
||||||
override var allWarningsAsErrors: Boolean = false
|
override var allWarningsAsErrors: Boolean = false
|
||||||
override var suppressWarnings: Boolean = false
|
override var suppressWarnings: Boolean = false
|
||||||
@@ -437,22 +437,22 @@ open class KotlinNativeLink : AbstractKotlinNativeCompile<KotlinCommonToolOption
|
|||||||
@get:Optional
|
@get:Optional
|
||||||
@get:Input
|
@get:Input
|
||||||
val languageVersion: String?
|
val languageVersion: String?
|
||||||
get() = languageSettings?.languageVersion?.takeIf { linkFromSources }
|
get() = languageSettings.languageVersion.takeIf { linkFromSources }
|
||||||
|
|
||||||
@get:Optional
|
@get:Optional
|
||||||
@get:Input
|
@get:Input
|
||||||
val apiVersion: String?
|
val apiVersion: String?
|
||||||
get() = languageSettings?.apiVersion?.takeIf { linkFromSources }
|
get() = languageSettings.apiVersion.takeIf { linkFromSources }
|
||||||
|
|
||||||
@get:Optional
|
@get:Optional
|
||||||
@get:Input
|
@get:Input
|
||||||
val enabledLanguageFeatures: Set<String>?
|
val enabledLanguageFeatures: Set<String>?
|
||||||
get() = languageSettings?.enabledLanguageFeatures?.takeIf { linkFromSources }
|
get() = languageSettings.enabledLanguageFeatures.takeIf { linkFromSources }
|
||||||
|
|
||||||
@get:Optional
|
@get:Optional
|
||||||
@get:Input
|
@get:Input
|
||||||
val experimentalAnnotationsInUse: Set<String>?
|
val experimentalAnnotationsInUse: Set<String>?
|
||||||
get() = languageSettings?.experimentalAnnotationsInUse?.takeIf { linkFromSources }
|
get() = languageSettings.experimentalAnnotationsInUse.takeIf { linkFromSources }
|
||||||
// endregion.
|
// endregion.
|
||||||
|
|
||||||
// Binary-specific options.
|
// Binary-specific options.
|
||||||
@@ -515,7 +515,7 @@ open class KotlinNativeLink : AbstractKotlinNativeCompile<KotlinCommonToolOption
|
|||||||
// Allow a user to force the old behaviour of a link task.
|
// Allow a user to force the old behaviour of a link task.
|
||||||
// TODO: Remove in 1.3.70.
|
// TODO: Remove in 1.3.70.
|
||||||
if (!linkFromSources) {
|
if (!linkFromSources) {
|
||||||
languageSettings?.let {
|
languageSettings.let {
|
||||||
addArgIfNotNull("-language-version", it.languageVersion)
|
addArgIfNotNull("-language-version", it.languageVersion)
|
||||||
addArgIfNotNull("-api-version", it.apiVersion)
|
addArgIfNotNull("-api-version", it.apiVersion)
|
||||||
it.enabledLanguageFeatures.forEach { featureName ->
|
it.enabledLanguageFeatures.forEach { featureName ->
|
||||||
|
|||||||
Reference in New Issue
Block a user