[CHERRY PICKED FROM IJ] [kotlin] compiler index: fix initialization issues
* move some constants to kotlin.jps-common module * depends on kotlin.jps-common instead of kotlin.jps-plugin ^KTIJ-16709 ^KTIJ-18939 Fixed ^EA-297958 Fixed GitOrigin-RevId: 305b67aeb75a4c55f734bf2a773b36b0f0e50ac9 Original commit: https://github.com/JetBrains/intellij-community/commit/e7e6e8b26c159b828bbe015a8dc700bc7d88a673
This commit is contained in:
committed by
Nikita Bobko
parent
b141d6b936
commit
edb619a004
@@ -22,4 +22,6 @@ object SettingConstants {
|
||||
const val KOTLIN_TO_JVM_COMPILER_ARGUMENTS_SECTION = "Kotlin2JvmCompilerArguments"
|
||||
const val KOTLIN_COMPILER_SETTINGS_SECTION = "KotlinCompilerSettings"
|
||||
const val KOTLIN_COMPILER_SETTINGS_FILE = "kotlinc.xml"
|
||||
const val KOTLIN_COMPILER_REFERENCE_INDEX_BUILDER_ID = "kotlin.compiler.ref.index"
|
||||
const val KOTLIN_DATA_CONTAINER_ID = "kotlin-data-container"
|
||||
}
|
||||
|
||||
+2
-2
@@ -13,6 +13,7 @@ import org.jetbrains.jps.incremental.CompileContext
|
||||
import org.jetbrains.jps.incremental.ModuleBuildTarget
|
||||
import org.jetbrains.jps.incremental.ModuleLevelBuilder
|
||||
import org.jetbrains.jps.incremental.messages.CustomBuilderMessage
|
||||
import org.jetbrains.kotlin.config.SettingConstants
|
||||
|
||||
/**
|
||||
* Based on [org.jetbrains.jps.backwardRefs.JavaBackwardReferenceIndexBuilder]
|
||||
@@ -41,7 +42,7 @@ class KotlinCompilerReferenceIndexBuilder : ModuleLevelBuilder(BuilderCategory.C
|
||||
|
||||
if (allAreDummyOrCompiled) {
|
||||
context.processMessage(
|
||||
CustomBuilderMessage(BUILDER_ID, MESSAGE_TYPE, module.name)
|
||||
CustomBuilderMessage(SettingConstants.KOTLIN_COMPILER_REFERENCE_INDEX_BUILDER_ID, MESSAGE_TYPE, module.name)
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -53,6 +54,5 @@ class KotlinCompilerReferenceIndexBuilder : ModuleLevelBuilder(BuilderCategory.C
|
||||
|
||||
companion object {
|
||||
private const val MESSAGE_TYPE = "processed module"
|
||||
const val BUILDER_ID = "kotlin.compiler.ref.index"
|
||||
}
|
||||
}
|
||||
+7
-8
@@ -22,23 +22,22 @@ import org.jetbrains.jps.incremental.CompileContext
|
||||
import org.jetbrains.jps.indices.IgnoredFileIndex
|
||||
import org.jetbrains.jps.indices.ModuleExcludeIndex
|
||||
import org.jetbrains.jps.model.JpsModel
|
||||
import org.jetbrains.kotlin.config.SettingConstants
|
||||
import java.io.File
|
||||
|
||||
private val KOTLIN_DATA_CONTAINER = "kotlin-data-container"
|
||||
|
||||
object KotlinDataContainerTargetType : BuildTargetType<KotlinDataContainerTarget>(KOTLIN_DATA_CONTAINER) {
|
||||
object KotlinDataContainerTargetType : BuildTargetType<KotlinDataContainerTarget>(SettingConstants.KOTLIN_DATA_CONTAINER_ID) {
|
||||
override fun computeAllTargets(model: JpsModel): List<KotlinDataContainerTarget> = listOf(KotlinDataContainerTarget)
|
||||
|
||||
override fun createLoader(model: JpsModel): BuildTargetLoader<KotlinDataContainerTarget> =
|
||||
object : BuildTargetLoader<KotlinDataContainerTarget>() {
|
||||
override fun createTarget(targetId: String): KotlinDataContainerTarget? = KotlinDataContainerTarget
|
||||
override fun createTarget(targetId: String): KotlinDataContainerTarget = KotlinDataContainerTarget
|
||||
}
|
||||
}
|
||||
|
||||
// Fake target to store data per project for incremental compilation
|
||||
object KotlinDataContainerTarget : BuildTarget<BuildRootDescriptor>(KotlinDataContainerTargetType) {
|
||||
override fun getId(): String? = KOTLIN_DATA_CONTAINER
|
||||
override fun getPresentableName(): String = KOTLIN_DATA_CONTAINER
|
||||
override fun getId(): String = SettingConstants.KOTLIN_DATA_CONTAINER_ID
|
||||
override fun getPresentableName(): String = SettingConstants.KOTLIN_DATA_CONTAINER_ID
|
||||
|
||||
override fun computeRootDescriptors(
|
||||
model: JpsModel?,
|
||||
@@ -50,7 +49,7 @@ object KotlinDataContainerTarget : BuildTarget<BuildRootDescriptor>(KotlinDataCo
|
||||
override fun getOutputRoots(context: CompileContext): Collection<File> {
|
||||
val dataManager = context.projectDescriptor.dataManager
|
||||
val storageRoot = dataManager.dataPaths.dataStorageRoot
|
||||
return listOf(File(storageRoot, KOTLIN_DATA_CONTAINER))
|
||||
return listOf(File(storageRoot, SettingConstants.KOTLIN_DATA_CONTAINER_ID))
|
||||
}
|
||||
|
||||
override fun findRootDescriptor(rootId: String?, rootIndex: BuildRootIndex?): BuildRootDescriptor? = null
|
||||
@@ -58,5 +57,5 @@ object KotlinDataContainerTarget : BuildTarget<BuildRootDescriptor>(KotlinDataCo
|
||||
override fun computeDependencies(
|
||||
targetRegistry: BuildTargetRegistry?,
|
||||
outputIndex: TargetOutputIndex?
|
||||
): Collection<BuildTarget<*>>? = listOf()
|
||||
): Collection<BuildTarget<*>> = listOf()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user