[Gradle] Deprecate KotlinCompilation.compilerOptions
Users quite often confuse that compilerOptions in KotlinCompilation is actually the same object in the Kotlin compilation task. We want to make our API more straightforward and remove this ambiguity by proposing to use task compiler options DSL. ^KT-65568 Verification Pending
This commit is contained in:
committed by
Space Team
parent
5df05d5797
commit
d662f72d07
@@ -92,22 +92,22 @@ kotlin {
|
|||||||
browser {}
|
browser {}
|
||||||
}
|
}
|
||||||
nodejs {}
|
nodejs {}
|
||||||
compilations["main"].compilerOptions.configure {
|
compilations["main"].compileTaskProvider.configure {
|
||||||
freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
compilerOptions.freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@OptIn(ExperimentalWasmDsl::class)
|
@OptIn(ExperimentalWasmDsl::class)
|
||||||
wasmJs {
|
wasmJs {
|
||||||
nodejs()
|
nodejs()
|
||||||
compilations["main"].compilerOptions.configure {
|
compilations["main"].compileTaskProvider.configure {
|
||||||
freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
compilerOptions.freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@OptIn(ExperimentalWasmDsl::class)
|
@OptIn(ExperimentalWasmDsl::class)
|
||||||
wasmWasi {
|
wasmWasi {
|
||||||
nodejs()
|
nodejs()
|
||||||
compilations["main"].compilerOptions.configure {
|
compilations["main"].compileTaskProvider.configure {
|
||||||
freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
compilerOptions.freeCompilerArgs.add("-Xir-module-name=kotlin-test")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
@@ -59,6 +59,10 @@ interface KotlinCompilation<out T : KotlinCommonOptionsDeprecated> : Named,
|
|||||||
|
|
||||||
val compileKotlinTaskName: String
|
val compileKotlinTaskName: String
|
||||||
|
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
val compilerOptions: HasCompilerOptions<*>
|
val compilerOptions: HasCompilerOptions<*>
|
||||||
|
|
||||||
|
|||||||
+4
@@ -17,6 +17,10 @@ class PrototypeAndroidCompilation(delegate: Delegate) : DecoratedExternalKotlinC
|
|||||||
override val kotlinOptions: KotlinCommonOptions
|
override val kotlinOptions: KotlinCommonOptions
|
||||||
get() = super.kotlinOptions as KotlinJvmOptions
|
get() = super.kotlinOptions as KotlinJvmOptions
|
||||||
|
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions>
|
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions>
|
||||||
get() = super.compilerOptions as HasCompilerOptions<KotlinJvmCompilerOptions>
|
get() = super.compilerOptions as HasCompilerOptions<KotlinJvmCompilerOptions>
|
||||||
|
|||||||
+1
-1
@@ -57,7 +57,7 @@ internal sealed class KotlinCompilationInfo {
|
|||||||
override val moduleName: String
|
override val moduleName: String
|
||||||
get() = origin.moduleNameForCompilation().get()
|
get() = origin.moduleNameForCompilation().get()
|
||||||
|
|
||||||
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION")
|
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION", "DEPRECATION")
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<*>
|
override val compilerOptions: DeprecatedHasCompilerOptions<*>
|
||||||
get() = origin.compilerOptions
|
get() = origin.compilerOptions
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.moduleNameForCompilation
|
|||||||
|
|
||||||
internal object KotlinCompilationCompilerOptionsFromTargetConfigurator : KotlinCompilationImplFactory.PostConfigure {
|
internal object KotlinCompilationCompilerOptionsFromTargetConfigurator : KotlinCompilationImplFactory.PostConfigure {
|
||||||
override fun configure(compilation: DecoratedKotlinCompilation<*>) {
|
override fun configure(compilation: DecoratedKotlinCompilation<*>) {
|
||||||
when (val compilationCompilerOptions = compilation.compilerOptions.options) {
|
when (@Suppress("DEPRECATION") val compilationCompilerOptions = compilation.compilerOptions.options) {
|
||||||
is KotlinJvmCompilerOptions -> compilation.configureJvmCompilerOptions(compilationCompilerOptions)
|
is KotlinJvmCompilerOptions -> compilation.configureJvmCompilerOptions(compilationCompilerOptions)
|
||||||
is KotlinJsCompilerOptions -> compilation.configureJsCompilerOptions(compilationCompilerOptions)
|
is KotlinJsCompilerOptions -> compilation.configureJsCompilerOptions(compilationCompilerOptions)
|
||||||
is KotlinNativeCompilerOptions -> {
|
is KotlinNativeCompilerOptions -> {
|
||||||
|
|||||||
+4
@@ -172,6 +172,10 @@ internal class KotlinCompilationImpl constructor(
|
|||||||
override val kotlinOptions: KotlinCommonOptions
|
override val kotlinOptions: KotlinCommonOptions
|
||||||
get() = params.kotlinOptions
|
get() = params.kotlinOptions
|
||||||
|
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION")
|
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION")
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<*>
|
override val compilerOptions: DeprecatedHasCompilerOptions<*>
|
||||||
get() = params.compilerOptions
|
get() = params.compilerOptions
|
||||||
|
|||||||
+1
@@ -35,6 +35,7 @@ internal object KotlinCompilationLanguageSettingsConfigurator : KotlinCompilatio
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
languageSettingsBuilder
|
languageSettingsBuilder
|
||||||
.compilationCompilerOptions
|
.compilationCompilerOptions
|
||||||
.complete(compilation.compilerOptions.options)
|
.complete(compilation.compilerOptions.options)
|
||||||
|
|||||||
+1
@@ -33,6 +33,7 @@ internal val KotlinCreateNativeCompileTasksSideEffect = KotlinCompilationSideEff
|
|||||||
|
|
||||||
val kotlinNativeCompile = project.registerTask<KotlinNativeCompile>(
|
val kotlinNativeCompile = project.registerTask<KotlinNativeCompile>(
|
||||||
compilation.compileKotlinTaskName,
|
compilation.compileKotlinTaskName,
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
listOf(compilationInfo, compilation.compilerOptions.options)
|
listOf(compilationInfo, compilation.compilerOptions.options)
|
||||||
) { task ->
|
) { task ->
|
||||||
task.group = BasePlugin.BUILD_GROUP
|
task.group = BasePlugin.BUILD_GROUP
|
||||||
|
|||||||
+1
-1
@@ -188,7 +188,7 @@ internal class AndroidProjectHandler(
|
|||||||
task.destinationDirectory.set(project.layout.buildDirectory.dir("tmp/kotlin-classes/$variantDataName"))
|
task.destinationDirectory.set(project.layout.buildDirectory.dir("tmp/kotlin-classes/$variantDataName"))
|
||||||
task.description = "Compiles the $variantDataName kotlin."
|
task.description = "Compiles the $variantDataName kotlin."
|
||||||
}
|
}
|
||||||
val kotlinTask = tasksProvider.registerKotlinJVMTask(
|
@Suppress("DEPRECATION") val kotlinTask = tasksProvider.registerKotlinJVMTask(
|
||||||
project,
|
project,
|
||||||
compilation.compileKotlinTaskName,
|
compilation.compileKotlinTaskName,
|
||||||
compilation.compilerOptions.options,
|
compilation.compilerOptions.options,
|
||||||
|
|||||||
+6
-9
@@ -31,18 +31,14 @@ open class KotlinJsCompilation @Inject internal constructor(
|
|||||||
) : DeprecatedAbstractKotlinCompilationToRunnableFiles<KotlinJsOptions>(compilation),
|
) : DeprecatedAbstractKotlinCompilationToRunnableFiles<KotlinJsOptions>(compilation),
|
||||||
HasBinaries<KotlinJsBinaryContainer> {
|
HasBinaries<KotlinJsBinaryContainer> {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
|
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
||||||
final override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJsCompilerOptions>
|
final override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJsCompilerOptions>
|
||||||
get() = compilation.compilerOptions as DeprecatedHasCompilerOptions<KotlinJsCompilerOptions>
|
get() = compilation.compilerOptions as DeprecatedHasCompilerOptions<KotlinJsCompilerOptions>
|
||||||
|
|
||||||
internal fun compilerOptions(configure: KotlinJsCompilerOptions.() -> Unit) {
|
|
||||||
compilerOptions.configure(configure)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal fun compilerOptions(configure: Action<KotlinJsCompilerOptions>) {
|
|
||||||
configure.execute(compilerOptions.options)
|
|
||||||
}
|
|
||||||
|
|
||||||
override val binaries: KotlinJsBinaryContainer =
|
override val binaries: KotlinJsBinaryContainer =
|
||||||
compilation.target.project.objects.newInstance(
|
compilation.target.project.objects.newInstance(
|
||||||
KotlinJsBinaryContainer::class.java,
|
KotlinJsBinaryContainer::class.java,
|
||||||
@@ -107,6 +103,7 @@ open class KotlinJsCompilation @Inject internal constructor(
|
|||||||
val KotlinJsCompilation.fileExtension: Provider<String>
|
val KotlinJsCompilation.fileExtension: Provider<String>
|
||||||
get() {
|
get() {
|
||||||
val isWasm = platformType == KotlinPlatformType.wasm
|
val isWasm = platformType == KotlinPlatformType.wasm
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
return compilerOptions.options.moduleKind.map { moduleKind ->
|
return compilerOptions.options.moduleKind.map { moduleKind ->
|
||||||
if (isWasm || moduleKind == JsModuleKind.MODULE_ES) {
|
if (isWasm || moduleKind == JsModuleKind.MODULE_ES) {
|
||||||
"mjs"
|
"mjs"
|
||||||
|
|||||||
+1
@@ -57,6 +57,7 @@ abstract class KotlinJsIrSubTarget(
|
|||||||
internal fun configure() {
|
internal fun configure() {
|
||||||
target.compilations.all {
|
target.compilations.all {
|
||||||
val npmProject = it.npmProject
|
val npmProject = it.npmProject
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
it.compilerOptions.options.freeCompilerArgs.add("$PER_MODULE_OUTPUT_NAME=${npmProject.name}")
|
it.compilerOptions.options.freeCompilerArgs.add("$PER_MODULE_OUTPUT_NAME=${npmProject.name}")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+5
-9
@@ -6,7 +6,6 @@
|
|||||||
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
|
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import org.gradle.api.Action
|
|
||||||
import org.gradle.api.file.FileCollection
|
import org.gradle.api.file.FileCollection
|
||||||
import org.gradle.api.provider.Property
|
import org.gradle.api.provider.Property
|
||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
@@ -27,17 +26,14 @@ open class KotlinJvmAndroidCompilation @Inject internal constructor(
|
|||||||
|
|
||||||
override val target: KotlinAndroidTarget = compilation.target as KotlinAndroidTarget
|
override val target: KotlinAndroidTarget = compilation.target as KotlinAndroidTarget
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJvmCompilerOptions> =
|
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJvmCompilerOptions> =
|
||||||
compilation.compilerOptions.castCompilerOptionsType()
|
compilation.compilerOptions.castCompilerOptionsType()
|
||||||
|
|
||||||
internal fun compilerOptions(configure: KotlinJvmCompilerOptions.() -> Unit) {
|
|
||||||
compilerOptions.configure(configure)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal fun compilerOptions(configure: Action<KotlinJvmCompilerOptions>) {
|
|
||||||
configure.execute(compilerOptions.options)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal val testedVariantArtifacts: Property<FileCollection> =
|
internal val testedVariantArtifacts: Property<FileCollection> =
|
||||||
compilation.project.objects.property(FileCollection::class.java)
|
compilation.project.objects.property(FileCollection::class.java)
|
||||||
|
|
||||||
|
|||||||
+5
-9
@@ -6,7 +6,6 @@
|
|||||||
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
|
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import org.gradle.api.Action
|
|
||||||
import org.gradle.api.provider.Provider
|
import org.gradle.api.provider.Provider
|
||||||
import org.gradle.api.tasks.SourceSet
|
import org.gradle.api.tasks.SourceSet
|
||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
@@ -33,17 +32,14 @@ open class KotlinJvmCompilation @Inject internal constructor(
|
|||||||
|
|
||||||
final override val target: KotlinJvmTarget = compilation.target as KotlinJvmTarget
|
final override val target: KotlinJvmTarget = compilation.target as KotlinJvmTarget
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJvmCompilerOptions> =
|
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinJvmCompilerOptions> =
|
||||||
compilation.compilerOptions.castCompilerOptionsType()
|
compilation.compilerOptions.castCompilerOptionsType()
|
||||||
|
|
||||||
internal fun compilerOptions(configure: KotlinJvmCompilerOptions.() -> Unit) {
|
|
||||||
compilerOptions.configure(configure)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal fun compilerOptions(configure: Action<KotlinJvmCompilerOptions>) {
|
|
||||||
configure.execute(compilerOptions.options)
|
|
||||||
}
|
|
||||||
|
|
||||||
@Deprecated("Replaced with compileTaskProvider", replaceWith = ReplaceWith("compileTaskProvider"))
|
@Deprecated("Replaced with compileTaskProvider", replaceWith = ReplaceWith("compileTaskProvider"))
|
||||||
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
||||||
override val compileKotlinTaskProvider: TaskProvider<out org.jetbrains.kotlin.gradle.tasks.KotlinCompile>
|
override val compileKotlinTaskProvider: TaskProvider<out org.jetbrains.kotlin.gradle.tasks.KotlinCompile>
|
||||||
|
|||||||
+1
@@ -62,6 +62,7 @@ class KotlinJvmWithJavaTargetPreset(
|
|||||||
}
|
}
|
||||||
|
|
||||||
target.compilations.configureEach {
|
target.compilations.configureEach {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
it.compilerOptions.options.moduleName.convention(
|
it.compilerOptions.options.moduleName.convention(
|
||||||
it.moduleNameForCompilation()
|
it.moduleNameForCompilation()
|
||||||
)
|
)
|
||||||
|
|||||||
+5
-10
@@ -6,7 +6,6 @@
|
|||||||
@file:Suppress("PackageDirectoryMismatch", "UNCHECKED_CAST") // Old package for compatibility
|
@file:Suppress("PackageDirectoryMismatch", "UNCHECKED_CAST") // Old package for compatibility
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import org.gradle.api.Action
|
|
||||||
import org.gradle.api.tasks.SourceSet
|
import org.gradle.api.tasks.SourceSet
|
||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
import org.gradle.api.tasks.compile.JavaCompile
|
import org.gradle.api.tasks.compile.JavaCompile
|
||||||
@@ -25,18 +24,14 @@ open class KotlinWithJavaCompilation<KotlinOptionsType : KotlinCommonOptions, CO
|
|||||||
) : DeprecatedAbstractKotlinCompilationToRunnableFiles<KotlinOptionsType>(compilation),
|
) : DeprecatedAbstractKotlinCompilationToRunnableFiles<KotlinOptionsType>(compilation),
|
||||||
DeprecatedKotlinCompilationWithResources<KotlinOptionsType> {
|
DeprecatedKotlinCompilationWithResources<KotlinOptionsType> {
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
|
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<CO> =
|
override val compilerOptions: DeprecatedHasCompilerOptions<CO> =
|
||||||
compilation.compilerOptions as DeprecatedHasCompilerOptions<CO>
|
compilation.compilerOptions as DeprecatedHasCompilerOptions<CO>
|
||||||
|
|
||||||
internal fun compilerOptions(configure: CO.() -> Unit) {
|
|
||||||
compilerOptions.configure(configure)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal fun compilerOptions(configure: Action<CO>) {
|
|
||||||
configure.execute(compilerOptions.options)
|
|
||||||
}
|
|
||||||
|
|
||||||
val compileJavaTaskProvider: TaskProvider<out JavaCompile>
|
val compileJavaTaskProvider: TaskProvider<out JavaCompile>
|
||||||
get() = target.project.tasks.withType(JavaCompile::class.java).named(javaSourceSet.compileJavaTaskName)
|
get() = target.project.tasks.withType(JavaCompile::class.java).named(javaSourceSet.compileJavaTaskName)
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -75,7 +75,7 @@ private fun Project.createLinkTask(binary: NativeBinary) {
|
|||||||
// workaround for too late compilation compilerOptions creation
|
// workaround for too late compilation compilerOptions creation
|
||||||
// which leads to not able run project.afterEvaluate because of wrong context
|
// which leads to not able run project.afterEvaluate because of wrong context
|
||||||
// this afterEvaluate comes from NativeCompilerOptions
|
// this afterEvaluate comes from NativeCompilerOptions
|
||||||
val compilationCompilerOptions = binary.compilation.compilerOptions
|
@Suppress("DEPRECATION") val compilationCompilerOptions = binary.compilation.compilerOptions
|
||||||
val konanPropertiesBuildService = KonanPropertiesBuildService.registerIfAbsent(project)
|
val konanPropertiesBuildService = KonanPropertiesBuildService.registerIfAbsent(project)
|
||||||
val xcodeVersionTask = XcodeVersionTask.locateOrRegister(project)
|
val xcodeVersionTask = XcodeVersionTask.locateOrRegister(project)
|
||||||
val linkTask = registerTask<KotlinNativeLink>(
|
val linkTask = registerTask<KotlinNativeLink>(
|
||||||
|
|||||||
+10
-9
@@ -40,18 +40,14 @@ abstract class AbstractKotlinNativeCompilation internal constructor(
|
|||||||
override val compileTaskProvider: TaskProvider<KotlinNativeCompile>
|
override val compileTaskProvider: TaskProvider<KotlinNativeCompile>
|
||||||
get() = compilation.compileTaskProvider as TaskProvider<KotlinNativeCompile>
|
get() = compilation.compileTaskProvider as TaskProvider<KotlinNativeCompile>
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
|
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
||||||
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinNativeCompilerOptions>
|
override val compilerOptions: DeprecatedHasCompilerOptions<KotlinNativeCompilerOptions>
|
||||||
get() = compilation.compilerOptions as DeprecatedHasCompilerOptions<KotlinNativeCompilerOptions>
|
get() = compilation.compilerOptions as DeprecatedHasCompilerOptions<KotlinNativeCompilerOptions>
|
||||||
|
|
||||||
internal fun compilerOptions(configure: KotlinNativeCompilerOptions.() -> Unit) {
|
|
||||||
compilerOptions.configure(configure)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal fun compilerOptions(configure: Action<KotlinNativeCompilerOptions>) {
|
|
||||||
configure.execute(compilerOptions.options)
|
|
||||||
}
|
|
||||||
|
|
||||||
internal val useGenericPluginArtifact: Boolean
|
internal val useGenericPluginArtifact: Boolean
|
||||||
get() = project.nativeUseEmbeddableCompilerJar
|
get() = project.nativeUseEmbeddableCompilerJar
|
||||||
}
|
}
|
||||||
@@ -63,6 +59,11 @@ open class KotlinNativeCompilation @Inject internal constructor(
|
|||||||
final override val target: KotlinNativeTarget
|
final override val target: KotlinNativeTarget
|
||||||
get() = compilation.target as KotlinNativeTarget
|
get() = compilation.target as KotlinNativeTarget
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
override val compilerOptions: NativeCompilerOptions
|
override val compilerOptions: NativeCompilerOptions
|
||||||
get() = super.compilerOptions as NativeCompilerOptions
|
get() = super.compilerOptions as NativeCompilerOptions
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -34,7 +34,7 @@ internal class KaptGenerateStubsConfig : BaseKotlinCompileConfig<KaptGenerateStu
|
|||||||
|
|
||||||
configureTask { kaptGenerateStubsTask ->
|
configureTask { kaptGenerateStubsTask ->
|
||||||
// Syncing compiler options from related KotlinJvmCompile task
|
// Syncing compiler options from related KotlinJvmCompile task
|
||||||
val jvmCompilerOptions = compilation.compilerOptions.options as KotlinJvmCompilerOptions
|
@Suppress("DEPRECATION") val jvmCompilerOptions = compilation.compilerOptions.options as KotlinJvmCompilerOptions
|
||||||
KotlinJvmCompilerOptionsHelper.syncOptionsAsConvention(
|
KotlinJvmCompilerOptionsHelper.syncOptionsAsConvention(
|
||||||
from = jvmCompilerOptions,
|
from = jvmCompilerOptions,
|
||||||
into = kaptGenerateStubsTask.compilerOptions
|
into = kaptGenerateStubsTask.compilerOptions
|
||||||
|
|||||||
+2
@@ -142,7 +142,9 @@ class BuildKotlinToolingMetadataTest {
|
|||||||
project.plugins.apply("kotlin-multiplatform")
|
project.plugins.apply("kotlin-multiplatform")
|
||||||
val kotlin = multiplatformExtension
|
val kotlin = multiplatformExtension
|
||||||
val jvm = kotlin.jvm()
|
val jvm = kotlin.jvm()
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
jvm.compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME).compilerOptions.options.jvmTarget.set(JvmTarget.JVM_12)
|
jvm.compilations.getByName(KotlinCompilation.MAIN_COMPILATION_NAME).compilerOptions.options.jvmTarget.set(JvmTarget.JVM_12)
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
jvm.compilations.getByName(KotlinCompilation.TEST_COMPILATION_NAME).compilerOptions.options.jvmTarget.set(JvmTarget.JVM_10)
|
jvm.compilations.getByName(KotlinCompilation.TEST_COMPILATION_NAME).compilerOptions.options.jvmTarget.set(JvmTarget.JVM_10)
|
||||||
|
|
||||||
assertEquals(
|
assertEquals(
|
||||||
|
|||||||
+1
@@ -105,6 +105,7 @@ class K2MultiplatformStructureTest {
|
|||||||
|
|
||||||
/* Enable K2 if necessary */
|
/* Enable K2 if necessary */
|
||||||
if (KotlinVersion.DEFAULT < KotlinVersion.KOTLIN_2_0) {
|
if (KotlinVersion.DEFAULT < KotlinVersion.KOTLIN_2_0) {
|
||||||
|
@Suppress("Deprecation")
|
||||||
compilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
compilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
@@ -97,6 +97,7 @@ class KotlinCompileArgumentsTest {
|
|||||||
kotlin.jvm()
|
kotlin.jvm()
|
||||||
|
|
||||||
val jvmMainCompilation = kotlin.jvm().compilations.getByName("main")
|
val jvmMainCompilation = kotlin.jvm().compilations.getByName("main")
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
jvmMainCompilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
jvmMainCompilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
||||||
|
|
||||||
project.evaluate()
|
project.evaluate()
|
||||||
@@ -116,6 +117,7 @@ class KotlinCompileArgumentsTest {
|
|||||||
val kotlin = project.multiplatformExtension
|
val kotlin = project.multiplatformExtension
|
||||||
kotlin.jvm()
|
kotlin.jvm()
|
||||||
val compilation = kotlin.jvm().compilations.main
|
val compilation = kotlin.jvm().compilations.main
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
compilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
compilation.compilerOptions.options.languageVersion.set(KotlinVersion.KOTLIN_2_0)
|
||||||
val compileTask = compilation.compileTaskProvider.get() as KotlinCompile
|
val compileTask = compilation.compileTaskProvider.get() as KotlinCompile
|
||||||
|
|
||||||
|
|||||||
+3
-1
@@ -25,6 +25,7 @@ class KotlinNativeCompilationModuleNameTest {
|
|||||||
|
|
||||||
project.evaluate()
|
project.evaluate()
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
assertEquals(
|
assertEquals(
|
||||||
PROJECT_NAME,
|
PROJECT_NAME,
|
||||||
linuxX64Target.compilations.main.compilerOptions.options.moduleName.get(),
|
linuxX64Target.compilations.main.compilerOptions.options.moduleName.get(),
|
||||||
@@ -43,6 +44,7 @@ class KotlinNativeCompilationModuleNameTest {
|
|||||||
|
|
||||||
project.evaluate()
|
project.evaluate()
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
assertEquals(
|
assertEquals(
|
||||||
"${PROJECT_NAME}_test",
|
"${PROJECT_NAME}_test",
|
||||||
linuxX64Target.compilations.test.compilerOptions.options.moduleName.get(),
|
linuxX64Target.compilations.test.compilerOptions.options.moduleName.get(),
|
||||||
@@ -66,7 +68,7 @@ class KotlinNativeCompilationModuleNameTest {
|
|||||||
|
|
||||||
project.evaluate()
|
project.evaluate()
|
||||||
|
|
||||||
val compilerOptions = project
|
@Suppress("DEPRECATION") val compilerOptions = project
|
||||||
.multiplatformExtension
|
.multiplatformExtension
|
||||||
.metadata()
|
.metadata()
|
||||||
.compilations
|
.compilations
|
||||||
|
|||||||
+1
@@ -92,6 +92,7 @@ class KotlinNativeCompileArgumentsTest {
|
|||||||
val kotlin = project.multiplatformExtension
|
val kotlin = project.multiplatformExtension
|
||||||
val linuxX64Target = kotlin.linuxX64()
|
val linuxX64Target = kotlin.linuxX64()
|
||||||
linuxX64Target.compilations.all {
|
linuxX64Target.compilations.all {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
it.compilerOptions.options.apply {
|
it.compilerOptions.options.apply {
|
||||||
optIn.add("my.OptIn")
|
optIn.add("my.OptIn")
|
||||||
optIn.add("my.other.OptIn")
|
optIn.add("my.other.OptIn")
|
||||||
|
|||||||
+4
@@ -14,6 +14,10 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.external.ExternalKotlinCompilation
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.external.ExternalKotlinTargetDescriptor.TargetFactory
|
import org.jetbrains.kotlin.gradle.plugin.mpp.external.ExternalKotlinTargetDescriptor.TargetFactory
|
||||||
|
|
||||||
class FakeCompilation(delegate: Delegate) : DecoratedExternalKotlinCompilation(delegate) {
|
class FakeCompilation(delegate: Delegate) : DecoratedExternalKotlinCompilation(delegate) {
|
||||||
|
@Deprecated(
|
||||||
|
"To configure compilation compiler options use 'compileTaskProvider':\ncompilation.compileTaskProvider.configure{\n" +
|
||||||
|
" compilerOptions {}\n}"
|
||||||
|
)
|
||||||
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
@Suppress("UNCHECKED_CAST", "DEPRECATION")
|
||||||
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions>
|
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions>
|
||||||
get() = super.compilerOptions as HasCompilerOptions<KotlinJvmCompilerOptions>
|
get() = super.compilerOptions as HasCompilerOptions<KotlinJvmCompilerOptions>
|
||||||
|
|||||||
Reference in New Issue
Block a user