[Gradle, JS] outputName -> moduleName
This commit is contained in:
+11
-3
@@ -16,6 +16,10 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
|
|||||||
@JvmStatic private val serialVersionUID = 0L
|
@JvmStatic private val serialVersionUID = 0L
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GradleOption(
|
||||||
|
value = DefaultValues.StringNullDefault::class,
|
||||||
|
gradleInputType = GradleInputTypes.INTERNAL // handled by task 'outputFileProperty'
|
||||||
|
)
|
||||||
@GradleDeprecatedOption(
|
@GradleDeprecatedOption(
|
||||||
message = "Only for legacy backend. For IR backend please use task.destinationDirectory and moduleName",
|
message = "Only for legacy backend. For IR backend please use task.destinationDirectory and moduleName",
|
||||||
level = DeprecationLevel.WARNING,
|
level = DeprecationLevel.WARNING,
|
||||||
@@ -27,8 +31,12 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
|
|||||||
@Argument(value = "-Xir-output-dir", valueDescription = "<directory>", description = "Destination for generated files")
|
@Argument(value = "-Xir-output-dir", valueDescription = "<directory>", description = "Destination for generated files")
|
||||||
var outputDir: String? by NullableStringFreezableVar(null)
|
var outputDir: String? by NullableStringFreezableVar(null)
|
||||||
|
|
||||||
@Argument(value = "-Xir-output-name", description = "Base name of generated files")
|
@GradleOption(
|
||||||
var outputName: String? by NullableStringFreezableVar(null)
|
value = DefaultValues.StringNullDefault::class,
|
||||||
|
gradleInputType = GradleInputTypes.INPUT
|
||||||
|
)
|
||||||
|
@Argument(value = "-Xir-module-name", description = "Base name of generated files")
|
||||||
|
var moduleName: String? by NullableStringFreezableVar(null)
|
||||||
|
|
||||||
@GradleOption(
|
@GradleOption(
|
||||||
value = DefaultValues.BooleanTrueDefault::class,
|
value = DefaultValues.BooleanTrueDefault::class,
|
||||||
@@ -185,7 +193,7 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
|
|||||||
var irOnly: Boolean by FreezableVar(false)
|
var irOnly: Boolean by FreezableVar(false)
|
||||||
|
|
||||||
@Argument(
|
@Argument(
|
||||||
value = "-Xir-module-name",
|
value = "-Xir-klib-module-name",
|
||||||
valueDescription = "<name>",
|
valueDescription = "<name>",
|
||||||
description = "Specify a compilation module name for IR backend"
|
description = "Specify a compilation module name for IR backend"
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -6,7 +6,6 @@
|
|||||||
package org.jetbrains.kotlin.cli.js
|
package org.jetbrains.kotlin.cli.js
|
||||||
|
|
||||||
import com.intellij.openapi.Disposable
|
import com.intellij.openapi.Disposable
|
||||||
import com.intellij.openapi.util.io.FileUtil
|
|
||||||
import com.intellij.openapi.util.text.StringUtil
|
import com.intellij.openapi.util.text.StringUtil
|
||||||
import org.jetbrains.kotlin.backend.common.CompilationException
|
import org.jetbrains.kotlin.backend.common.CompilationException
|
||||||
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
|
import org.jetbrains.kotlin.backend.common.phaser.PhaseConfig
|
||||||
@@ -48,14 +47,12 @@ import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl
|
|||||||
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImplForJsIC
|
import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImplForJsIC
|
||||||
import org.jetbrains.kotlin.js.analyzer.JsAnalysisResult
|
import org.jetbrains.kotlin.js.analyzer.JsAnalysisResult
|
||||||
import org.jetbrains.kotlin.js.config.*
|
import org.jetbrains.kotlin.js.config.*
|
||||||
import org.jetbrains.kotlin.library.KLIB_FILE_EXTENSION
|
|
||||||
import org.jetbrains.kotlin.metadata.deserialization.BinaryVersion
|
import org.jetbrains.kotlin.metadata.deserialization.BinaryVersion
|
||||||
import org.jetbrains.kotlin.name.FqName
|
import org.jetbrains.kotlin.name.FqName
|
||||||
import org.jetbrains.kotlin.psi.KtFile
|
import org.jetbrains.kotlin.psi.KtFile
|
||||||
import org.jetbrains.kotlin.serialization.js.ModuleKind
|
import org.jetbrains.kotlin.serialization.js.ModuleKind
|
||||||
import org.jetbrains.kotlin.utils.KotlinPaths
|
import org.jetbrains.kotlin.utils.KotlinPaths
|
||||||
import org.jetbrains.kotlin.utils.PathUtil
|
import org.jetbrains.kotlin.utils.PathUtil
|
||||||
import org.jetbrains.kotlin.utils.fileUtils.withReplacedExtensionOrNull
|
|
||||||
import org.jetbrains.kotlin.utils.join
|
import org.jetbrains.kotlin.utils.join
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
@@ -239,7 +236,7 @@ class K2JsIrCompiler : CLICompiler<K2JSCompilerArguments>() {
|
|||||||
if (!checkKotlinPackageUsage(environmentForJS.configuration, sourcesFiles)) return ExitCode.COMPILATION_ERROR
|
if (!checkKotlinPackageUsage(environmentForJS.configuration, sourcesFiles)) return ExitCode.COMPILATION_ERROR
|
||||||
|
|
||||||
val outputDirPath = arguments.outputDir
|
val outputDirPath = arguments.outputDir
|
||||||
val outputName = arguments.outputName
|
val outputName = arguments.moduleName
|
||||||
if (outputDirPath == null) {
|
if (outputDirPath == null) {
|
||||||
messageCollector.report(ERROR, "IR: Specify output dir via -Xir-output-dir", null)
|
messageCollector.report(ERROR, "IR: Specify output dir via -Xir-output-dir", null)
|
||||||
return ExitCode.COMPILATION_ERROR
|
return ExitCode.COMPILATION_ERROR
|
||||||
|
|||||||
+1
-2
@@ -2,7 +2,6 @@ package org.jetbrains.kotlin.incremental
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments
|
import org.jetbrains.kotlin.cli.common.arguments.K2JSCompilerArguments
|
||||||
import org.jetbrains.kotlin.incremental.testingUtils.BuildLogFinder
|
import org.jetbrains.kotlin.incremental.testingUtils.BuildLogFinder
|
||||||
import org.jetbrains.kotlin.library.KLIB_FILE_EXTENSION
|
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
abstract class AbstractIncrementalJsKlibCompilerRunnerTest : AbstractIncrementalJsCompilerRunnerTest() {
|
abstract class AbstractIncrementalJsKlibCompilerRunnerTest : AbstractIncrementalJsCompilerRunnerTest() {
|
||||||
@@ -10,7 +9,7 @@ abstract class AbstractIncrementalJsKlibCompilerRunnerTest : AbstractIncremental
|
|||||||
K2JSCompilerArguments().apply {
|
K2JSCompilerArguments().apply {
|
||||||
libraries = "build/js-ir-runtime/full-runtime.klib"
|
libraries = "build/js-ir-runtime/full-runtime.klib"
|
||||||
outputDir = destinationDir.path
|
outputDir = destinationDir.path
|
||||||
outputName = testDir.name
|
moduleName = testDir.name
|
||||||
outputFile = null
|
outputFile = null
|
||||||
sourceMap = false
|
sourceMap = false
|
||||||
irProduceKlibDir = false
|
irProduceKlibDir = false
|
||||||
|
|||||||
+2
-2
@@ -20,7 +20,7 @@ abstract class AbstractIncrementalMultiModuleJsKlibCompilerRunnerTest :
|
|||||||
K2JSCompilerArguments().apply {
|
K2JSCompilerArguments().apply {
|
||||||
libraries = STDLIB_DEPENDENCY
|
libraries = STDLIB_DEPENDENCY
|
||||||
outputDir = destinationDir.path
|
outputDir = destinationDir.path
|
||||||
outputName = testDir.name
|
moduleName = testDir.name
|
||||||
sourceMap = false
|
sourceMap = false
|
||||||
irProduceKlibDir = false
|
irProduceKlibDir = false
|
||||||
irProduceKlibFile = true
|
irProduceKlibFile = true
|
||||||
@@ -83,7 +83,7 @@ abstract class AbstractIncrementalMultiModuleJsKlibCompilerRunnerTest :
|
|||||||
|
|
||||||
libraries = sb.toString()
|
libraries = sb.toString()
|
||||||
outputDir = outFile.parentFile.path
|
outputDir = outFile.parentFile.path
|
||||||
outputName = outFile.nameWithoutExtension
|
moduleName = outFile.nameWithoutExtension
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|||||||
+1
-1
@@ -107,7 +107,7 @@ abstract class AbstractJsKlibLookupTrackerTest : AbstractJsLookupTrackerTest() {
|
|||||||
args.irProduceKlibDir = true
|
args.irProduceKlibDir = true
|
||||||
args.irOnly = true
|
args.irOnly = true
|
||||||
args.outputDir = outDir.normalize().absolutePath
|
args.outputDir = outDir.normalize().absolutePath
|
||||||
args.outputName = "out"
|
args.moduleName = "out"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -54,7 +54,7 @@ abstract class AbstractJsKlibBinaryCompatibilityTest : AbstractKlibBinaryCompati
|
|||||||
freeArgs = createFiles(module.versionFiles(version))
|
freeArgs = createFiles(module.versionFiles(version))
|
||||||
libraries = module.dependenciesToLibrariesArg(version = version)
|
libraries = module.dependenciesToLibrariesArg(version = version)
|
||||||
outputDir = workingDir.normalize().absolutePath
|
outputDir = workingDir.normalize().absolutePath
|
||||||
outputName = module.name(version)
|
moduleName = module.name(version)
|
||||||
irProduceKlibFile = true
|
irProduceKlibFile = true
|
||||||
irOnly = true
|
irOnly = true
|
||||||
irModuleName = module.name
|
irModuleName = module.name
|
||||||
@@ -69,7 +69,7 @@ abstract class AbstractJsKlibBinaryCompatibilityTest : AbstractKlibBinaryCompati
|
|||||||
freeArgs = createFiles(module.files) + runnerFunctionFile()
|
freeArgs = createFiles(module.files) + runnerFunctionFile()
|
||||||
libraries = module.dependenciesToLibrariesArg(version = 2)
|
libraries = module.dependenciesToLibrariesArg(version = 2)
|
||||||
outputDir = workingDir.normalize().absolutePath
|
outputDir = workingDir.normalize().absolutePath
|
||||||
outputName = module.name
|
moduleName = module.name
|
||||||
irProduceJs = true
|
irProduceJs = true
|
||||||
irOnly = true
|
irOnly = true
|
||||||
irModuleName = module.name
|
irModuleName = module.name
|
||||||
|
|||||||
+10
-5
@@ -37,6 +37,14 @@ interface CompilerJsOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOpti
|
|||||||
@get:org.gradle.api.tasks.Input
|
@get:org.gradle.api.tasks.Input
|
||||||
val moduleKind: org.gradle.api.provider.Property<org.jetbrains.kotlin.gradle.dsl.JsModuleKind>
|
val moduleKind: org.gradle.api.provider.Property<org.jetbrains.kotlin.gradle.dsl.JsModuleKind>
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base name of generated files
|
||||||
|
* Default value: null
|
||||||
|
*/
|
||||||
|
@get:org.gradle.api.tasks.Optional
|
||||||
|
@get:org.gradle.api.tasks.Input
|
||||||
|
val moduleName: org.gradle.api.provider.Property<kotlin.String>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Don't automatically include the default Kotlin/JS stdlib into compilation dependencies
|
* Don't automatically include the default Kotlin/JS stdlib into compilation dependencies
|
||||||
* Default value: true
|
* Default value: true
|
||||||
@@ -48,12 +56,9 @@ interface CompilerJsOptions : org.jetbrains.kotlin.gradle.dsl.CompilerCommonOpti
|
|||||||
* Destination *.js file for the compilation result
|
* Destination *.js file for the compilation result
|
||||||
* Default value: null
|
* Default value: null
|
||||||
*/
|
*/
|
||||||
@Deprecated(message = "Use task 'outputFileProperty' to specify location", level = DeprecationLevel.WARNING)
|
@Deprecated(message = "Only for legacy backend. For IR backend please use task.destinationDirectory and moduleName", level = DeprecationLevel.WARNING)
|
||||||
@get:org.gradle.api.tasks.Internal
|
@get:org.gradle.api.tasks.Internal
|
||||||
val outputFile: org.gradle.api.provider.Property<kotlin.String?>
|
val outputFile: org.gradle.api.provider.Property<kotlin.String>
|
||||||
|
|
||||||
@get:org.gradle.api.tasks.Input
|
|
||||||
val outputName: org.gradle.api.provider.Property<kotlin.String>
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Generate source map
|
* Generate source map
|
||||||
|
|||||||
+8
@@ -51,6 +51,14 @@ interface KotlinJsOptions : org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
|
|||||||
get() = options.moduleKind.get().moduleKindKotlinOption
|
get() = options.moduleKind.get().moduleKindKotlinOption
|
||||||
set(value) = options.moduleKind.set(value.moduleKindCompilerOption)
|
set(value) = options.moduleKind.set(value.moduleKindCompilerOption)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base name of generated files
|
||||||
|
* Default value: null
|
||||||
|
*/
|
||||||
|
var moduleName: kotlin.String?
|
||||||
|
get() = options.moduleName.orNull
|
||||||
|
set(value) = options.moduleName.set(value)
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Don't automatically include the default Kotlin/JS stdlib into compilation dependencies
|
* Don't automatically include the default Kotlin/JS stdlib into compilation dependencies
|
||||||
* Default value: true
|
* Default value: true
|
||||||
|
|||||||
+7
-2
@@ -21,11 +21,14 @@ internal abstract class CompilerJsOptionsDefault @javax.inject.Inject constructo
|
|||||||
override val moduleKind: org.gradle.api.provider.Property<org.jetbrains.kotlin.gradle.dsl.JsModuleKind> =
|
override val moduleKind: org.gradle.api.provider.Property<org.jetbrains.kotlin.gradle.dsl.JsModuleKind> =
|
||||||
objectFactory.property(org.jetbrains.kotlin.gradle.dsl.JsModuleKind::class.java).convention(org.jetbrains.kotlin.gradle.dsl.JsModuleKind.MODULE_PLAIN)
|
objectFactory.property(org.jetbrains.kotlin.gradle.dsl.JsModuleKind::class.java).convention(org.jetbrains.kotlin.gradle.dsl.JsModuleKind.MODULE_PLAIN)
|
||||||
|
|
||||||
|
override val moduleName: org.gradle.api.provider.Property<kotlin.String> =
|
||||||
|
objectFactory.property(kotlin.String::class.java)
|
||||||
|
|
||||||
override val noStdlib: org.gradle.api.provider.Property<kotlin.Boolean> =
|
override val noStdlib: org.gradle.api.provider.Property<kotlin.Boolean> =
|
||||||
objectFactory.property(kotlin.Boolean::class.java).convention(true)
|
objectFactory.property(kotlin.Boolean::class.java).convention(true)
|
||||||
|
|
||||||
@Deprecated(message = "Use task 'outputFileProperty' to specify location", level = DeprecationLevel.WARNING)
|
@Deprecated(message = "Only for legacy backend. For IR backend please use task.destinationDirectory and moduleName", level = DeprecationLevel.WARNING)
|
||||||
override val outputFile: org.gradle.api.provider.Property<kotlin.String?> =
|
override val outputFile: org.gradle.api.provider.Property<kotlin.String> =
|
||||||
objectFactory.property(kotlin.String::class.java)
|
objectFactory.property(kotlin.String::class.java)
|
||||||
|
|
||||||
override val sourceMap: org.gradle.api.provider.Property<kotlin.Boolean> =
|
override val sourceMap: org.gradle.api.provider.Property<kotlin.Boolean> =
|
||||||
@@ -49,6 +52,7 @@ internal abstract class CompilerJsOptionsDefault @javax.inject.Inject constructo
|
|||||||
args.main = main.get().mode
|
args.main = main.get().mode
|
||||||
args.metaInfo = metaInfo.get()
|
args.metaInfo = metaInfo.get()
|
||||||
args.moduleKind = moduleKind.get().kind
|
args.moduleKind = moduleKind.get().kind
|
||||||
|
args.moduleName = moduleName.orNull
|
||||||
args.noStdlib = noStdlib.get()
|
args.noStdlib = noStdlib.get()
|
||||||
args.outputFile = outputFile.orNull
|
args.outputFile = outputFile.orNull
|
||||||
args.sourceMap = sourceMap.get()
|
args.sourceMap = sourceMap.get()
|
||||||
@@ -64,6 +68,7 @@ internal abstract class CompilerJsOptionsDefault @javax.inject.Inject constructo
|
|||||||
args.main = org.jetbrains.kotlin.gradle.dsl.JsMainFunctionExecutionMode.CALL.mode
|
args.main = org.jetbrains.kotlin.gradle.dsl.JsMainFunctionExecutionMode.CALL.mode
|
||||||
args.metaInfo = true
|
args.metaInfo = true
|
||||||
args.moduleKind = org.jetbrains.kotlin.gradle.dsl.JsModuleKind.MODULE_PLAIN.kind
|
args.moduleKind = org.jetbrains.kotlin.gradle.dsl.JsModuleKind.MODULE_PLAIN.kind
|
||||||
|
args.moduleName = null
|
||||||
args.noStdlib = true
|
args.noStdlib = true
|
||||||
args.outputFile = null
|
args.outputFile = null
|
||||||
args.sourceMap = false
|
args.sourceMap = false
|
||||||
|
|||||||
+1
-1
@@ -22,7 +22,7 @@ internal const val PRODUCE_ZIPPED_KLIB = "-Xir-produce-klib-file"
|
|||||||
|
|
||||||
internal const val MINIMIZED_MEMBER_NAMES = "-Xir-minimized-member-names"
|
internal const val MINIMIZED_MEMBER_NAMES = "-Xir-minimized-member-names"
|
||||||
|
|
||||||
internal const val MODULE_NAME = "-Xir-module-name"
|
internal const val KLIB_MODULE_NAME = "-Xir-klib-module-name"
|
||||||
|
|
||||||
internal const val PER_MODULE = "-Xir-per-module"
|
internal const val PER_MODULE = "-Xir-per-module"
|
||||||
internal const val PER_MODULE_OUTPUT_NAME = "-Xir-per-module-output-name"
|
internal const val PER_MODULE_OUTPUT_NAME = "-Xir-per-module-output-name"
|
||||||
|
|||||||
+1
-2
@@ -6,7 +6,6 @@
|
|||||||
package org.jetbrains.kotlin.gradle.targets.js.ir
|
package org.jetbrains.kotlin.gradle.targets.js.ir
|
||||||
|
|
||||||
import org.gradle.api.Task
|
import org.gradle.api.Task
|
||||||
import org.gradle.api.file.RegularFile
|
|
||||||
import org.gradle.api.provider.Provider
|
import org.gradle.api.provider.Provider
|
||||||
import org.gradle.api.tasks.Copy
|
import org.gradle.api.tasks.Copy
|
||||||
import org.gradle.language.base.plugins.LifecycleBasePlugin
|
import org.gradle.language.base.plugins.LifecycleBasePlugin
|
||||||
@@ -207,7 +206,7 @@ abstract class KotlinBrowserJsIr @Inject constructor(target: KotlinJsIrTarget) :
|
|||||||
) { task ->
|
) { task ->
|
||||||
val entryFileProvider = binary.linkSyncTask.zip(binary.linkTask) { sync, link ->
|
val entryFileProvider = binary.linkSyncTask.zip(binary.linkTask) { sync, link ->
|
||||||
sync.destinationDir
|
sync.destinationDir
|
||||||
.resolve(link.compilerOptions.outputName.get() + ".js")
|
.resolve(link.compilerOptions.moduleName.get() + ".js")
|
||||||
}
|
}
|
||||||
|
|
||||||
task.description = "build webpack ${mode.name.toLowerCase()} bundle"
|
task.description = "build webpack ${mode.name.toLowerCase()} bundle"
|
||||||
|
|||||||
+1
-1
@@ -43,7 +43,7 @@ constructor(
|
|||||||
val linkTask = binary.linkTask
|
val linkTask = binary.linkTask
|
||||||
|
|
||||||
val compiledWasmFile = linkTask.map { link ->
|
val compiledWasmFile = linkTask.map { link ->
|
||||||
link.destinationDirectory.asFile.get().resolve(link.compilerOptions.outputName.get() + ".wasm")
|
link.destinationDirectory.asFile.get().resolve(link.compilerOptions.moduleName.get() + ".wasm")
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO This is temporary solution that overrides compiled files that triggers recompile and reoptimize wasm every time (when binaryen is enabled)
|
//TODO This is temporary solution that overrides compiled files that triggers recompile and reoptimize wasm every time (when binaryen is enabled)
|
||||||
|
|||||||
+1
-1
@@ -136,7 +136,7 @@ abstract class KotlinJsIrSubTarget(
|
|||||||
else -> error("Only JS and WASM supported for KotlinJsTest")
|
else -> error("Only JS and WASM supported for KotlinJsTest")
|
||||||
}
|
}
|
||||||
binary.linkTask
|
binary.linkTask
|
||||||
.flatMap { linkTask -> linkTask.compilerOptions.outputName }
|
.flatMap { linkTask -> linkTask.compilerOptions.moduleName }
|
||||||
.map { outputName ->
|
.map { outputName ->
|
||||||
copyTask.destinationDir
|
copyTask.destinationDir
|
||||||
.resolve(outputName + extension)
|
.resolve(outputName + extension)
|
||||||
|
|||||||
+2
-2
@@ -1011,10 +1011,10 @@ abstract class Kotlin2JsCompile @Inject constructor(
|
|||||||
if (outputFilePath != null) {
|
if (outputFilePath != null) {
|
||||||
val outputFile = File(outputFilePath)
|
val outputFile = File(outputFilePath)
|
||||||
args.outputDir = (if (outputFile.extension == "") outputFile else outputFile.parentFile).normalize().absolutePath
|
args.outputDir = (if (outputFile.extension == "") outputFile else outputFile.parentFile).normalize().absolutePath
|
||||||
args.outputName = outputFile.nameWithoutExtension
|
args.moduleName = outputFile.nameWithoutExtension
|
||||||
} else {
|
} else {
|
||||||
args.outputDir = destinationDirectory.get().asFile.normalize().absolutePath
|
args.outputDir = destinationDirectory.get().asFile.normalize().absolutePath
|
||||||
args.outputName = compilerOptions.outputName.get()
|
args.moduleName = compilerOptions.moduleName.get()
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
args.outputFile = outputFileProperty.get().absoluteFile.normalize().absolutePath
|
args.outputFile = outputFileProperty.get().absoluteFile.normalize().absolutePath
|
||||||
|
|||||||
+3
-5
@@ -5,7 +5,6 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.tasks.configuration
|
package org.jetbrains.kotlin.gradle.tasks.configuration
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinCompilationData
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.isMainCompilationData
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.isMainCompilationData
|
||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.*
|
import org.jetbrains.kotlin.gradle.targets.js.ir.*
|
||||||
@@ -14,7 +13,6 @@ import org.jetbrains.kotlin.gradle.targets.js.ir.PRODUCE_UNZIPPED_KLIB
|
|||||||
import org.jetbrains.kotlin.gradle.targets.js.ir.PRODUCE_ZIPPED_KLIB
|
import org.jetbrains.kotlin.gradle.targets.js.ir.PRODUCE_ZIPPED_KLIB
|
||||||
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
import org.jetbrains.kotlin.gradle.tasks.Kotlin2JsCompile
|
||||||
import org.jetbrains.kotlin.gradle.utils.klibModuleName
|
import org.jetbrains.kotlin.gradle.utils.klibModuleName
|
||||||
import java.io.File
|
|
||||||
|
|
||||||
internal typealias Kotlin2JsCompileConfig = BaseKotlin2JsCompileConfig<Kotlin2JsCompile>
|
internal typealias Kotlin2JsCompileConfig = BaseKotlin2JsCompileConfig<Kotlin2JsCompile>
|
||||||
|
|
||||||
@@ -34,14 +32,14 @@ internal open class BaseKotlin2JsCompileConfig<TASK : Kotlin2JsCompile>(
|
|||||||
|
|
||||||
configureAdditionalFreeCompilerArguments(task, compilation)
|
configureAdditionalFreeCompilerArguments(task, compilation)
|
||||||
|
|
||||||
task.compilerOptions.outputName.convention(
|
task.compilerOptions.moduleName.convention(
|
||||||
compilation.ownModuleName
|
compilation.ownModuleName
|
||||||
)
|
)
|
||||||
|
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
task.outputFileProperty.value(
|
task.outputFileProperty.value(
|
||||||
task.destinationDirectory.flatMap { dir ->
|
task.destinationDirectory.flatMap { dir ->
|
||||||
task.compilerOptions.outputName.map { name ->
|
task.compilerOptions.moduleName.map { name ->
|
||||||
dir.file(name).asFile
|
dir.file(name).asFile
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -84,7 +82,7 @@ internal open class BaseKotlin2JsCompileConfig<TASK : Kotlin2JsCompile>(
|
|||||||
} else {
|
} else {
|
||||||
"${project.name}_${compilation.compilationPurpose}"
|
"${project.name}_${compilation.compilationPurpose}"
|
||||||
}
|
}
|
||||||
add("$MODULE_NAME=${project.klibModuleName(baseName)}")
|
add("$KLIB_MODULE_NAME=${project.klibModuleName(baseName)}")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+1
-1
@@ -43,7 +43,7 @@ internal open class KotlinJsIrLinkConfig(
|
|||||||
.map { it.dir(binary.name) }
|
.map { it.dir(binary.name) }
|
||||||
.map { it.dir(NpmProject.DIST_FOLDER) }
|
.map { it.dir(NpmProject.DIST_FOLDER) }
|
||||||
)
|
)
|
||||||
task.compilerOptions.outputName.convention(project.provider { compilation.npmProject.name })
|
task.compilerOptions.moduleName.convention(project.provider { compilation.npmProject.name })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user