From 893582fa65d2318ffcba437a5e54d00dc900c5f3 Mon Sep 17 00:00:00 2001 From: Roman Artemev Date: Wed, 24 Nov 2021 19:24:14 +0300 Subject: [PATCH] [JS IR] Setup config about path relativeness and normalization in config --- .../jetbrains/kotlin/cli/js/K2JsIrCompiler.kt | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt b/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt index 113ff2b318b..03f1e28878d 100644 --- a/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt +++ b/compiler/cli/cli-js/src/org/jetbrains/kotlin/cli/js/K2JsIrCompiler.kt @@ -29,21 +29,21 @@ import org.jetbrains.kotlin.cli.common.messages.MessageUtil import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment import org.jetbrains.kotlin.cli.jvm.plugins.PluginCliParser -import org.jetbrains.kotlin.config.* +import org.jetbrains.kotlin.config.CommonConfigurationKeys +import org.jetbrains.kotlin.config.CompilerConfiguration +import org.jetbrains.kotlin.config.IncrementalCompilation +import org.jetbrains.kotlin.config.Services import org.jetbrains.kotlin.incremental.components.ExpectActualTracker import org.jetbrains.kotlin.incremental.components.LookupTracker import org.jetbrains.kotlin.incremental.js.IncrementalDataProvider import org.jetbrains.kotlin.incremental.js.IncrementalNextRoundChecker import org.jetbrains.kotlin.incremental.js.IncrementalResultsConsumer import org.jetbrains.kotlin.ir.backend.js.* -import org.jetbrains.kotlin.ir.backend.js.ic.actualizeCacheForModule -import org.jetbrains.kotlin.ir.backend.js.ic.buildCache -import org.jetbrains.kotlin.ir.backend.js.ic.checkCaches -import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl import org.jetbrains.kotlin.ir.backend.js.codegen.JsGenerationGranularity import org.jetbrains.kotlin.ir.backend.js.ic.* import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.IrModuleToJsTransformer import org.jetbrains.kotlin.ir.backend.js.transformers.irToJs.IrModuleToJsTransformerTmp +import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImpl import org.jetbrains.kotlin.ir.declarations.impl.IrFactoryImplForJsIC import org.jetbrains.kotlin.ir.declarations.persistent.PersistentIrFactory import org.jetbrains.kotlin.js.analyzer.JsAnalysisResult @@ -144,6 +144,12 @@ class K2JsIrCompiler : CLICompiler() { configuration.addKotlinSourceRoot(arg, commonSources.contains(arg)) } + arguments.relativePathBases?.let { + configuration.put(CommonConfigurationKeys.KLIB_RELATIVE_PATH_BASES, it.toList()) + } + + configuration.put(CommonConfigurationKeys.KLIB_NORMALIZE_ABSOLUTE_PATH, arguments.normalizeAbsolutePath) + val environmentForJS = KotlinCoreEnvironment.createForProduction(rootDisposable, configuration, EnvironmentConfigFiles.JS_CONFIG_FILES) val projectJs = environmentForJS.project @@ -258,7 +264,7 @@ class K2JsIrCompiler : CLICompiler() { generateKLib( sourceModule, - irFactory = PersistentIrFactory(), // TODO IrFactoryImpl? + irFactory = IrFactoryImpl, outputKlibPath = outputFile.path, nopack = arguments.irProduceKlibDir, jsOutputName = arguments.irPerModuleOutputName,