diff --git a/kotlin-native/Interop/StubGenerator/build.gradle.kts b/kotlin-native/Interop/StubGenerator/build.gradle.kts index 514bb5463f9..89181027ff7 100644 --- a/kotlin-native/Interop/StubGenerator/build.gradle.kts +++ b/kotlin-native/Interop/StubGenerator/build.gradle.kts @@ -30,12 +30,11 @@ application { dependencies { implementation(project(":kotlin-native:Interop:Indexer")) implementation(project(":kotlin-native:utilities:basic-utils")) - api(project(path = ":kotlin-native:endorsedLibraries:kotlinx.cli", configuration = "jvmRuntimeElements")) + implementation(project(path = ":kotlin-native:endorsedLibraries:kotlinx.cli", configuration = "jvmRuntimeElements")) api(project(":kotlin-stdlib")) - api(project(path = ":kotlin-compiler", configuration = "runtimeElements")) - api(project(":kotlinx-metadata-klib")) - api(project(":native:kotlin-native-utils")) + implementation(project(":kotlinx-metadata-klib")) + implementation(project(":native:kotlin-native-utils")) implementation(project(":compiler:util")) implementation(project(":compiler:ir.serialization.common")) diff --git a/kotlin-native/backend.native/build.gradle b/kotlin-native/backend.native/build.gradle index 779d013cfb2..02cf2255f01 100644 --- a/kotlin-native/backend.native/build.gradle +++ b/kotlin-native/backend.native/build.gradle @@ -103,17 +103,17 @@ configurations { } dependencies { - trove4j_jar "org.jetbrains.intellij.deps:trove4j:1.0.20181211@jar" - kotlin_compiler_jar project(kotlinCompilerModule) + kotlin_compiler_jar kotlinCompilerModule kotlin_stdlib_jar kotlinStdLibModule use(DependenciesKt) { + trove4j_jar commonDependency("org.jetbrains.intellij.deps:trove4j") kotlin_reflect_jar commonDependency("org.jetbrains.kotlin:kotlin-reflect") } kotlin_script_runtime_jar project(":kotlin-script-runtime") compilerApi project(":kotlin-native:utilities:basic-utils") - compilerApi project(kotlinCompilerModule) + compilerImplementation project(":kotlin-compiler") compilerApi project(":native:kotlin-native-utils") compilerApi project(":core:descriptors") compilerApi project(":compiler:ir.tree") diff --git a/kotlin-native/backend.native/tests/build.gradle b/kotlin-native/backend.native/tests/build.gradle index fa724c9d231..621c7600304 100644 --- a/kotlin-native/backend.native/tests/build.gradle +++ b/kotlin-native/backend.native/tests/build.gradle @@ -42,8 +42,8 @@ configurations { } dependencies { - api 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.7' - cli_bc project(path: ':kotlin-native:backend.native', configuration: 'cli_bcApiElements') + // TODO: upgrade coroutines to common version + api DependenciesKt.commonDependency(project, "org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.7") } ext.testOutputRoot = rootProject.file("test.output").absolutePath @@ -6480,7 +6480,7 @@ fileCheckTest("filecheck_constants_merge") { } dependencies { - nopPluginApi project(kotlinCompilerModule) + nopPluginApi kotlinCompilerModule nopPluginApi project(":native:kotlin-native-utils") nopPluginApi project(":core:descriptors") nopPluginApi project(":compiler:ir.tree") @@ -6493,7 +6493,7 @@ dependencies { nopPluginApi project(":kotlin-util-klib-metadata") nopPluginApi project(":compiler:ir.serialization.common") - api project(kotlinCompilerModule) + implementation kotlinCompilerModule api project(path: ':kotlin-native:backend.native', configuration: 'cli_bcApiElements') api DependenciesKt.commonDependency(project, "junit") } diff --git a/kotlin-native/build.gradle b/kotlin-native/build.gradle index 493fcde4ef9..0fc45a08731 100644 --- a/kotlin-native/build.gradle +++ b/kotlin-native/build.gradle @@ -78,7 +78,7 @@ ext { KonanTarget.LINUX_MIPSEL32.INSTANCE ] - kotlinCompilerModule= [path: ":kotlin-compiler", configuration: "runtimeElements"] + kotlinCompilerModule = project(":kotlin-compiler") kotlinStdLibModule= project(":kotlin-stdlib") kotlinScriptRuntimeModule= project(":kotlin-script-runtime") kotlinUtilKliMetadatabModule= project(":kotlin-util-klib-metadata") diff --git a/kotlin-native/prepare/kotlin-native-embeddable-compiler/build.gradle.kts b/kotlin-native/prepare/kotlin-native-embeddable-compiler/build.gradle.kts index 5ed9a5ed081..0e250c99279 100644 --- a/kotlin-native/prepare/kotlin-native-embeddable-compiler/build.gradle.kts +++ b/kotlin-native/prepare/kotlin-native-embeddable-compiler/build.gradle.kts @@ -1,5 +1,4 @@ import org.jetbrains.kotlin.konan.target.HostManager -import org.jetbrains.kotlin.konan.target.KonanTarget.MACOS_ARM64 import org.jetbrains.kotlin.kotlinNativeDist plugins { @@ -16,7 +15,7 @@ val testCompilerClasspath by configurations.creating { } } -repositories{ +repositories { mavenCentral() } @@ -25,7 +24,7 @@ val testPlugin by configurations.creating val testPluginRuntime by configurations.creating fun DependencyHandlerScope.testPluginRuntime(any: Any) { - val notation = any as? String ?: return add(testPluginRuntime.name, any){} + val notation = any as? String ?: return add(testPluginRuntime.name, any) {} val (group, artifact, version) = notation.split(":") val platformName = HostManager.host.name val gradlePlatformName = platformName.replace("_", "") @@ -79,11 +78,15 @@ projectTest { * It's expected that test should be executed on CI, but currently this project under `kotlin.native.enabled` */ dependsOn(runtimeJar) - val runtimeJarPathProvider = project.provider { runtimeJar.get().outputs.files.asPath } + val runtimeJarPathProvider = project.provider { + val jar = runtimeJar.get().outputs.files.asPath + val trove = configurations.detachedConfiguration( + dependencies.module(commonDependency("org.jetbrains.intellij.deps:trove4j")) + ) + (trove.files + jar).joinToString(File.pathSeparatorChar.toString()) + } doFirst { systemProperty("compilerClasspath", runtimeJarPathProvider.get()) systemProperty("kotlin.native.home", kotlinNativeDist) } -} - - +} \ No newline at end of file diff --git a/kotlin-native/utilities/basic-utils/build.gradle.kts b/kotlin-native/utilities/basic-utils/build.gradle.kts index 0f8dd62de4d..6fd49743b54 100644 --- a/kotlin-native/utilities/basic-utils/build.gradle.kts +++ b/kotlin-native/utilities/basic-utils/build.gradle.kts @@ -21,6 +21,5 @@ tasks.named("compileKotlin") { dependencies { api(project(":kotlin-stdlib")) - implementation(project(project.project(":kotlin-native").extra["kotlinCompilerModule"] as Map)) implementation(project(":compiler:util")) } diff --git a/kotlin-native/utilities/cli-runner/build.gradle b/kotlin-native/utilities/cli-runner/build.gradle index 518d51f1735..ca82eceb076 100644 --- a/kotlin-native/utilities/cli-runner/build.gradle +++ b/kotlin-native/utilities/cli-runner/build.gradle @@ -23,4 +23,5 @@ dependencies { implementation project(':kotlin-native:Interop:StubGenerator') implementation project(':kotlin-native:klib') implementation project(":kotlin-native:utilities:basic-utils") + implementation project(path: ":kotlin-native:endorsedLibraries:kotlinx.cli", configuration: "jvmRuntimeElements") } diff --git a/native/native.tests/build.gradle.kts b/native/native.tests/build.gradle.kts index a77abb43777..53d5f594609 100644 --- a/native/native.tests/build.gradle.kts +++ b/native/native.tests/build.gradle.kts @@ -111,9 +111,16 @@ fun nativeTest(taskName: String, vararg tags: String) = projectTest( TestProperty.COMPILER_CLASSPATH.setUpFromGradleProperty(this) { val customNativeHome = TestProperty.KOTLIN_NATIVE_HOME.readGradleProperty(this) if (customNativeHome != null) { - file(customNativeHome).resolve("konan/lib/kotlin-native-compiler-embeddable.jar").absolutePath + file(customNativeHome).run { + val embeddableJar = resolve("konan/lib/kotlin-native-compiler-embeddable.jar").absolutePath + val troveJar = resolve("konan/lib/trove4j.jar").absolutePath + troveJar + File.pathSeparatorChar.toString() + embeddableJar + } } else { - val kotlinNativeCompilerEmbeddable = configurations.detachedConfiguration(dependencies.project(":kotlin-native-compiler-embeddable")) + val kotlinNativeCompilerEmbeddable = configurations.detachedConfiguration( + dependencies.project(":kotlin-native-compiler-embeddable"), + dependencies.module(commonDependency("org.jetbrains.intellij.deps:trove4j")) + ) dependsOn(kotlinNativeCompilerEmbeddable) kotlinNativeCompilerEmbeddable.files.joinToString(";") }