Add method to sync options from one instance to another as convention
^KT-57159 In Progress
This commit is contained in:
committed by
Space Team
parent
4d4e5f4701
commit
6509b0201c
@@ -746,6 +746,21 @@ private fun Printer.generateCompilerOptionsHelper(
|
||||
addAdditionalJvmArgs(helperName)
|
||||
}
|
||||
println("}")
|
||||
|
||||
println()
|
||||
println("internal fun syncOptionsAsConvention(")
|
||||
withIndent {
|
||||
println("from: $type,")
|
||||
println("into: $type,")
|
||||
}
|
||||
println(") {")
|
||||
withIndent {
|
||||
if (parentHelperName != null) println("$parentHelperName.syncOptionsAsConvention(from, into)")
|
||||
for (property in properties) {
|
||||
println("into.${property.name}.convention(from.${property.name})")
|
||||
}
|
||||
}
|
||||
println("}")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+12
@@ -29,4 +29,16 @@ internal object KotlinCommonCompilerOptionsHelper {
|
||||
args.progressiveMode = false
|
||||
args.useK2 = false
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
into.apiVersion.convention(from.apiVersion)
|
||||
into.languageVersion.convention(from.languageVersion)
|
||||
into.optIn.convention(from.optIn)
|
||||
into.progressiveMode.convention(from.progressiveMode)
|
||||
into.useK2.convention(from.useK2)
|
||||
}
|
||||
}
|
||||
|
||||
+10
@@ -24,4 +24,14 @@ internal object KotlinCommonCompilerToolOptionsHelper {
|
||||
args.suppressWarnings = false
|
||||
args.verbose = false
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions,
|
||||
) {
|
||||
into.allWarningsAsErrors.convention(from.allWarningsAsErrors)
|
||||
into.suppressWarnings.convention(from.suppressWarnings)
|
||||
into.verbose.convention(from.verbose)
|
||||
into.freeCompilerArgs.convention(from.freeCompilerArgs)
|
||||
}
|
||||
}
|
||||
|
||||
+21
@@ -47,4 +47,25 @@ internal object KotlinJsCompilerOptionsHelper {
|
||||
args.typedArrays = true
|
||||
args.useEsClasses = false
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
into.friendModulesDisabled.convention(from.friendModulesDisabled)
|
||||
into.main.convention(from.main)
|
||||
into.metaInfo.convention(from.metaInfo)
|
||||
into.moduleKind.convention(from.moduleKind)
|
||||
into.moduleName.convention(from.moduleName)
|
||||
into.noStdlib.convention(from.noStdlib)
|
||||
into.outputFile.convention(from.outputFile)
|
||||
into.sourceMap.convention(from.sourceMap)
|
||||
into.sourceMapEmbedSources.convention(from.sourceMapEmbedSources)
|
||||
into.sourceMapNamesPolicy.convention(from.sourceMapNamesPolicy)
|
||||
into.sourceMapPrefix.convention(from.sourceMapPrefix)
|
||||
into.target.convention(from.target)
|
||||
into.typedArrays.convention(from.typedArrays)
|
||||
into.useEsClasses.convention(from.useEsClasses)
|
||||
}
|
||||
}
|
||||
|
||||
+9
@@ -23,4 +23,13 @@ internal object KotlinJsDceCompilerToolOptionsHelper {
|
||||
args.devMode = false
|
||||
args.outputDirectory = null
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
into.devMode.convention(from.devMode)
|
||||
into.outputDirectory.convention(from.outputDirectory)
|
||||
}
|
||||
}
|
||||
|
||||
+11
@@ -35,4 +35,15 @@ internal object KotlinJvmCompilerOptionsHelper {
|
||||
args.noStdlib = true
|
||||
args.noReflect = true
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
into.javaParameters.convention(from.javaParameters)
|
||||
into.jvmTarget.convention(from.jvmTarget)
|
||||
into.moduleName.convention(from.moduleName)
|
||||
into.noJdk.convention(from.noJdk)
|
||||
}
|
||||
}
|
||||
|
||||
+7
@@ -19,4 +19,11 @@ internal object KotlinMultiplatformCommonCompilerOptionsHelper {
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.fillDefaultValues(args)
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
}
|
||||
}
|
||||
|
||||
+8
@@ -21,4 +21,12 @@ internal object KotlinNativeCompilerOptionsHelper {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.fillDefaultValues(args)
|
||||
args.moduleName = null
|
||||
}
|
||||
|
||||
internal fun syncOptionsAsConvention(
|
||||
from: org.jetbrains.kotlin.gradle.dsl.KotlinNativeCompilerOptions,
|
||||
into: org.jetbrains.kotlin.gradle.dsl.KotlinNativeCompilerOptions,
|
||||
) {
|
||||
org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsHelper.syncOptionsAsConvention(from, into)
|
||||
into.moduleName.convention(from.moduleName)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user