[CLI] Add CLI arguments to pass HMPP module structure to the compiler

^KT-56209
This commit is contained in:
Dmitriy Novozhilov
2023-02-08 18:14:12 +02:00
committed by Space Team
parent ec59cc050c
commit 77caa31640
31 changed files with 504 additions and 0 deletions
@@ -56,6 +56,9 @@ object CommonConfigurationKeys {
@JvmField
val USE_LIGHT_TREE = CompilerConfigurationKey.create<Boolean>("light tree")
@JvmField
val HMPP_MODULE_STRUCTURE = CompilerConfigurationKey.create<HmppCliModuleStructure>("HMPP module structure")
@JvmField
val EXPECT_ACTUAL_LINKER = CompilerConfigurationKey.create<Boolean>("Experimental expect/actual linker")
@@ -0,0 +1,21 @@
/*
* Copyright 2010-2023 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.config
class HmppCliModule(val name: String, val sources: Set<String>) {
override fun toString(): String {
return "Module $name"
}
}
/**
* All [modules] are sorted in reversed topological order
* (module without dependencies will be the first)
*/
class HmppCliModuleStructure(
val modules: List<HmppCliModule>,
val dependenciesMap: Map<HmppCliModule, List<HmppCliModule>>
)