From f959f275e80f20ef481343a82bff445587a1582d Mon Sep 17 00:00:00 2001 From: Ilya Matveev Date: Tue, 28 Apr 2020 17:20:22 +0700 Subject: [PATCH] [build] Create a separate utility module for basic things The :utilities module contains some logic that depends on all other parts of the K/N toolchain. But we also need a module containing a basic logic that all other parts of the toolchain depends on. Historically such logic is located in the :shared module. However having code with complex dependencies in :shared may slow down a composite build import. So this patch puts all content of :utilities into a new module :utilities:cli-runner and creates a new :utilities:basic-utils module. Later some logic from the :shared module may be moved into this new module. --- build.gradle | 3 ++- gradle/kotlinGradlePlugin.gradle | 1 + settings.gradle | 3 ++- utilities/basic-utils/build.gradle.kts | 24 +++++++++++++++++++ utilities/{ => cli-runner}/build.gradle | 0 .../utilities/GeneratePlatformLibraries.kt | 0 .../kotlin/cli/utilities/InteropCompiler.kt | 0 .../jetbrains/kotlin/cli/utilities/main.kt | 0 8 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 utilities/basic-utils/build.gradle.kts rename utilities/{ => cli-runner}/build.gradle (100%) rename utilities/{ => cli-runner}/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt (100%) rename utilities/{ => cli-runner}/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/InteropCompiler.kt (100%) rename utilities/{ => cli-runner}/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/main.kt (100%) diff --git a/build.gradle b/build.gradle index ca6d857e137..aaf08e7d937 100644 --- a/build.gradle +++ b/build.gradle @@ -216,7 +216,8 @@ dependencies { distPack project(':Interop:Indexer') distPack project(':Interop:StubGenerator') distPack project(':backend.native') - distPack project(':utilities') + distPack project(':utilities:cli-runner') + distPack project(':utilities:basic-utils') distPack project(':klib') distPack project(path: ':endorsedLibraries:kotlinx.cli', configuration: "jvmRuntimeElements") distPack "org.jetbrains.kotlin:kotlin-native-shared:$konanVersion" diff --git a/gradle/kotlinGradlePlugin.gradle b/gradle/kotlinGradlePlugin.gradle index 8ed6b6e3dae..edbc217172b 100644 --- a/gradle/kotlinGradlePlugin.gradle +++ b/gradle/kotlinGradlePlugin.gradle @@ -25,6 +25,7 @@ configurations { kotlinCompilerClasspath } project.repositories { + maven { url buildKotlinCompilerRepo } maven { url kotlinCompilerRepo } diff --git a/settings.gradle b/settings.gradle index 0e40883bb76..da9b729bf54 100644 --- a/settings.gradle +++ b/settings.gradle @@ -29,7 +29,8 @@ include ':runtime' include ':common' include ':backend.native:tests' include ':backend.native:debugger-tests' -include ':utilities' +include ':utilities:basic-utils' +include ':utilities:cli-runner' include 'dependencyPacker' include ':performance' diff --git a/utilities/basic-utils/build.gradle.kts b/utilities/basic-utils/build.gradle.kts new file mode 100644 index 00000000000..e655d8d6cee --- /dev/null +++ b/utilities/basic-utils/build.gradle.kts @@ -0,0 +1,24 @@ +/* + * Copyright 2010-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license + * that can be found in the LICENSE file. + */ + +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + +buildscript { + apply(from = "$rootDir/gradle/kotlinGradlePlugin.gradle") +} + +plugins { + kotlin("jvm") +} + +tasks.named("compileKotlin") { + kotlinOptions { + freeCompilerArgs = listOf("-Xskip-metadata-version-check") + } +} + +dependencies { + +} diff --git a/utilities/build.gradle b/utilities/cli-runner/build.gradle similarity index 100% rename from utilities/build.gradle rename to utilities/cli-runner/build.gradle diff --git a/utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt b/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt similarity index 100% rename from utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt rename to utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/GeneratePlatformLibraries.kt diff --git a/utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/InteropCompiler.kt b/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/InteropCompiler.kt similarity index 100% rename from utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/InteropCompiler.kt rename to utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/InteropCompiler.kt diff --git a/utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/main.kt b/utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/main.kt similarity index 100% rename from utilities/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/main.kt rename to utilities/cli-runner/src/main/kotlin/org/jetbrains/kotlin/cli/utilities/main.kt