[Gradle] Add compilerOptions() methods to KotlinCompilation implementations
This should help to avoid user mistakes in configuring options when they are trying to use KotlinCompilation. ^KT-61636 Fixed
This commit is contained in:
committed by
Space Team
parent
55a0c86508
commit
38e7bf6afa
+10
@@ -5,7 +5,9 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
|
import org.gradle.api.Action
|
||||||
import org.gradle.api.tasks.TaskProvider
|
import org.gradle.api.tasks.TaskProvider
|
||||||
|
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
|
||||||
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions
|
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||||
@@ -33,5 +35,13 @@ open class KotlinCommonCompilation @Inject internal constructor(compilation: Kot
|
|||||||
get() = target.project.isKotlinGranularMetadataEnabled && !forceCompilationToKotlinMetadata
|
get() = target.project.isKotlinGranularMetadataEnabled && !forceCompilationToKotlinMetadata
|
||||||
|
|
||||||
internal var forceCompilationToKotlinMetadata: Boolean = false
|
internal var forceCompilationToKotlinMetadata: Boolean = false
|
||||||
|
|
||||||
|
fun compilerOptions(configure: KotlinCommonCompilerOptions.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun compilerOptions(configure: Action<KotlinCommonCompilerOptions>) {
|
||||||
|
configure.execute(compilerOptions.options)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+8
@@ -31,6 +31,14 @@ open class KotlinJsCompilation @Inject internal constructor(
|
|||||||
final override val compilerOptions: HasCompilerOptions<KotlinJsCompilerOptions>
|
final override val compilerOptions: HasCompilerOptions<KotlinJsCompilerOptions>
|
||||||
get() = compilation.compilerOptions as HasCompilerOptions<KotlinJsCompilerOptions>
|
get() = compilation.compilerOptions as HasCompilerOptions<KotlinJsCompilerOptions>
|
||||||
|
|
||||||
|
fun compilerOptions(configure: KotlinJsCompilerOptions.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun compilerOptions(configure: Action<KotlinJsCompilerOptions>) {
|
||||||
|
configure.execute(compilerOptions.options)
|
||||||
|
}
|
||||||
|
|
||||||
val binaries: KotlinJsBinaryContainer =
|
val binaries: KotlinJsBinaryContainer =
|
||||||
compilation.target.project.objects.newInstance(
|
compilation.target.project.objects.newInstance(
|
||||||
KotlinJsBinaryContainer::class.java,
|
KotlinJsBinaryContainer::class.java,
|
||||||
|
|||||||
+9
@@ -7,6 +7,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||||
|
|
||||||
import com.android.build.gradle.api.BaseVariant
|
import com.android.build.gradle.api.BaseVariant
|
||||||
|
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
|
||||||
@@ -29,6 +30,14 @@ open class KotlinJvmAndroidCompilation @Inject internal constructor(
|
|||||||
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions> =
|
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions> =
|
||||||
compilation.compilerOptions.castCompilerOptionsType()
|
compilation.compilerOptions.castCompilerOptionsType()
|
||||||
|
|
||||||
|
fun compilerOptions(configure: KotlinJvmCompilerOptions.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
|
|||||||
+9
@@ -6,6 +6,7 @@
|
|||||||
@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
|
||||||
@@ -34,6 +35,14 @@ open class KotlinJvmCompilation @Inject internal constructor(
|
|||||||
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions> =
|
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions> =
|
||||||
compilation.compilerOptions.castCompilerOptionsType()
|
compilation.compilerOptions.castCompilerOptionsType()
|
||||||
|
|
||||||
|
fun compilerOptions(configure: KotlinJvmCompilerOptions.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
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>
|
||||||
|
|||||||
+9
@@ -6,6 +6,7 @@
|
|||||||
@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
|
||||||
@@ -28,6 +29,14 @@ open class KotlinWithJavaCompilation<KotlinOptionsType : KotlinCommonOptions, CO
|
|||||||
override val compilerOptions: HasCompilerOptions<CO> =
|
override val compilerOptions: HasCompilerOptions<CO> =
|
||||||
compilation.compilerOptions as HasCompilerOptions<CO>
|
compilation.compilerOptions as HasCompilerOptions<CO>
|
||||||
|
|
||||||
|
fun compilerOptions(configure: CO.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
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)
|
||||||
|
|
||||||
|
|||||||
+8
@@ -44,6 +44,14 @@ abstract class AbstractKotlinNativeCompilation internal constructor(
|
|||||||
override val compilerOptions: HasCompilerOptions<KotlinNativeCompilerOptions>
|
override val compilerOptions: HasCompilerOptions<KotlinNativeCompilerOptions>
|
||||||
get() = compilation.compilerOptions as HasCompilerOptions<KotlinNativeCompilerOptions>
|
get() = compilation.compilerOptions as HasCompilerOptions<KotlinNativeCompilerOptions>
|
||||||
|
|
||||||
|
fun compilerOptions(configure: KotlinNativeCompilerOptions.() -> Unit) {
|
||||||
|
compilerOptions.configure(configure)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun compilerOptions(configure: Action<KotlinNativeCompilerOptions>) {
|
||||||
|
configure.execute(compilerOptions.options)
|
||||||
|
}
|
||||||
|
|
||||||
internal val useGenericPluginArtifact: Boolean
|
internal val useGenericPluginArtifact: Boolean
|
||||||
get() = project.nativeUseEmbeddableCompilerJar
|
get() = project.nativeUseEmbeddableCompilerJar
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user