Align new compiler options names with api naming

Use Kotlin*CompilerOptions or Kotlin*CompilerToolOptions naming approach.

^KT-54306 Fixed
This commit is contained in:
Yahor Berdnikau
2022-10-10 23:03:06 +02:00
committed by Space Team
parent 31b3d8f859
commit 023b9bf284
68 changed files with 291 additions and 330 deletions
@@ -136,7 +136,7 @@ private fun generateKotlinCommonToolOptions(
apiSrcDir: File,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val commonInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerCommonToolOptions")
val commonInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinCommonCompilerToolOptions")
val commonOptions = gradleOptions<CommonToolArguments>()
val additionalOptions = gradleOptions<AdditionalGradleProperties>()
withPrinterToFile(fileFromFqName(apiSrcDir, commonInterfaceFqName)) {
@@ -188,7 +188,7 @@ private fun generateKotlinCommonOptions(
commonToolGeneratedOptions: GeneratedOptions,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val commonCompilerInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerCommonOptions")
val commonCompilerInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinCommonCompilerOptions")
val commonCompilerOptions = gradleOptions<CommonCompilerArguments>()
withPrinterToFile(fileFromFqName(apiSrcDir, commonCompilerInterfaceFqName)) {
generateInterface(
@@ -241,7 +241,7 @@ private fun generateKotlinJvmOptions(
commonCompilerGeneratedOptions: GeneratedOptions,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val jvmInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerJvmOptions")
val jvmInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinJvmCompilerOptions")
val jvmOptions = gradleOptions<K2JVMCompilerArguments>()
withPrinterToFile(fileFromFqName(apiSrcDir, jvmInterfaceFqName)) {
generateInterface(
@@ -292,7 +292,7 @@ private fun generateKotlinJsOptions(
commonCompilerOptions: GeneratedOptions,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val jsInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerJsOptions")
val jsInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinJsCompilerOptions")
val jsOptions = gradleOptions<K2JSCompilerArguments>()
withPrinterToFile(fileFromFqName(apiSrcDir, jsInterfaceFqName)) {
generateInterface(
@@ -343,7 +343,7 @@ private fun generateJsDceOptions(
commonToolOptions: GeneratedOptions,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val jsDceInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerJsDceOptions")
val jsDceInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinJsDceCompilerToolOptions")
val jsDceOptions = gradleOptions<K2JSDceArguments>()
withPrinterToFile(fileFromFqName(apiSrcDir, jsDceInterfaceFqName)) {
generateInterface(
@@ -394,7 +394,7 @@ private fun generateMultiplatformCommonOptions(
commonCompilerOptions: GeneratedOptions,
withPrinterToFile: (targetFile: File, Printer.() -> Unit) -> Unit
): GeneratedOptions {
val multiplatformCommonInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.CompilerMultiplatformCommonOptions")
val multiplatformCommonInterfaceFqName = FqName("$OPTIONS_PACKAGE_PREFIX.KotlinMultiplatformCommonCompilerOptions")
val multiplatformCommonOptions = gradleOptions<K2MetadataCompilerArguments>()
withPrinterToFile(fileFromFqName(apiSrcDir, multiplatformCommonInterfaceFqName)) {
generateInterface(
@@ -565,7 +565,7 @@ private fun Printer.generateImpl(
private fun Printer.addAdditionalJvmArgs(implType: FqName) {
// Adding required 'noStdlib' and 'noReflect' compiler arguments for JVM compilation
// Otherwise compilation via build tools will fail
if (implType.shortName().toString() == "CompilerJvmOptions$IMPLEMENTATION_SUFFIX") {
if (implType.shortName().toString() == "KotlinJvmCompilerOptions$IMPLEMENTATION_SUFFIX") {
println()
println("// Arguments with always default values when used from build tools")
println("args.noStdlib = true")
@@ -1,46 +1,3 @@
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions : org/jetbrains/kotlin/gradle/dsl/CompilerCommonToolOptions {
public abstract fun getApiVersion ()Lorg/gradle/api/provider/Property;
public abstract fun getLanguageVersion ()Lorg/gradle/api/provider/Property;
public abstract fun getUseK2 ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerCommonToolOptions {
public abstract fun getAllWarningsAsErrors ()Lorg/gradle/api/provider/Property;
public abstract fun getFreeCompilerArgs ()Lorg/gradle/api/provider/ListProperty;
public abstract fun getSuppressWarnings ()Lorg/gradle/api/provider/Property;
public abstract fun getVerbose ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerJsDceOptions : org/jetbrains/kotlin/gradle/dsl/CompilerCommonToolOptions {
public abstract fun getDevMode ()Lorg/gradle/api/provider/Property;
public abstract fun getOutputDirectory ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerJsOptions : org/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions {
public abstract fun getFriendModulesDisabled ()Lorg/gradle/api/provider/Property;
public abstract fun getMain ()Lorg/gradle/api/provider/Property;
public abstract fun getMetaInfo ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleKind ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleName ()Lorg/gradle/api/provider/Property;
public abstract fun getNoStdlib ()Lorg/gradle/api/provider/Property;
public abstract fun getOutputFile ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMap ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMapEmbedSources ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMapPrefix ()Lorg/gradle/api/provider/Property;
public abstract fun getTarget ()Lorg/gradle/api/provider/Property;
public abstract fun getTypedArrays ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerJvmOptions : org/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions {
public abstract fun getJavaParameters ()Lorg/gradle/api/provider/Property;
public abstract fun getJvmTarget ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleName ()Lorg/gradle/api/provider/Property;
public abstract fun getNoJdk ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/CompilerMultiplatformCommonOptions : org/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions {
}
public final class org/jetbrains/kotlin/gradle/dsl/ExplicitApiMode : java/lang/Enum {
public static final field Disabled Lorg/jetbrains/kotlin/gradle/dsl/ExplicitApiMode;
public static final field Strict Lorg/jetbrains/kotlin/gradle/dsl/ExplicitApiMode;
@@ -190,10 +147,23 @@ public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinArtifactsE
public abstract fun getNative ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinNativeArtifactDSL;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerToolOptions {
public abstract fun getApiVersion ()Lorg/gradle/api/provider/Property;
public abstract fun getLanguageVersion ()Lorg/gradle/api/provider/Property;
public abstract fun getUseK2 ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerToolOptions {
public abstract fun getAllWarningsAsErrors ()Lorg/gradle/api/provider/Property;
public abstract fun getFreeCompilerArgs ()Lorg/gradle/api/provider/ListProperty;
public abstract fun getSuppressWarnings ()Lorg/gradle/api/provider/Property;
public abstract fun getVerbose ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonToolOptions {
public abstract fun getApiVersion ()Ljava/lang/String;
public abstract fun getLanguageVersion ()Ljava/lang/String;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions;
public abstract fun getUseK2 ()Z
public abstract fun setApiVersion (Ljava/lang/String;)V
public abstract fun setLanguageVersion (Ljava/lang/String;)V
@@ -220,7 +190,7 @@ public final class org/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions$DefaultIm
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinCommonToolOptions {
public abstract fun getAllWarningsAsErrors ()Z
public abstract fun getFreeCompilerArgs ()Ljava/util/List;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerCommonToolOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerToolOptions;
public abstract fun getSuppressWarnings ()Z
public abstract fun getVerbose ()Z
public abstract fun setAllWarningsAsErrors (Z)V
@@ -253,9 +223,29 @@ public final class org/jetbrains/kotlin/gradle/dsl/KotlinCompile$DefaultImpls {
public static fun kotlinOptions (Lorg/jetbrains/kotlin/gradle/dsl/KotlinCompile;Lorg/gradle/api/Action;)V
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJsCompilerOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions {
public abstract fun getFriendModulesDisabled ()Lorg/gradle/api/provider/Property;
public abstract fun getMain ()Lorg/gradle/api/provider/Property;
public abstract fun getMetaInfo ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleKind ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleName ()Lorg/gradle/api/provider/Property;
public abstract fun getNoStdlib ()Lorg/gradle/api/provider/Property;
public abstract fun getOutputFile ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMap ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMapEmbedSources ()Lorg/gradle/api/provider/Property;
public abstract fun getSourceMapPrefix ()Lorg/gradle/api/provider/Property;
public abstract fun getTarget ()Lorg/gradle/api/provider/Property;
public abstract fun getTypedArrays ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJsDceCompilerToolOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerToolOptions {
public abstract fun getDevMode ()Lorg/gradle/api/provider/Property;
public abstract fun getOutputDirectory ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJsDceOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonToolOptions {
public abstract fun getDevMode ()Z
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerJsDceOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinJsDceCompilerToolOptions;
public abstract fun getOutputDirectory ()Ljava/lang/String;
public abstract fun setDevMode (Z)V
public abstract fun setOutputDirectory (Ljava/lang/String;)V
@@ -283,7 +273,7 @@ public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJsOptions
public abstract fun getModuleKind ()Ljava/lang/String;
public abstract fun getModuleName ()Ljava/lang/String;
public abstract fun getNoStdlib ()Z
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerJsOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinJsCompilerOptions;
public abstract fun getOutputFile ()Ljava/lang/String;
public abstract fun getSourceMap ()Z
public abstract fun getSourceMapEmbedSources ()Ljava/lang/String;
@@ -345,12 +335,19 @@ public final class org/jetbrains/kotlin/gradle/dsl/KotlinJsOptions$DefaultImpls
public static fun setVerbose (Lorg/jetbrains/kotlin/gradle/dsl/KotlinJsOptions;Z)V
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJvmCompilerOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions {
public abstract fun getJavaParameters ()Lorg/gradle/api/provider/Property;
public abstract fun getJvmTarget ()Lorg/gradle/api/provider/Property;
public abstract fun getModuleName ()Lorg/gradle/api/provider/Property;
public abstract fun getNoJdk ()Lorg/gradle/api/provider/Property;
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinJvmOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions {
public abstract fun getJavaParameters ()Z
public abstract fun getJvmTarget ()Ljava/lang/String;
public abstract fun getModuleName ()Ljava/lang/String;
public abstract fun getNoJdk ()Z
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerJvmOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinJvmCompilerOptions;
public abstract fun setJavaParameters (Z)V
public abstract fun setJvmTarget (Ljava/lang/String;)V
public abstract fun setModuleName (Ljava/lang/String;)V
@@ -382,8 +379,11 @@ public final class org/jetbrains/kotlin/gradle/dsl/KotlinJvmOptions$DefaultImpls
public static fun setVerbose (Lorg/jetbrains/kotlin/gradle/dsl/KotlinJvmOptions;Z)V
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinMultiplatformCommonCompilerOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions {
}
public abstract interface class org/jetbrains/kotlin/gradle/dsl/KotlinMultiplatformCommonOptions : org/jetbrains/kotlin/gradle/dsl/KotlinCommonOptions {
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerMultiplatformCommonOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinMultiplatformCommonCompilerOptions;
}
public final class org/jetbrains/kotlin/gradle/dsl/KotlinMultiplatformCommonOptions$DefaultImpls {
@@ -601,7 +601,7 @@ public final class org/jetbrains/kotlin/gradle/plugin/FilesSubpluginOption : org
public abstract interface class org/jetbrains/kotlin/gradle/plugin/HasCompilerOptions {
public abstract fun configure (Lkotlin/jvm/functions/Function1;)V
public abstract fun configure (Lorg/gradle/api/Action;)V
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions;
public abstract fun getOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions;
}
public final class org/jetbrains/kotlin/gradle/plugin/HasCompilerOptions$DefaultImpls {
@@ -878,7 +878,7 @@ public final class org/jetbrains/kotlin/gradle/plugin/KotlinJsCompilerTypeKt {
public abstract interface class org/jetbrains/kotlin/gradle/plugin/KotlinJvmFactory {
public abstract fun addCompilerPluginDependency (Lorg/gradle/api/provider/Provider;)V
public abstract fun createCompilerJvmOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerJvmOptions;
public abstract fun createCompilerJvmOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinJvmCompilerOptions;
public abstract fun createKotlinJvmOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinJvmOptions;
public abstract fun getCompilerPlugins ()Lorg/gradle/api/file/FileCollection;
public abstract fun getKaptExtension ()Lorg/jetbrains/kotlin/gradle/dsl/KaptExtensionConfig;
@@ -1394,7 +1394,7 @@ public final class org/jetbrains/kotlin/gradle/tasks/KaptGenerateStubs$DefaultIm
public abstract interface class org/jetbrains/kotlin/gradle/tasks/KotlinCompilationTask : org/gradle/api/Task {
public abstract fun compilerOptions (Lkotlin/jvm/functions/Function1;)V
public abstract fun compilerOptions (Lorg/gradle/api/Action;)V
public abstract fun getCompilerOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerCommonOptions;
public abstract fun getCompilerOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerOptions;
}
public final class org/jetbrains/kotlin/gradle/tasks/KotlinCompilationTask$DefaultImpls {
@@ -1458,7 +1458,7 @@ public final class org/jetbrains/kotlin/gradle/tasks/KotlinJvmCompile$DefaultImp
}
public abstract interface class org/jetbrains/kotlin/gradle/tasks/KotlinToolTask : org/gradle/api/Task {
public abstract fun getToolOptions ()Lorg/jetbrains/kotlin/gradle/dsl/CompilerCommonToolOptions;
public abstract fun getToolOptions ()Lorg/jetbrains/kotlin/gradle/dsl/KotlinCommonCompilerToolOptions;
public abstract fun toolOptions (Lkotlin/jvm/functions/Function1;)V
public abstract fun toolOptions (Lorg/gradle/api/Action;)V
}
@@ -28,7 +28,7 @@ interface KotlinNativeArtifact : KotlinArtifact {
replaceWith = ReplaceWith("toolOptionsConfigure")
)
val kotlinOptionsFn: KotlinCommonToolOptions.() -> Unit
val toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit
val toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit
val binaryOptions: Map<String, String>
}
@@ -70,7 +70,7 @@ interface KotlinNativeArtifactConfig : KotlinArtifactConfig {
replaceWith = ReplaceWith("toolOptions(fn)")
)
fun kotlinOptions(fn: Action<KotlinCommonToolOptions>)
fun toolOptions(configure: Action<CompilerCommonToolOptions>)
fun toolOptions(configure: Action<KotlinCommonCompilerToolOptions>)
fun binaryOption(name: String, value: String)
}
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerCommonOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions {
interface KotlinCommonCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions {
/**
* Allow using declarations only from the specified version of bundled libraries
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerCommonToolOptions {
interface KotlinCommonCompilerToolOptions {
/**
* Report an error if there are any warnings
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerCommonOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinCommonCompilerOptions instead", level = DeprecationLevel.WARNING)
interface KotlinCommonOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions {
override val options: org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
private val kotlin.String?.apiVersionCompilerOption get() = if (this != null) org.jetbrains.kotlin.gradle.dsl.KotlinVersion.fromVersion(this) else null
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerCommonToolOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinCommonCompilerToolOptions instead", level = DeprecationLevel.WARNING)
interface KotlinCommonToolOptions {
val options: org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
val options: org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions
/**
* Report an error if there are any warnings
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerJsOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions {
interface KotlinJsCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
/**
* Disable internal declaration export
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerJsDceOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions {
interface KotlinJsDceCompilerToolOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions {
/**
* Development mode: don't strip out any code, just copy dependencies
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerJsDceOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinJsDceCompilerToolOptions instead", level = DeprecationLevel.WARNING)
interface KotlinJsDceOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions {
override val options: org.jetbrains.kotlin.gradle.dsl.CompilerJsDceOptions
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions
/**
* Development mode: don't strip out any code, just copy dependencies
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerJsOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinJsCompilerOptions instead", level = DeprecationLevel.WARNING)
interface KotlinJsOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
override val options: org.jetbrains.kotlin.gradle.dsl.CompilerJsOptions
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
/**
* Disable internal declaration export
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerJvmOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions {
interface KotlinJvmCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
/**
* Generate metadata for Java 1.8 reflection on method parameters
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerJvmOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinJvmCompilerOptions instead", level = DeprecationLevel.WARNING)
interface KotlinJvmOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
override val options: org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
/**
* Generate metadata for Java 1.8 reflection on method parameters
@@ -5,5 +5,5 @@
package org.jetbrains.kotlin.gradle.dsl
interface CompilerMultiplatformCommonOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions {
interface KotlinMultiplatformCommonCompilerOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
}
@@ -5,7 +5,7 @@
package org.jetbrains.kotlin.gradle.dsl
@Deprecated("Use CompilerMultiplatformCommonOptions instead", level = DeprecationLevel.WARNING)
@Deprecated("Use KotlinMultiplatformCommonCompilerOptions instead", level = DeprecationLevel.WARNING)
interface KotlinMultiplatformCommonOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions {
override val options: org.jetbrains.kotlin.gradle.dsl.CompilerMultiplatformCommonOptions
override val options: org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions
}
@@ -6,9 +6,9 @@
package org.jetbrains.kotlin.gradle.plugin
import org.gradle.api.Action
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
interface HasCompilerOptions<out CO : CompilerCommonOptions> {
interface HasCompilerOptions<out CO : KotlinCommonCompilerOptions> {
val options: CO
fun configure(configuration: CO.() -> Unit) {
@@ -9,7 +9,7 @@ package org.jetbrains.kotlin.gradle.plugin
import org.gradle.api.file.FileCollection
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.KaptExtensionConfig
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptionsDeprecated
import org.jetbrains.kotlin.gradle.dsl.KotlinTopLevelExtensionConfig
@@ -36,7 +36,7 @@ interface KotlinJvmFactory {
)
fun createKotlinJvmOptions(): KotlinJvmOptionsDeprecated
fun createCompilerJvmOptions(): CompilerJvmOptions
fun createCompilerJvmOptions(): KotlinJvmCompilerOptions
/** Creates a Kotlin compile task. */
fun registerKotlinJvmCompileTask(taskName: String): TaskProvider<out KotlinJvmCompile>
@@ -10,7 +10,6 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
import org.gradle.api.Project
import org.gradle.api.file.FileCollection
import org.gradle.api.file.SourceDirectorySet
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptionsDeprecated
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput
@@ -8,9 +8,9 @@ package org.jetbrains.kotlin.gradle.tasks
import org.gradle.api.Action
import org.gradle.api.Task
import org.gradle.api.tasks.Nested
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
interface KotlinCompilationTask<out CO : CompilerCommonOptions> : Task {
interface KotlinCompilationTask<out CO : KotlinCommonCompilerOptions> : Task {
@get:Nested
val compilerOptions: CO
@@ -79,7 +79,7 @@ interface BaseKotlinCompile : KotlinCompileTool {
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION")
interface KotlinJvmCompile : BaseKotlinCompile,
KotlinCompileDeprecated<KotlinJvmOptionsDeprecated>,
KotlinCompilationTask<CompilerJvmOptions> {
KotlinCompilationTask<KotlinJvmCompilerOptions> {
// JVM specific
@get:Internal("Takes part in compiler args.")
@@ -8,9 +8,9 @@ package org.jetbrains.kotlin.gradle.tasks
import org.gradle.api.Action
import org.gradle.api.Task
import org.gradle.api.tasks.Nested
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions
interface KotlinToolTask<out TO : CompilerCommonToolOptions> : Task {
interface KotlinToolTask<out TO : KotlinCommonCompilerToolOptions> : Task {
@get:Nested
val toolOptions: TO
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerCommonOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinCommonCompilerOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions {
override val apiVersion: org.gradle.api.provider.Property<org.jetbrains.kotlin.gradle.dsl.KotlinVersion> =
objectFactory.property(org.jetbrains.kotlin.gradle.dsl.KotlinVersion::class.java)
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerCommonToolOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinCommonCompilerToolOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions {
override val allWarningsAsErrors: org.gradle.api.provider.Property<kotlin.Boolean> =
objectFactory.property(kotlin.Boolean::class.java).convention(false)
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerJsOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinJsCompilerOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.CompilerJsOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions {
override val friendModulesDisabled: org.gradle.api.provider.Property<kotlin.Boolean> =
objectFactory.property(kotlin.Boolean::class.java).convention(false)
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerJsDceOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinJsDceCompilerToolOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.CompilerJsDceOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions {
override val devMode: org.gradle.api.provider.Property<kotlin.Boolean> =
objectFactory.property(kotlin.Boolean::class.java).convention(false)
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerJvmOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinJvmCompilerOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions {
override val javaParameters: org.gradle.api.provider.Property<kotlin.Boolean> =
objectFactory.property(kotlin.Boolean::class.java).convention(false)
@@ -5,9 +5,9 @@
package org.jetbrains.kotlin.gradle.dsl
internal abstract class CompilerMultiplatformCommonOptionsDefault @javax.inject.Inject constructor(
internal abstract class KotlinMultiplatformCommonCompilerOptionsDefault @javax.inject.Inject constructor(
objectFactory: org.gradle.api.model.ObjectFactory
) : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.CompilerMultiplatformCommonOptions {
) : org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsDefault(objectFactory), org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonCompilerOptions {
internal fun fillCompilerArguments(args: org.jetbrains.kotlin.cli.common.arguments.K2MetadataCompilerArguments) {
super.fillCompilerArguments(args)
@@ -164,27 +164,27 @@ abstract class KotlinSingleTargetExtension<TARGET : KotlinTarget>(project: Proje
abstract class KotlinSingleJavaTargetExtension(project: Project) : KotlinSingleTargetExtension<KotlinWithJavaTarget<*, *>>(project)
abstract class KotlinJvmProjectExtension(project: Project) : KotlinSingleJavaTargetExtension(project) {
override lateinit var target: KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions>
override lateinit var target: KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions>
internal set
open fun target(body: KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions>.() -> Unit) = target.run(body)
open fun target(body: KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions>.() -> Unit) = target.run(body)
}
abstract class Kotlin2JsProjectExtension(project: Project) : KotlinSingleJavaTargetExtension(project) {
private lateinit var _target: KotlinWithJavaTarget<KotlinJsOptions, CompilerJsOptions>
private lateinit var _target: KotlinWithJavaTarget<KotlinJsOptions, KotlinJsCompilerOptions>
override val target: KotlinWithJavaTarget<KotlinJsOptions, CompilerJsOptions>
override val target: KotlinWithJavaTarget<KotlinJsOptions, KotlinJsCompilerOptions>
get() {
if (!::_target.isInitialized) throw IllegalStateException("Extension target is not initialized!")
return _target
}
internal fun setTarget(target: KotlinWithJavaTarget<KotlinJsOptions, CompilerJsOptions>) {
internal fun setTarget(target: KotlinWithJavaTarget<KotlinJsOptions, KotlinJsCompilerOptions>) {
_target = target
}
open fun target(body: KotlinWithJavaTarget<KotlinJsOptions, CompilerJsOptions>.() -> Unit) = target.run(body)
open fun target(body: KotlinWithJavaTarget<KotlinJsOptions, KotlinJsCompilerOptions>.() -> Unit) = target.run(body)
}
abstract class KotlinJsProjectExtension(project: Project) :
@@ -381,11 +381,11 @@ abstract class KotlinJsProjectExtension(project: Project) :
}
abstract class KotlinCommonProjectExtension(project: Project) : KotlinSingleJavaTargetExtension(project) {
override lateinit var target: KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, CompilerMultiplatformCommonOptions>
override lateinit var target: KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, KotlinMultiplatformCommonCompilerOptions>
internal set
open fun target(
body: KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, CompilerMultiplatformCommonOptions>.() -> Unit
body: KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, KotlinMultiplatformCommonCompilerOptions>.() -> Unit
) = target.run(body)
}
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.gradle.internal
import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments
import org.jetbrains.kotlin.cli.common.arguments.CommonToolArguments
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptionsDefault
import org.jetbrains.kotlin.gradle.logging.kotlinDebug
import org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile
import org.jetbrains.kotlin.gradle.tasks.KotlinCompileArgumentsProvider
@@ -77,7 +77,7 @@ internal open class KotlinJvmCompilerArgumentsContributor(
args: K2JVMCompilerArguments,
flags: Collection<CompilerArgumentsConfigurationFlag>
) {
(compilerOptions as CompilerJvmOptionsDefault).fillDefaultValues(args)
(compilerOptions as KotlinJvmCompilerOptionsDefault).fillDefaultValues(args)
super.contributeArguments(args, flags)
@@ -25,7 +25,7 @@ import org.gradle.work.Incremental
import org.gradle.work.NormalizeLineEndings
import org.gradle.workers.WorkerExecutor
import org.jetbrains.kotlin.cli.common.arguments.K2JVMCompilerArguments
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptionsDefault
import org.jetbrains.kotlin.gradle.report.BuildReportMode
import org.jetbrains.kotlin.gradle.tasks.KaptGenerateStubs
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
@@ -39,7 +39,7 @@ abstract class KaptGenerateStubsTask @Inject constructor(
workerExecutor: WorkerExecutor,
objectFactory: ObjectFactory
) : KotlinCompile(
objectFactory.newInstance(CompilerJvmOptionsDefault::class.java),
objectFactory.newInstance(KotlinJvmCompilerOptionsDefault::class.java),
workerExecutor,
objectFactory
), KaptGenerateStubs {
@@ -110,7 +110,7 @@ abstract class KaptGenerateStubsTask @Inject constructor(
// Also use KotlinOptions configuration that was directly set to this task
// as 'compileKotlinArgumentsContributor' has KotlinOptions from linked KotlinCompile task
(compilerOptions as CompilerJvmOptionsDefault).fillCompilerArguments(args)
(compilerOptions as KotlinJvmCompilerOptionsDefault).fillCompilerArguments(args)
// Copied from KotlinCompile
if (reportingSettings().buildReportMode == BuildReportMode.VERBOSE) {
@@ -10,7 +10,6 @@ import org.gradle.api.file.FileCollection
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.internal.KaptGenerateStubsTask
import org.jetbrains.kotlin.gradle.internal.KaptWithoutKotlincTask
import org.jetbrains.kotlin.gradle.tasks.*
@@ -42,15 +41,15 @@ abstract class KotlinBaseApiPlugin : DefaultKotlinBasePlugin(), KotlinJvmFactory
return myProject.configurations.getByName(PLUGIN_CLASSPATH_CONFIGURATION_NAME)
}
override fun createCompilerJvmOptions(): CompilerJvmOptions {
return myProject.objects.newInstance(CompilerJvmOptionsDefault::class.java)
override fun createCompilerJvmOptions(): KotlinJvmCompilerOptions {
return myProject.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
@Suppress("DEPRECATION")
@Deprecated("Replaced by compilerJvmOptions", replaceWith = ReplaceWith("createCompilerJvmOptions()"))
override fun createKotlinJvmOptions(): KotlinJvmOptions {
return object : KotlinJvmOptions {
override val options: CompilerJvmOptions = createCompilerJvmOptions()
override val options: KotlinJvmCompilerOptions = createCompilerJvmOptions()
}
}
@@ -179,7 +179,7 @@ internal class Kotlin2JvmSourceSetProcessor(
return tasksProvider.registerKotlinJVMTask(
project,
taskName,
kotlinCompilation.compilerOptions.options as CompilerJvmOptions,
kotlinCompilation.compilerOptions.options as KotlinJvmCompilerOptions,
configAction
)
}
@@ -241,7 +241,7 @@ internal class Kotlin2JsSourceSetProcessor(
return tasksProvider.registerKotlinJSTask(
project,
taskName,
kotlinCompilation.compilerOptions.options as CompilerJsOptions,
kotlinCompilation.compilerOptions.options as KotlinJsCompilerOptions,
configAction
)
}
@@ -278,7 +278,7 @@ internal class KotlinJsIrSourceSetProcessor(
return tasksProvider.registerKotlinJSTask(
project,
taskName,
kotlinCompilation.compilerOptions.options as CompilerJsOptions,
kotlinCompilation.compilerOptions.options as KotlinJsCompilerOptions,
configAction
)
}
@@ -340,7 +340,7 @@ internal class KotlinCommonSourceSetProcessor(
return tasksProvider.registerKotlinCommonTask(
project,
taskName,
kotlinCompilation.compilerOptions.options as CompilerMultiplatformCommonOptions,
kotlinCompilation.compilerOptions.options as KotlinMultiplatformCommonCompilerOptions,
configAction
)
}
@@ -594,17 +594,17 @@ internal open class KotlinPlugin(
KotlinPlatformType.jvm,
targetName,
{
object : HasCompilerOptions<CompilerJvmOptions> {
override val options: CompilerJvmOptions =
project.objects.newInstance(CompilerJvmOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJvmCompilerOptions> {
override val options: KotlinJvmCompilerOptions =
project.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
},
{ compilerOptions: CompilerJvmOptions ->
{ compilerOptions: KotlinJvmCompilerOptions ->
object : KotlinJvmOptions {
override val options: CompilerJvmOptions get() = compilerOptions
override val options: KotlinJvmCompilerOptions get() = compilerOptions
}
}
) as KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions>)
) as KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions>)
.apply {
disambiguationClassifier = null // don't add anything to the task names
}
@@ -646,18 +646,18 @@ internal open class KotlinCommonPlugin(
KotlinPlatformType.common,
targetName,
{
object : HasCompilerOptions<CompilerMultiplatformCommonOptions> {
override val options: CompilerMultiplatformCommonOptions =
project.objects.newInstance(CompilerMultiplatformCommonOptionsDefault::class.java)
object : HasCompilerOptions<KotlinMultiplatformCommonCompilerOptions> {
override val options: KotlinMultiplatformCommonCompilerOptions =
project.objects.newInstance(KotlinMultiplatformCommonCompilerOptionsDefault::class.java)
}
},
{ compilerOptions: CompilerMultiplatformCommonOptions ->
{ compilerOptions: KotlinMultiplatformCommonCompilerOptions ->
object : KotlinMultiplatformCommonOptions {
override val options: CompilerMultiplatformCommonOptions
override val options: KotlinMultiplatformCommonCompilerOptions
get() = compilerOptions
}
}
) as KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, CompilerMultiplatformCommonOptions>
) as KotlinWithJavaTarget<KotlinMultiplatformCommonOptions, KotlinMultiplatformCommonCompilerOptions>
(project.kotlinExtension as KotlinCommonProjectExtension).target = target
super.apply(project)
@@ -690,18 +690,18 @@ internal open class Kotlin2JsPlugin(
KotlinPlatformType.js,
targetName,
{
object : HasCompilerOptions<CompilerJsOptions> {
override val options: CompilerJsOptions =
project.objects.newInstance(CompilerJsOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJsCompilerOptions> {
override val options: KotlinJsCompilerOptions =
project.objects.newInstance(KotlinJsCompilerOptionsDefault::class.java)
}
},
{ compilerOptions: CompilerJsOptions ->
{ compilerOptions: KotlinJsCompilerOptions ->
object : KotlinJsOptions {
override val options: CompilerJsOptions
override val options: KotlinJsCompilerOptions
get() = compilerOptions
}
}
) as KotlinWithJavaTarget<KotlinJsOptions, CompilerJsOptions>
) as KotlinWithJavaTarget<KotlinJsOptions, KotlinJsCompilerOptions>
(project.kotlinExtension as Kotlin2JsProjectExtension).setTarget(target)
super.apply(project)
@@ -68,7 +68,7 @@ interface CompilationDetailsWithRuntime<T : KotlinCommonOptions> : CompilationDe
internal val CompilationDetails<*>.associateCompilationsClosure: Iterable<CompilationDetails<*>>
get() = closure { it.associateCompilations }
open class DefaultCompilationDetails<T : KotlinCommonOptions, CO : CompilerCommonOptions>(
open class DefaultCompilationDetails<T : KotlinCommonOptions, CO : KotlinCommonCompilerOptions>(
final override val target: KotlinTarget,
final override val compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
@@ -316,7 +316,7 @@ open class DefaultCompilationDetails<T : KotlinCommonOptions, CO : CompilerCommo
}
}
open class DefaultCompilationDetailsWithRuntime<T : KotlinCommonOptions, CO : CompilerCommonOptions>(
open class DefaultCompilationDetailsWithRuntime<T : KotlinCommonOptions, CO : KotlinCommonCompilerOptions>(
target: KotlinTarget,
compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
@@ -339,10 +339,10 @@ open class NativeCompilationDetails(
compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
@Suppress("DEPRECATION")
createCompilerOptions: DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>.() -> HasCompilerOptions<CompilerCommonOptions>,
createCompilerOptions: DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>.() -> HasCompilerOptions<KotlinCommonCompilerOptions>,
@Suppress("DEPRECATION")
createKotlinOptions: DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>.() -> KotlinCommonOptions
) : DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>(
createKotlinOptions: DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>.() -> KotlinCommonOptions
) : DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>(
target,
compilationPurpose,
defaultSourceSet,
@@ -379,10 +379,10 @@ internal open class SharedNativeCompilationDetails(
compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
@Suppress("DEPRECATION")
createCompilerOptions: DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>.() -> HasCompilerOptions<CompilerCommonOptions>,
createCompilerOptions: DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>.() -> HasCompilerOptions<KotlinCommonCompilerOptions>,
@Suppress("DEPRECATION")
createKotlinOptions: DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>.() -> KotlinCommonOptions
) : DefaultCompilationDetails<KotlinCommonOptions, CompilerCommonOptions>(
createKotlinOptions: DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>.() -> KotlinCommonOptions
) : DefaultCompilationDetails<KotlinCommonOptions, KotlinCommonCompilerOptions>(
target,
compilationPurpose,
defaultSourceSet,
@@ -478,7 +478,7 @@ internal open class VariantMappedCompilationDetailsWithRuntime<T : KotlinCommonO
get() = GradleKpmDependencyFilesHolder.ofVariantRuntimeDependencies(variant)
}
internal class WithJavaCompilationDetails<T : KotlinCommonOptions, CO : CompilerCommonOptions>(
internal class WithJavaCompilationDetails<T : KotlinCommonOptions, CO : KotlinCommonCompilerOptions>(
target: KotlinTarget,
compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
@@ -520,19 +520,19 @@ class AndroidCompilationDetails(
val androidVariant: BaseVariant,
/** Workaround mutual creation order: a compilation is not added to the target's compilations collection until some point, pass it here */
private val getCompilationInstance: () -> KotlinJvmAndroidCompilation
) : DefaultCompilationDetailsWithRuntime<KotlinJvmOptions, CompilerJvmOptions>(
) : DefaultCompilationDetailsWithRuntime<KotlinJvmOptions, KotlinJvmCompilerOptions>(
target,
compilationPurpose,
defaultSourceSet,
{
object : HasCompilerOptions<CompilerJvmOptions> {
override val options: CompilerJvmOptions =
target.project.objects.newInstance(CompilerJvmOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJvmCompilerOptions> {
override val options: KotlinJvmCompilerOptions =
target.project.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
},
{
object : KotlinJvmOptions {
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
get() = compilerOptions.options
}
}
@@ -576,19 +576,19 @@ internal class MetadataCompilationDetails(
target: KotlinTarget,
name: String,
defaultSourceSet: KotlinSourceSet,
) : DefaultCompilationDetails<KotlinMultiplatformCommonOptions, CompilerMultiplatformCommonOptions>(
) : DefaultCompilationDetails<KotlinMultiplatformCommonOptions, KotlinMultiplatformCommonCompilerOptions>(
target,
name,
defaultSourceSet,
{
object : HasCompilerOptions<CompilerMultiplatformCommonOptions> {
override val options: CompilerMultiplatformCommonOptions =
target.project.objects.newInstance(CompilerMultiplatformCommonOptionsDefault::class.java)
object : HasCompilerOptions<KotlinMultiplatformCommonCompilerOptions> {
override val options: KotlinMultiplatformCommonCompilerOptions =
target.project.objects.newInstance(KotlinMultiplatformCommonCompilerOptionsDefault::class.java)
}
},
{
object : KotlinMultiplatformCommonOptions {
override val options: CompilerMultiplatformCommonOptions
override val options: KotlinMultiplatformCommonCompilerOptions
get() = compilerOptions.options
}
}
@@ -606,19 +606,19 @@ internal open class JsCompilationDetails(
target: KotlinTarget,
compilationPurpose: String,
defaultSourceSet: KotlinSourceSet,
) : DefaultCompilationDetailsWithRuntime<KotlinJsOptions, CompilerJsOptions>(
) : DefaultCompilationDetailsWithRuntime<KotlinJsOptions, KotlinJsCompilerOptions>(
target,
compilationPurpose,
defaultSourceSet,
{
object : HasCompilerOptions<CompilerJsOptions> {
override val options: CompilerJsOptions =
target.project.objects.newInstance(CompilerJsOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJsCompilerOptions> {
override val options: KotlinJsCompilerOptions =
target.project.objects.newInstance(KotlinJsCompilerOptionsDefault::class.java)
}
},
{
object : KotlinJsOptions {
override val options: CompilerJsOptions
override val options: KotlinJsCompilerOptions
get() = compilerOptions.options
}
}
@@ -6,9 +6,7 @@
package org.jetbrains.kotlin.gradle.plugin.mpp
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.CompilerMultiplatformCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
import org.jetbrains.kotlin.gradle.targets.metadata.isKotlinGranularMetadataEnabled
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
@@ -31,8 +29,8 @@ abstract class KotlinCommonCompilation @Inject constructor(
get() = super.compileKotlinTask as KotlinCompileCommon
@Suppress("UNCHECKED_CAST")
override val compileTaskProvider: TaskProvider<KotlinCompilationTask<CompilerMultiplatformCommonOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<CompilerMultiplatformCommonOptions>>
override val compileTaskProvider: TaskProvider<KotlinCompilationTask<KotlinMultiplatformCommonCompilerOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<KotlinMultiplatformCommonCompilerOptions>>
internal val isKlibCompilation: Boolean
get() = target.project.isKotlinGranularMetadataEnabled && !forceCompilationToKotlinMetadata
@@ -6,9 +6,7 @@
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
import org.gradle.api.artifacts.Configuration
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.*
import org.jetbrains.kotlin.gradle.plugin.mpp.*
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.archivesName
@@ -42,17 +40,17 @@ abstract class GradleKpmJvmVariant @Inject constructor(
class GradleKpmJvmVariantCompilationData(val variant: GradleKpmJvmVariant) : GradleKpmVariantCompilationDataInternal<KotlinJvmOptions> {
override val owner: GradleKpmJvmVariant get() = variant
override val compilerOptions: HasCompilerOptions<CompilerJvmOptions> =
object : HasCompilerOptions<CompilerJvmOptions> {
override val options: CompilerJvmOptions =
variant.project.objects.newInstance(CompilerJvmOptionsDefault::class.java)
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions> =
object : HasCompilerOptions<KotlinJvmCompilerOptions> {
override val options: KotlinJvmCompilerOptions =
variant.project.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
// TODO pull out to the variant
@Suppress("DEPRECATION")
@Deprecated("Replaced with compilerOptions.options", replaceWith = ReplaceWith("compilerOptions.options"))
override val kotlinOptions: KotlinJvmOptions = object : KotlinJvmOptions {
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
get() = compilerOptions.options
}
}
@@ -6,8 +6,7 @@
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
import org.gradle.api.Project
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.targets.native.NativeCompilerOptions
import org.jetbrains.kotlin.konan.target.KonanTarget
@@ -29,7 +28,7 @@ internal class GradleKpmNativeVariantCompilationData(
override val owner: GradleKpmNativeVariant
get() = variant
override val compilerOptions: HasCompilerOptions<CompilerCommonOptions> = NativeCompilerOptions(
override val compilerOptions: HasCompilerOptions<KotlinCommonCompilerOptions> = NativeCompilerOptions(
project,
variant.languageSettings
)
@@ -37,7 +36,7 @@ internal class GradleKpmNativeVariantCompilationData(
@Suppress("DEPRECATION")
@Deprecated("Replaced with compilerOptions.options", replaceWith = ReplaceWith("compilerOptions.options"))
override val kotlinOptions: KotlinCommonOptions = object : KotlinCommonOptions {
override val options: CompilerCommonOptions
override val options: KotlinCommonCompilerOptions
get() = compilerOptions.options
}
}
@@ -128,17 +128,17 @@ internal open class KotlinCommonFragmentMetadataCompilationDataImpl(
mapTo(hashSetOf()) { it.platformType }.size > 1
}
override val compilerOptions: HasCompilerOptions<CompilerMultiplatformCommonOptions> =
object : HasCompilerOptions<CompilerMultiplatformCommonOptions> {
override val options: CompilerMultiplatformCommonOptions =
project.objects.newInstance(CompilerMultiplatformCommonOptionsDefault::class.java)
override val compilerOptions: HasCompilerOptions<KotlinMultiplatformCommonCompilerOptions> =
object : HasCompilerOptions<KotlinMultiplatformCommonCompilerOptions> {
override val options: KotlinMultiplatformCommonCompilerOptions =
project.objects.newInstance(KotlinMultiplatformCommonCompilerOptionsDefault::class.java)
}
@Suppress("DEPRECATION")
@Deprecated("Replaced with compilerOptions.options", replaceWith = ReplaceWith("compilerOptions.options"))
override val kotlinOptions: KotlinMultiplatformCommonOptions = object : KotlinMultiplatformCommonOptions {
override val options: CompilerMultiplatformCommonOptions
override val options: KotlinMultiplatformCommonCompilerOptions
get() = compilerOptions.options
}
}
@@ -177,7 +177,7 @@ internal open class KotlinNativeFragmentMetadataCompilationDataImpl(
override val isActive: Boolean
get() = fragment.isNativeShared() && fragment.containingVariants.count() > 1
override val compilerOptions: HasCompilerOptions<CompilerCommonOptions> = NativeCompilerOptions(
override val compilerOptions: HasCompilerOptions<KotlinCommonCompilerOptions> = NativeCompilerOptions(
project,
languageSettings
)
@@ -185,7 +185,7 @@ internal open class KotlinNativeFragmentMetadataCompilationDataImpl(
@Suppress("DEPRECATION")
@Deprecated("Replaced with compilerOptions.options", replaceWith = ReplaceWith("compilerOptions.options"))
override val kotlinOptions: KotlinCommonOptions = object : KotlinCommonOptions {
override val options: CompilerCommonOptions
override val options: KotlinCommonCompilerOptions
get() = compilerOptions.options
}
@@ -11,7 +11,7 @@ import org.gradle.api.provider.Provider
import org.jetbrains.kotlin.config.ApiVersion
import org.jetbrains.kotlin.config.LanguageFeature
import org.jetbrains.kotlin.config.LanguageVersion
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinVersion
import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
import org.jetbrains.kotlin.gradle.plugin.statistics.KotlinBuildStatsService
@@ -102,7 +102,7 @@ internal class DefaultLanguageSettingsBuilder : LanguageSettingsBuilder {
internal fun applyLanguageSettingsToCompilerOptions(
languageSettingsBuilder: LanguageSettings,
compilerOptions: CompilerCommonOptions
compilerOptions: KotlinCommonCompilerOptions
) = with(compilerOptions) {
languageVersion.convention(languageSettingsBuilder.languageVersion?.let { KotlinVersion.fromVersion(it) })
apiVersion.convention(languageSettingsBuilder.apiVersion?.let { KotlinVersion.fromVersion(it) })
@@ -62,10 +62,10 @@ internal class AndroidProjectHandler(
applyKotlinAndroidSourceSetLayout(kotlinAndroidTarget)
val androidExtensionCompilerOptions = project.objects.newInstance<CompilerJvmOptionsDefault>()
val androidExtensionCompilerOptions = project.objects.newInstance<KotlinJvmCompilerOptionsDefault>()
androidExtensionCompilerOptions.noJdk.value(true).finalizeValueOnRead()
@Suppress("DEPRECATION") val kotlinOptions = object : KotlinJvmOptions {
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
get() = androidExtensionCompilerOptions
}
ext.addExtension(KOTLIN_OPTIONS_DSL_NAME, kotlinOptions)
@@ -89,7 +89,7 @@ internal class AndroidProjectHandler(
setUpDependencyResolution(variant, compilation)
project.wireExtensionOptionsToCompilation(
androidExtensionCompilerOptions,
compilation.compilerOptions.options as CompilerJvmOptions
compilation.compilerOptions.options as KotlinJvmCompilerOptions
)
preprocessVariant(variant, compilation, project, kotlinConfigurationTools.kotlinTasksProvider)
@@ -119,8 +119,8 @@ internal class AndroidProjectHandler(
}
private fun Project.wireExtensionOptionsToCompilation(
extensionCompilerOptions: CompilerJvmOptions,
compilationCompilerOptions: CompilerJvmOptions
extensionCompilerOptions: KotlinJvmCompilerOptions,
compilationCompilerOptions: KotlinJvmCompilerOptions
) {
// CompilerCommonToolOptions
compilationCompilerOptions.allWarningsAsErrors.convention(extensionCompilerOptions.allWarningsAsErrors)
@@ -237,7 +237,7 @@ internal class AndroidProjectHandler(
tasksProvider.registerKotlinJVMTask(
project,
compilation.compileKotlinTaskName,
compilation.compilerOptions.options as CompilerJvmOptions,
compilation.compilerOptions.options as KotlinJvmCompilerOptions,
configAction
)
@@ -10,8 +10,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
import groovy.lang.Closure
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.CompilerJsOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJsOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationWithResources
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
@@ -22,7 +21,6 @@ import org.jetbrains.kotlin.gradle.targets.js.ir.JsBinary
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsBinaryContainer
import org.jetbrains.kotlin.gradle.targets.js.npm.PackageJson
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
import javax.inject.Inject
abstract class KotlinJsCompilation @Inject internal constructor(
@@ -33,8 +31,8 @@ abstract class KotlinJsCompilation @Inject internal constructor(
final override val target: KotlinTarget get() = super.target
@Suppress("UNCHECKED_CAST")
final override val compilerOptions: HasCompilerOptions<CompilerJsOptions>
get() = super.compilerOptions as HasCompilerOptions<CompilerJsOptions>
final override val compilerOptions: HasCompilerOptions<KotlinJsCompilerOptions>
get() = super.compilerOptions as HasCompilerOptions<KotlinJsCompilerOptions>
private val kotlinProperties = PropertiesProvider(target.project)
@@ -15,7 +15,7 @@ import org.gradle.workers.WorkerExecutor
import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments
import org.jetbrains.kotlin.cli.common.arguments.parseCommandLineArguments
import org.jetbrains.kotlin.compilerRunner.ArgumentUtils
import org.jetbrains.kotlin.gradle.dsl.CompilerJsOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptionsDefault
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
@@ -23,7 +23,6 @@ import org.jetbrains.kotlin.gradle.plugin.statistics.KotlinBuildStatsService
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode.DEVELOPMENT
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
import org.jetbrains.kotlin.gradle.utils.getValue
import org.jetbrains.kotlin.gradle.utils.toHexString
import org.jetbrains.kotlin.statistics.metrics.BooleanMetrics
import org.jetbrains.kotlin.statistics.metrics.StringMetrics
@@ -38,7 +37,7 @@ abstract class KotlinJsIrLink @Inject constructor(
objectFactory: ObjectFactory,
workerExecutor: WorkerExecutor
) : Kotlin2JsCompile(
objectFactory.newInstance(CompilerJsOptionsDefault::class.java),
objectFactory.newInstance(KotlinJsCompilerOptionsDefault::class.java),
objectFactory,
workerExecutor
) {
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.gradle.targets.js.ir
import org.gradle.api.attributes.Usage
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Zip
import org.jetbrains.kotlin.gradle.dsl.CompilerJsOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJsCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.JsModuleKind
import org.jetbrains.kotlin.gradle.dsl.JsSourceMapEmbedMode
import org.jetbrains.kotlin.gradle.plugin.*
@@ -89,7 +89,7 @@ open class KotlinJsIrTargetConfigurator() :
}
}
private fun CompilerJsOptions.configureOptions() {
private fun KotlinJsCompilerOptions.configureOptions() {
moduleKind.set(JsModuleKind.MODULE_UMD)
sourceMap.set(true)
sourceMapEmbedSources.set(JsSourceMapEmbedMode.SOURCE_MAP_SOURCE_CONTENT_NEVER)
@@ -11,8 +11,7 @@ import org.gradle.api.file.FileCollection
import org.gradle.api.provider.Property
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.compile.JavaCompile
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.getJavaTaskProvider
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
import javax.inject.Inject
@@ -37,8 +36,8 @@ abstract class KotlinJvmAndroidCompilation @Inject constructor(
get() = super.compileKotlinTaskProvider as TaskProvider<out org.jetbrains.kotlin.gradle.tasks.KotlinCompile>
@Suppress("UNCHECKED_CAST")
override val compileTaskProvider: TaskProvider<out KotlinCompilationTask<CompilerJvmOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<CompilerJvmOptions>>
override val compileTaskProvider: TaskProvider<out KotlinCompilationTask<KotlinJvmCompilerOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<KotlinJvmCompilerOptions>>
val compileJavaTaskProvider: TaskProvider<out JavaCompile>
get() = androidVariant.getJavaTaskProvider()
@@ -8,8 +8,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
import org.gradle.api.tasks.compile.JavaCompile
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationWithResources
import org.jetbrains.kotlin.gradle.plugin.internal.JavaSourceSetsAccessor
@@ -25,8 +24,8 @@ abstract class KotlinJvmCompilation @Inject constructor(
override val target: KotlinJvmTarget get() = compilationDetails.target as KotlinJvmTarget
@Suppress("UNCHECKED_CAST")
override val compilerOptions: HasCompilerOptions<CompilerJvmOptions>
get() = super.compilerOptions as HasCompilerOptions<CompilerJvmOptions>
override val compilerOptions: HasCompilerOptions<KotlinJvmCompilerOptions>
get() = super.compilerOptions as HasCompilerOptions<KotlinJvmCompilerOptions>
override val processResourcesTaskName: String
get() = disambiguateName("processResources")
@@ -42,8 +41,8 @@ abstract class KotlinJvmCompilation @Inject constructor(
get() = super.compileKotlinTask as org.jetbrains.kotlin.gradle.tasks.KotlinCompile
@Suppress("UNCHECKED_CAST")
override val compileTaskProvider: TaskProvider<out KotlinCompilationTask<CompilerJvmOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<CompilerJvmOptions>>
override val compileTaskProvider: TaskProvider<out KotlinCompilationTask<KotlinJvmCompilerOptions>>
get() = super.compileTaskProvider as TaskProvider<KotlinCompilationTask<KotlinJvmCompilerOptions>>
val compileJavaTaskProvider: TaskProvider<out JavaCompile>?
get() = if (target.withJavaEnabled) {
@@ -6,9 +6,7 @@
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
package org.jetbrains.kotlin.gradle.plugin.mpp
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget
@@ -22,19 +20,19 @@ open class KotlinJvmCompilationFactory(
override fun create(name: String): KotlinJvmCompilation =
target.project.objects.newInstance(
KotlinJvmCompilation::class.java,
DefaultCompilationDetailsWithRuntime<KotlinJvmOptions, CompilerJvmOptions>(
DefaultCompilationDetailsWithRuntime<KotlinJvmOptions, KotlinJvmCompilerOptions>(
target,
name,
getOrCreateDefaultSourceSet(name),
{
object : HasCompilerOptions<CompilerJvmOptions> {
override val options: CompilerJvmOptions =
target.project.objects.newInstance(CompilerJvmOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJvmCompilerOptions> {
override val options: KotlinJvmCompilerOptions =
target.project.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
},
{
object : KotlinJvmOptions {
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
get() = compilerOptions.options
}
}
@@ -8,9 +8,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
import org.gradle.api.Project
import org.gradle.api.plugins.JavaPlugin
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.*
import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget
import org.jetbrains.kotlin.gradle.tasks.KotlinTasksProvider
@@ -18,11 +16,11 @@ import org.jetbrains.kotlin.gradle.utils.SingleWarningPerBuild
class KotlinJvmWithJavaTargetPreset(
private val project: Project
) : KotlinTargetPreset<KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions>> {
) : KotlinTargetPreset<KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions>> {
override fun getName(): String = PRESET_NAME
override fun createTarget(name: String): KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions> {
override fun createTarget(name: String): KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions> {
SingleWarningPerBuild.show(
project,
DEPRECATION_WARNING
@@ -37,18 +35,18 @@ class KotlinJvmWithJavaTargetPreset(
KotlinPlatformType.jvm,
name,
{
object : HasCompilerOptions<CompilerJvmOptions> {
override val options: CompilerJvmOptions =
project.objects.newInstance(CompilerJvmOptionsDefault::class.java)
object : HasCompilerOptions<KotlinJvmCompilerOptions> {
override val options: KotlinJvmCompilerOptions =
project.objects.newInstance(KotlinJvmCompilerOptionsDefault::class.java)
}
},
{ compilerOptions: CompilerJvmOptions ->
{ compilerOptions: KotlinJvmCompilerOptions ->
object : KotlinJvmOptions {
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
get() = compilerOptions
}
}
) as KotlinWithJavaTarget<KotlinJvmOptions, CompilerJvmOptions>)
) as KotlinWithJavaTarget<KotlinJvmOptions, KotlinJvmCompilerOptions>)
.apply {
disambiguationClassifier = name
preset = this@KotlinJvmWithJavaTargetPreset
@@ -9,8 +9,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
import org.gradle.api.tasks.SourceSet
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.compile.JavaCompile
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationWithResources
import org.jetbrains.kotlin.gradle.plugin.KotlinSourceSet
@@ -18,7 +17,7 @@ import org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile
import org.jetbrains.kotlin.gradle.utils.named
import javax.inject.Inject
abstract class KotlinWithJavaCompilation<KotlinOptionsType : KotlinCommonOptions, CO : CompilerCommonOptions> @Inject constructor(
abstract class KotlinWithJavaCompilation<KotlinOptionsType : KotlinCommonOptions, CO : KotlinCommonCompilerOptions> @Inject constructor(
target: KotlinWithJavaTarget<KotlinOptionsType, CO>,
name: String,
override val defaultSourceSet: KotlinSourceSet,
@@ -6,11 +6,10 @@
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
package org.jetbrains.kotlin.gradle.plugin.mpp
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
class KotlinWithJavaCompilationFactory<KotlinOptionsType : KotlinCommonOptions, CO : CompilerCommonOptions>(
class KotlinWithJavaCompilationFactory<KotlinOptionsType : KotlinCommonOptions, CO : KotlinCommonCompilerOptions>(
override val target: KotlinWithJavaTarget<KotlinOptionsType, CO>,
val compilerOptionsFactory: () -> HasCompilerOptions<CO>,
val kotlinOptionsFactory: (CO) -> KotlinOptionsType
@@ -13,15 +13,14 @@ import org.gradle.api.file.Directory
import org.gradle.api.plugins.JavaPlugin
import org.gradle.api.provider.Provider
import org.gradle.jvm.tasks.Jar
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.tasks.KOTLIN_BUILD_DIR_NAME
import java.io.File
import javax.inject.Inject
abstract class KotlinWithJavaTarget<KotlinOptionsType : KotlinCommonOptions, CO : CompilerCommonOptions> @Inject constructor(
abstract class KotlinWithJavaTarget<KotlinOptionsType : KotlinCommonOptions, CO : KotlinCommonCompilerOptions> @Inject constructor(
project: Project,
override val platformType: KotlinPlatformType,
override val targetName: String,
@@ -6,8 +6,7 @@
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
package org.jetbrains.kotlin.gradle.plugin.mpp
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.targets.native.NativeCompilerOptions
import org.jetbrains.kotlin.konan.target.KonanTarget
@@ -41,7 +40,7 @@ open class KotlinNativeCompilationFactory(
},
{
object : KotlinCommonOptions {
override val options: CompilerCommonOptions
override val options: KotlinCommonCompilerOptions
get() = compilerOptions.options
}
}
@@ -74,7 +73,7 @@ class KotlinSharedNativeCompilationFactory(
},
{
object : KotlinCommonOptions {
override val options: CompilerCommonOptions
override val options: KotlinCommonCompilerOptions
get() = compilerOptions.options
}
}
@@ -6,8 +6,8 @@
package org.jetbrains.kotlin.gradle.targets.native
import org.gradle.api.Project
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptionsDefault
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
import org.jetbrains.kotlin.gradle.plugin.runOnceAfterEvaluated
import org.jetbrains.kotlin.gradle.plugin.sources.applyLanguageSettingsToCompilerOptions
@@ -16,9 +16,9 @@ import org.jetbrains.kotlin.project.model.LanguageSettings
internal class NativeCompilerOptions(
project: Project,
nativeLanguageSettings: LanguageSettings
) : HasCompilerOptions<CompilerCommonOptions> {
override val options: CompilerCommonOptions = project.objects
.newInstance(CompilerCommonOptionsDefault::class.java)
) : HasCompilerOptions<KotlinCommonCompilerOptions> {
override val options: KotlinCommonCompilerOptions = project.objects
.newInstance(KotlinCommonCompilerOptionsDefault::class.java)
.apply {
useK2.finalizeValue()
project.runOnceAfterEvaluated("apply Kotlin native properties from language settings") {
@@ -7,8 +7,8 @@ package org.jetbrains.kotlin.gradle.targets.native.tasks
import org.gradle.api.file.FileCollection
import org.gradle.api.file.FileTree
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonCompilerToolOptions
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
import org.jetbrains.kotlin.gradle.tasks.CompilerPluginOptions
import org.jetbrains.kotlin.konan.target.CompilerOutputKind
@@ -35,7 +35,7 @@ internal fun buildKotlinNativeKlibCompilerArgs(
languageSettings: LanguageSettings,
enableEndorsedLibs: Boolean,
compilerOptions: CompilerCommonOptions,
compilerOptions: KotlinCommonCompilerOptions,
compilerPlugins: List<CompilerPluginData>,
moduleName: String,
@@ -81,7 +81,7 @@ internal fun buildKotlinNativeBinaryLinkerArgs(
friendModules: List<File>,
enableEndorsedLibs: Boolean,
toolOptions: CompilerCommonToolOptions,
toolOptions: KotlinCommonCompilerToolOptions,
compilerPlugins: List<CompilerPluginData>,
processTests: Boolean,
@@ -138,7 +138,7 @@ private fun buildKotlinNativeMainArgs(
internal fun buildKotlinNativeCompileCommonArgs(
enableEndorsedLibs: Boolean,
languageSettings: LanguageSettings,
compilerOptions: CompilerCommonOptions,
compilerOptions: KotlinCommonCompilerOptions,
compilerPlugins: List<CompilerPluginData>
): List<String> = mutableListOf<String>().apply {
add("-Xmulti-platform")
@@ -166,7 +166,7 @@ internal fun buildKotlinNativeCompileCommonArgs(
internal fun buildKotlinNativeCommonArgs(
enableEndorsedLibs: Boolean,
toolOptions: CompilerCommonToolOptions,
toolOptions: KotlinCommonCompilerToolOptions,
compilerPlugins: List<CompilerPluginData>
): List<String> = mutableListOf<String>().apply {
add("-Xmulti-platform")
@@ -21,10 +21,7 @@ import org.gradle.process.ExecOperations
import org.jetbrains.kotlin.compilerRunner.KotlinNativeCompilerRunner
import org.jetbrains.kotlin.compilerRunner.KotlinToolRunner
import org.jetbrains.kotlin.compilerRunner.getKonanCacheKind
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.NativeCacheKind
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider
import org.jetbrains.kotlin.gradle.plugin.cocoapods.asValidFrameworkName
import org.jetbrains.kotlin.gradle.plugin.mpp.*
@@ -50,7 +47,7 @@ constructor(
private val objectFactory: ObjectFactory,
private val execOperations: ExecOperations
) : AbstractKotlinCompileTool<StubK2NativeCompilerArguments>(objectFactory),
KotlinToolTask<CompilerCommonToolOptions> {
KotlinToolTask<KotlinCommonCompilerToolOptions> {
@Deprecated("Visibility will be lifted to private in the future releases")
@get:Internal
val compilation: KotlinNativeCompilation
@@ -58,8 +55,8 @@ constructor(
private val runnerSettings = KotlinNativeCompilerRunner.Settings.fromProject(project)
final override val toolOptions: CompilerCommonToolOptions = objectFactory
.newInstance<CompilerCommonToolOptionsDefault>()
final override val toolOptions: KotlinCommonCompilerToolOptions = objectFactory
.newInstance<KotlinCommonCompilerToolOptionsDefault>()
.apply {
freeCompilerArgs.addAll(PropertiesProvider(project).nativeLinkArgs)
}
@@ -137,7 +134,7 @@ constructor(
)
@get:Internal
val kotlinOptions: KotlinCommonToolOptions = object : KotlinCommonToolOptions {
override val options: CompilerCommonToolOptions
override val options: KotlinCommonCompilerToolOptions
get() = toolOptions
}
@@ -306,7 +306,7 @@ constructor(
private val execOperations: ExecOperations
) : AbstractKotlinNativeCompile<KotlinCommonOptions, KotlinNativeCompilationData<*>, StubK2NativeCompilerArguments>(objectFactory),
KotlinCompile<KotlinCommonOptions>,
KotlinCompilationTask<CompilerCommonOptions> {
KotlinCompilationTask<KotlinCommonCompilerOptions> {
@get:Input
override val outputKind = LIBRARY
@@ -373,7 +373,7 @@ constructor(
// endregion.
// region Kotlin options.
override val compilerOptions: CompilerCommonOptions = compilation.compilerOptions.options
override val compilerOptions: KotlinCommonCompilerOptions = compilation.compilerOptions.options
@Deprecated(
message = "Replaced with compilerOptions",
@@ -381,7 +381,7 @@ constructor(
)
@Suppress("DEPRECATION")
override val kotlinOptions: KotlinCommonOptions = object : KotlinCommonOptions {
override val options: CompilerCommonOptions
override val options: KotlinCommonCompilerOptions
get() = compilerOptions
}
@@ -678,7 +678,7 @@ internal class CacheBuilder(
val gradleUserHomeDir: File,
val binary: NativeBinary,
val konanTarget: KonanTarget,
val toolOptions: CompilerCommonToolOptions,
val toolOptions: KotlinCommonCompilerToolOptions,
val externalDependenciesArgs: List<String>
) {
val rootCacheDirectory get() = getRootCacheDirectory(
@@ -693,7 +693,7 @@ internal class CacheBuilder(
project: Project,
binary: NativeBinary,
konanTarget: KonanTarget,
toolOptions: CompilerCommonToolOptions,
toolOptions: KotlinCommonCompilerToolOptions,
externalDependenciesArgs: List<String>
): Settings {
val konanCacheKind = project.getKonanCacheKind(konanTarget)
@@ -8,10 +8,7 @@ package org.jetbrains.kotlin.gradle.targets.native.tasks.artifact
import org.gradle.api.Action
import org.gradle.api.Project
import org.gradle.api.attributes.Usage
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinArtifactConfig
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeArtifactConfig
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeTarget
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinUsages
@@ -49,8 +46,8 @@ abstract class KotlinNativeArtifactConfigImpl(artifactName: String) : KotlinArti
override var isStatic: Boolean = false
override var linkerOptions: List<String> = emptyList()
internal var toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit = {}
override fun toolOptions(configure: Action<CompilerCommonToolOptions>) {
internal var toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit = {}
override fun toolOptions(configure: Action<KotlinCommonCompilerToolOptions>) {
toolOptionsConfigure = configure::execute
}
@@ -9,10 +9,7 @@ import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.plugins.ExtensionAware
import org.gradle.language.base.plugins.LifecycleBasePlugin
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeFatFramework
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeFatFrameworkConfig
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind
@@ -73,7 +70,7 @@ class KotlinNativeFatFrameworkImpl(
@Suppress("DEPRECATION")
@Deprecated("Replaced by toolOptionsConfigure", replaceWith = ReplaceWith("toolOptionsConfigure"))
override val kotlinOptionsFn: KotlinCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit,
override val binaryOptions: Map<String, String>,
override val targets: Set<KonanTarget>,
override val embedBitcode: BitcodeEmbeddingMode?,
@@ -63,7 +63,7 @@ class KotlinNativeFrameworkImpl(
@Suppress("DEPRECATION")
@Deprecated("Replaced by compilerOptionsConfigure", replaceWith = ReplaceWith("compilerOptionsConfigure"))
override val kotlinOptionsFn: KotlinCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit,
override val binaryOptions: Map<String, String>,
override val target: KonanTarget,
override val embedBitcode: BitcodeEmbeddingMode?,
@@ -10,10 +10,7 @@ import org.gradle.api.Task
import org.gradle.api.plugins.BasePlugin
import org.gradle.api.plugins.ExtensionAware
import org.gradle.language.base.plugins.LifecycleBasePlugin
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeLibrary
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeLibraryConfig
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind
import org.jetbrains.kotlin.gradle.plugin.mpp.enabledOnCurrentHost
@@ -62,7 +59,7 @@ class KotlinNativeLibraryImpl(
@Suppress("DEPRECATION")
@Deprecated("Replaced by compilerOptionsConfigure", replaceWith = ReplaceWith("compilerOptionsConfigure"))
override val kotlinOptionsFn: KotlinCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit,
override val binaryOptions: Map<String, String>,
override val target: KonanTarget,
extensions: ExtensionAware
@@ -20,9 +20,7 @@ import org.gradle.api.tasks.*
import org.gradle.process.ExecOperations
import org.jetbrains.kotlin.compilerRunner.KotlinNativeCompilerRunner
import org.jetbrains.kotlin.compilerRunner.KotlinToolRunner
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.internal.ensureParentDirsCreated
import org.jetbrains.kotlin.gradle.plugin.PropertiesProvider
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
@@ -43,7 +41,7 @@ abstract class KotlinNativeLinkArtifactTask @Inject constructor(
private val execOperations: ExecOperations,
private val projectLayout: ProjectLayout
) : DefaultTask(),
KotlinToolTask<CompilerCommonToolOptions> {
KotlinToolTask<KotlinCommonCompilerToolOptions> {
@get:Input
abstract val baseName: Property<String>
@@ -94,8 +92,8 @@ abstract class KotlinNativeLinkArtifactTask @Inject constructor(
@get:Input
internal val allBinaryOptions: Provider<Map<String, String>> = binaryOptions.map { it + nativeBinaryOptions }
override val toolOptions: CompilerCommonToolOptions = objectFactory
.newInstance<CompilerCommonToolOptionsDefault>()
override val toolOptions: KotlinCommonCompilerToolOptions = objectFactory
.newInstance<KotlinCommonCompilerToolOptionsDefault>()
.apply {
freeCompilerArgs.addAll(PropertiesProvider(project).nativeLinkArgs)
}
@@ -107,7 +105,7 @@ abstract class KotlinNativeLinkArtifactTask @Inject constructor(
)
@get:Internal
val kotlinOptions = object : KotlinCommonToolOptions {
override val options: CompilerCommonToolOptions
override val options: KotlinCommonCompilerToolOptions
get() = toolOptions
}
@@ -9,10 +9,7 @@ import org.gradle.api.Project
import org.gradle.api.Task
import org.gradle.api.plugins.ExtensionAware
import org.gradle.language.base.plugins.LifecycleBasePlugin
import org.jetbrains.kotlin.gradle.dsl.CompilerCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeXCFramework
import org.jetbrains.kotlin.gradle.dsl.KotlinNativeXCFrameworkConfig
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.plugin.mpp.BitcodeEmbeddingMode
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeBuildType
import org.jetbrains.kotlin.gradle.plugin.mpp.NativeOutputKind
@@ -73,7 +70,7 @@ class KotlinNativeXCFrameworkImpl(
@Suppress("DEPRECATION")
@Deprecated("Replaced by toolOptionsConfigure", replaceWith = ReplaceWith("toolOptionsConfigure"))
override val kotlinOptionsFn: KotlinCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: CompilerCommonToolOptions.() -> Unit,
override val toolOptionsConfigure: KotlinCommonCompilerToolOptions.() -> Unit,
override val binaryOptions: Map<String, String>,
override val targets: Set<KonanTarget>,
override val embedBitcode: BitcodeEmbeddingMode?,
@@ -35,11 +35,11 @@ import javax.inject.Inject
@CacheableTask
abstract class KotlinCompileCommon @Inject constructor(
override val compilerOptions: CompilerMultiplatformCommonOptions,
override val compilerOptions: KotlinMultiplatformCommonCompilerOptions,
workerExecutor: WorkerExecutor,
objectFactory: ObjectFactory
) : AbstractKotlinCompile<K2MetadataCompilerArguments>(objectFactory, workerExecutor),
KotlinCompilationTask<CompilerMultiplatformCommonOptions>,
KotlinCompilationTask<KotlinMultiplatformCommonCompilerOptions>,
KotlinCommonCompile {
init {
@@ -67,7 +67,7 @@ abstract class KotlinCompileCommon @Inject constructor(
K2MetadataCompilerArguments()
override fun setupCompilerArgs(args: K2MetadataCompilerArguments, defaultsOnly: Boolean, ignoreClasspathResolutionErrors: Boolean) {
(compilerOptions as CompilerMultiplatformCommonOptionsDefault).fillDefaultValues(args)
(compilerOptions as KotlinMultiplatformCommonCompilerOptionsDefault).fillDefaultValues(args)
super.setupCompilerArgs(args, defaultsOnly = defaultsOnly, ignoreClasspathResolutionErrors = ignoreClasspathResolutionErrors)
args.moduleName = this@KotlinCompileCommon.moduleName.get()
@@ -88,7 +88,7 @@ abstract class KotlinCompileCommon @Inject constructor(
refinesPaths = refinesMetadataPaths.map { it.absolutePath }.toTypedArray()
}
(compilerOptions as CompilerMultiplatformCommonOptionsDefault).fillCompilerArguments(args)
(compilerOptions as KotlinMultiplatformCommonCompilerOptionsDefault).fillCompilerArguments(args)
if (additionalFreeCompilerArgs.isNotEmpty()) {
args.freeArgs = compilerOptions.freeCompilerArgs.get().union(additionalFreeCompilerArgs).toList()
@@ -28,8 +28,8 @@ import org.jetbrains.kotlin.cli.common.arguments.DevModeOverwritingStrategies
import org.jetbrains.kotlin.cli.common.arguments.K2JSDceArguments
import org.jetbrains.kotlin.cli.js.dce.K2JSDce
import org.jetbrains.kotlin.compilerRunner.runToolInSeparateProcess
import org.jetbrains.kotlin.gradle.dsl.CompilerJsDceOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerJsDceOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDceCompilerToolOptionsDefault
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDce
import org.jetbrains.kotlin.gradle.dsl.KotlinJsDceOptions
import org.jetbrains.kotlin.gradle.logging.GradleKotlinLogger
@@ -43,7 +43,7 @@ import javax.inject.Inject
abstract class KotlinJsDce @Inject constructor(
objectFactory: ObjectFactory
) : AbstractKotlinCompileTool<K2JSDceArguments>(objectFactory),
KotlinToolTask<CompilerJsDceOptions>,
KotlinToolTask<KotlinJsDceCompilerToolOptions>,
KotlinJsDce {
init {
@@ -53,12 +53,12 @@ abstract class KotlinJsDce @Inject constructor(
include("js".fileExtensionCasePermutations().map { "**/*.$it" })
}
override val toolOptions: CompilerJsDceOptions = objectFactory.newInstance<CompilerJsDceOptionsDefault>()
override val toolOptions: KotlinJsDceCompilerToolOptions = objectFactory.newInstance<KotlinJsDceCompilerToolOptionsDefault>()
override fun createCompilerArgs(): K2JSDceArguments = K2JSDceArguments()
override fun setupCompilerArgs(args: K2JSDceArguments, defaultsOnly: Boolean, ignoreClasspathResolutionErrors: Boolean) {
(toolOptions as CompilerJsDceOptionsDefault).fillCompilerArguments(args)
(toolOptions as KotlinJsDceCompilerToolOptionsDefault).fillCompilerArguments(args)
args.declarationsToKeep = keep.toTypedArray()
}
@@ -70,7 +70,7 @@ abstract class KotlinJsDce @Inject constructor(
@Suppress("DEPRECATION")
@get:Internal
override val dceOptions: KotlinJsDceOptions = object : KotlinJsDceOptions {
override val options: CompilerJsDceOptions
override val options: KotlinJsDceCompilerToolOptions
get() = toolOptions
}
@@ -524,7 +524,7 @@ class KotlinJvmCompilerArgumentsProvider
val friendPaths: FileCollection = taskProvider.friendPaths
val compileClasspath: Iterable<File> = taskProvider.libraries
val destinationDir: File = taskProvider.destinationDirectory.get().asFile
internal val compilerOptions: CompilerJvmOptions = taskProvider.compilerOptions
internal val compilerOptions: KotlinJvmCompilerOptions = taskProvider.compilerOptions
}
internal inline val <reified T : Task> T.thisTaskProvider: TaskProvider<out T>
@@ -532,12 +532,12 @@ internal inline val <reified T : Task> T.thisTaskProvider: TaskProvider<out T>
@CacheableTask
abstract class KotlinCompile @Inject constructor(
override val compilerOptions: CompilerJvmOptions,
override val compilerOptions: KotlinJvmCompilerOptions,
workerExecutor: WorkerExecutor,
objectFactory: ObjectFactory
) : AbstractKotlinCompile<K2JVMCompilerArguments>(objectFactory, workerExecutor),
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION") KotlinJvmCompileDsl,
KotlinCompilationTask<CompilerJvmOptions>,
KotlinCompilationTask<KotlinJvmCompilerOptions>,
UsesKotlinJavaToolchain {
init {
@@ -918,11 +918,11 @@ abstract class KotlinCompile @Inject constructor(
@CacheableTask
abstract class Kotlin2JsCompile @Inject constructor(
override val compilerOptions: CompilerJsOptions,
override val compilerOptions: KotlinJsCompilerOptions,
objectFactory: ObjectFactory,
workerExecutor: WorkerExecutor
) : AbstractKotlinCompile<K2JSCompilerArguments>(objectFactory, workerExecutor),
KotlinCompilationTask<CompilerJsOptions>,
KotlinCompilationTask<KotlinJsCompilerOptions>,
KotlinJsCompile {
init {
@@ -1007,12 +1007,12 @@ abstract class Kotlin2JsCompile @Inject constructor(
K2JSCompilerArguments()
override fun setupCompilerArgs(args: K2JSCompilerArguments, defaultsOnly: Boolean, ignoreClasspathResolutionErrors: Boolean) {
(compilerOptions as CompilerJsOptionsDefault).fillDefaultValues(args)
(compilerOptions as KotlinJsCompilerOptionsDefault).fillDefaultValues(args)
super.setupCompilerArgs(args, defaultsOnly = defaultsOnly, ignoreClasspathResolutionErrors = ignoreClasspathResolutionErrors)
if (defaultsOnly) return
(compilerOptions as CompilerJsOptionsDefault).fillCompilerArguments(args)
(compilerOptions as KotlinJsCompilerOptionsDefault).fillCompilerArguments(args)
if (!args.sourceMapPrefix.isNullOrEmpty()) {
args.sourceMapBaseDirs = sourceMapBaseDir.get().asFile.absolutePath
}
@@ -22,9 +22,7 @@ import org.gradle.api.UnknownTaskException
import org.gradle.api.tasks.TaskCollection
import org.gradle.api.tasks.TaskContainer
import org.gradle.api.tasks.TaskProvider
import org.jetbrains.kotlin.gradle.dsl.CompilerJsOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.CompilerMultiplatformCommonOptions
import org.jetbrains.kotlin.gradle.dsl.*
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrLink
import org.jetbrains.kotlin.gradle.tasks.configuration.*
@@ -102,7 +100,7 @@ internal open class KotlinTasksProvider {
open fun registerKotlinJVMTask(
project: Project,
taskName: String,
compilerOptions: CompilerJvmOptions,
compilerOptions: KotlinJvmCompilerOptions,
configuration: KotlinCompileConfig
): TaskProvider<out KotlinCompile> {
return project.registerTask(taskName, KotlinCompile::class.java, constructorArgs = listOf(compilerOptions)).also {
@@ -113,7 +111,7 @@ internal open class KotlinTasksProvider {
fun registerKotlinJSTask(
project: Project,
taskName: String,
compilerOptions: CompilerJsOptions,
compilerOptions: KotlinJsCompilerOptions,
configuration: Kotlin2JsCompileConfig
): TaskProvider<out Kotlin2JsCompile> {
return project.registerTask(
@@ -136,7 +134,7 @@ internal open class KotlinTasksProvider {
fun registerKotlinCommonTask(
project: Project,
taskName: String,
compilerOptions: CompilerMultiplatformCommonOptions,
compilerOptions: KotlinMultiplatformCommonCompilerOptions,
configuration: KotlinCompileCommonConfig
): TaskProvider<out KotlinCompileCommon> {
return project.registerTask(
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.gradle.tasks.configuration
import org.gradle.api.Project
import org.gradle.api.attributes.Attribute
import org.gradle.api.provider.Provider
import org.jetbrains.kotlin.gradle.dsl.CompilerJvmOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
import org.jetbrains.kotlin.gradle.dsl.KotlinTopLevelExtension
import org.jetbrains.kotlin.gradle.internal.transforms.ClasspathEntrySnapshotTransform
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJvmAndroidCompilation
@@ -76,7 +76,7 @@ internal open class BaseKotlinCompileConfig<TASK : KotlinCompile> : AbstractKotl
task.associatedJavaCompileTaskName.value(javaTaskProvider.name)
}
task.ownModuleName.value(
(compilation.compilerOptions.options as CompilerJvmOptions).moduleName.convention(compilation.ownModuleName)
(compilation.compilerOptions.options as KotlinJvmCompilerOptions).moduleName.convention(compilation.ownModuleName)
)
}
}
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
@Suppress("DEPRECATION")
class KotlinJsOptionsCompat(
private val task: () -> Kotlin2JsCompile,
override val options: CompilerJsOptions
override val options: KotlinJsCompilerOptions
) : KotlinJsOptions {
override var freeCompilerArgs: List<String>
get() = if (isTaskExecuting) {
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
@Suppress("DEPRECATION")
class KotlinJvmOptionsCompat(
private val task: () -> KotlinCompile,
override val options: CompilerJvmOptions
override val options: KotlinJvmCompilerOptions
) : KotlinJvmOptions {
override var freeCompilerArgs: List<String>
get() = if (isTaskExecuting) {
@@ -11,7 +11,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompileCommon
@Suppress("DEPRECATION")
class KotlinMultiplatformCommonOptionsCompat(
private val task: () -> KotlinCompileCommon,
override val options: CompilerMultiplatformCommonOptions
override val options: KotlinMultiplatformCommonCompilerOptions
) : KotlinMultiplatformCommonOptions {
override var freeCompilerArgs: List<String>