[Tests] Add kotlin-stdlib dependency in KLIB metadata compile utility
It's necessary, for instance, to compile custom contracts in common KTIJ-28668 KTIJ-26788
This commit is contained in:
committed by
Space Team
parent
3e5065fbba
commit
9373437cad
Vendored
-4
@@ -1,7 +1,3 @@
|
||||
// Issue: KTIJ-26788 (need stdlib for lazy)
|
||||
// KNM_K2_IGNORE
|
||||
// KNM_FE10_IGNORE
|
||||
|
||||
@a public class Annotations private @a constructor(private @property:a @param:a val c1: Int, @property:a @param:a val c2: Int) {
|
||||
@a() val hasValueArguments = 42
|
||||
|
||||
|
||||
Vendored
-4
@@ -1,7 +1,3 @@
|
||||
// Issue: KTIJ-26788 (need stdlib for Continuation)
|
||||
// KNM_K2_IGNORE
|
||||
// KNM_FE10_IGNORE
|
||||
|
||||
package test
|
||||
import kotlin.coroutines.*
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
|
||||
import org.jetbrains.kotlin.cli.common.messages.PrintingMessageCollector
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment
|
||||
import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot
|
||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime
|
||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys
|
||||
import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl
|
||||
import org.jetbrains.kotlin.config.languageVersionSettings
|
||||
@@ -50,6 +52,8 @@ object KlibTestUtil {
|
||||
)
|
||||
configuration.put(CommonConfigurationKeys.MODULE_NAME, libraryName)
|
||||
configuration.addKotlinSourceRoots(sourceFiles.map { it.absolutePath })
|
||||
val stdlibFile = ForTestCompileRuntime.stdlibCommonForTests()
|
||||
configuration.addJvmClasspathRoot(stdlibFile)
|
||||
|
||||
val rootDisposable = Disposer.newDisposable("Disposable for ${KlibTestUtil::class.simpleName}.compileCommonSourcesToKlib")
|
||||
val module = try {
|
||||
@@ -100,7 +104,8 @@ object KlibTestUtil {
|
||||
metadataVersion = KlibMetadataVersion.INSTANCE,
|
||||
exportKDoc = false,
|
||||
skipExpects = false,
|
||||
project = null
|
||||
project = null,
|
||||
includeOnlyModuleContent = true,
|
||||
)
|
||||
|
||||
val serializedMetadata = serializer.serializeModule(module)
|
||||
|
||||
Reference in New Issue
Block a user