From e8202c335513ce879cf58012a842c13f168dfc58 Mon Sep 17 00:00:00 2001 From: Alexander Shabalin Date: Sat, 2 Mar 2024 13:48:17 +0100 Subject: [PATCH] [K/N] Simplify dependencies around kotlin-native/ --- .../ir/backend.native/build.gradle.kts | 59 +++++++++---------- kotlin-native/build.gradle | 12 +--- .../utilities/cli-runner/build.gradle.kts | 14 ++--- native/cli-native/build.gradle.kts | 8 ++- 4 files changed, 42 insertions(+), 51 deletions(-) diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/build.gradle.kts b/kotlin-native/backend.native/compiler/ir/backend.native/build.gradle.kts index 103a9d07e84..4fc79d710c2 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/build.gradle.kts +++ b/kotlin-native/backend.native/compiler/ir/backend.native/build.gradle.kts @@ -5,46 +5,41 @@ plugins { } dependencies { - api(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil")) { isTransitive = false } - api(commonDependency("org.jetbrains.intellij.deps:log4j")) { isTransitive = false } - api(commonDependency("org.jetbrains.intellij.deps:jdom")) - api(commonDependency("com.fasterxml:aalto-xml")) { isTransitive = false } - api(commonDependency("org.codehaus.woodstox:stax2-api")) { isTransitive = false } - - api(project(":native:objcexport-header-generator")) - api(project(":native:objcexport-header-generator-k1")) - api(project(":native:base")) - - api(project(":kotlin-native:llvmInterop", "llvmInteropStubs")) - api(project(":native:kotlin-native-utils")) - api(project(":core:descriptors")) - api(project(":core:compiler.common.native")) api(project(":compiler:ir.tree")) - api(project(":compiler:ir.backend.common")) - api(project(":compiler:ir.inline")) - api(project(":compiler:ir.objcinterop")) - api(project(":compiler:util")) - api(project(":native:frontend.native")) - api(project(":compiler:cli-common")) - api(project(":compiler:cli-base")) - api(project(":compiler:cli")) - api(project(":kotlin-util-klib")) - api(project(":kotlin-util-klib-metadata")) - api(project(":compiler:ir.serialization.common")) - api(project(":compiler:ir.serialization.native")) - api(project(":compiler:fir:fir-serialization")) - api(project(":compiler:fir:native")) - api(project(":compiler:ir.psi2ir")) - api(intellijCore()) compileOnly(jpsModel()) + + implementation(commonDependency("com.fasterxml:aalto-xml")) { isTransitive = false } + implementation(commonDependency("org.codehaus.woodstox:stax2-api")) { isTransitive = false } + implementation(commonDependency("org.jetbrains.intellij.deps.fastutil:intellij-deps-fastutil")) { isTransitive = false } + implementation(commonDependency("org.jetbrains.intellij.deps:jdom")) + implementation(commonDependency("org.jetbrains.intellij.deps:log4j")) { isTransitive = false } + implementation(intellijCore()) + implementation(project(":compiler:cli")) + implementation(project(":compiler:fir:fir-serialization")) + implementation(project(":compiler:fir:native")) + implementation(project(":compiler:ir.backend.common")) + implementation(project(":compiler:ir.inline")) + implementation(project(":compiler:ir.objcinterop")) + implementation(project(":compiler:ir.psi2ir")) + implementation(project(":compiler:ir.serialization.common")) + implementation(project(":compiler:ir.serialization.native")) + implementation(project(":compiler:util")) + implementation(project(":core:compiler.common.native")) + implementation(project(":core:descriptors")) + implementation(project(":kotlin-native:llvmInterop", "llvmInteropStubs")) + implementation(project(":kotlin-util-klib")) + implementation(project(":kotlin-util-klib-metadata")) + implementation(project(":native:base")) + implementation(project(":native:frontend.native")) + implementation(project(":native:kotlin-native-utils")) + implementation(project(":native:objcexport-header-generator")) + implementation(project(":native:objcexport-header-generator-k1")) } tasks.withType().configureEach { compilerOptions.optIn.addAll( listOf( - "kotlin.RequiresOptIn", - "kotlinx.cinterop.BetaInteropApi", "kotlinx.cinterop.ExperimentalForeignApi", "org.jetbrains.kotlin.backend.konan.InternalKotlinNativeApi", "org.jetbrains.kotlin.ir.symbols.UnsafeDuringIrConstructionAPI" diff --git a/kotlin-native/build.gradle b/kotlin-native/build.gradle index 58f5188f988..7af2548bcba 100644 --- a/kotlin-native/build.gradle +++ b/kotlin-native/build.gradle @@ -179,18 +179,8 @@ apply plugin: CompilationDatabasePlugin dependencies { ftpAntTask 'org.apache.ant:ant-commons-net:1.9.9' - distPack project(':kotlin-native:Interop:Runtime') - distPack project(':kotlin-native:Interop:Indexer') - distPack project(':kotlin-native:Interop:StubGenerator') distPack project(':kotlin-native:Interop:Skia') - distPack project(':kotlin-native:backend.native') - distPack project(':native:objcexport-header-generator') - distPack project(':native:objcexport-header-generator-k1') - distPack project(':native:base') - distPack project(':kotlin-native:utilities:cli-runner') - distPack project(':kotlin-native:klib') - distPack project(':native:cli-native') - distPack project(path: ':kotlin-native:endorsedLibraries:kotlinx.cli', configuration: "jvmRuntimeElements") + distPack project(path: ':kotlin-native:utilities:cli-runner', configuration: 'runtimeElements') commonSources project(path: ':kotlin-stdlib', configuration: 'metadataSourcesElements') commonSources project(path: ':kotlin-test', configuration: 'metadataSourcesElements') compilationDatabase project(":kotlin-native:common") diff --git a/kotlin-native/utilities/cli-runner/build.gradle.kts b/kotlin-native/utilities/cli-runner/build.gradle.kts index e02b1e0ce5c..3c62541c477 100644 --- a/kotlin-native/utilities/cli-runner/build.gradle.kts +++ b/kotlin-native/utilities/cli-runner/build.gradle.kts @@ -5,16 +5,16 @@ plugins { } dependencies { - implementation(kotlinStdlib()) - implementation(project(":kotlin-native:backend.native")) - implementation(project(":native:cli-native")) implementation(project(":compiler:cli-common")) + implementation(project(":compiler:util")) implementation(project(":kotlin-native:Interop:StubGenerator")) - implementation(project(":kotlin-native:klib")) - implementation(project(":kotlin-native:endorsedLibraries:kotlinx.cli", configuration = "jvmRuntimeElements")) - implementation(project(":native:kotlin-native-utils")) - implementation(project(":kotlin-native:common", configuration = "filesInteropStubs")) + implementation(project(":kotlin-native:backend.native")) // used by generatePlatformLibraries command for cache generation implementation(project(":kotlin-native:common", configuration = "envInteropStubs")) + implementation(project(":kotlin-native:common", configuration = "filesInteropStubs")) + implementation(project(":kotlin-native:endorsedLibraries:kotlinx.cli", configuration = "jvmRuntimeElements")) + implementation(project(":kotlin-native:klib")) + implementation(project(":native:cli-native")) + implementation(project(":native:kotlin-native-utils")) } tasks.withType().configureEach { diff --git a/native/cli-native/build.gradle.kts b/native/cli-native/build.gradle.kts index c71c5eaa997..f0186851676 100644 --- a/native/cli-native/build.gradle.kts +++ b/native/cli-native/build.gradle.kts @@ -3,7 +3,13 @@ plugins { } dependencies { - api(project(":kotlin-native:backend.native")) + compileOnly(intellijCore()) + + implementation(project(":compiler:cli")) + implementation(project(":compiler:cli-common")) + implementation(project(":compiler:util")) + implementation(project(":kotlin-native:backend.native")) + implementation(project(":native:frontend.native")) } sourceSets {