From f735396ffbee3c961824dbe461f03e403d79709a Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Mon, 24 Feb 2020 01:03:54 +0300 Subject: [PATCH] Build: Make toolsJarApi() helper for JPS build --- buildSrc/src/main/kotlin/dependencies.kt | 6 ++++++ compiler/cli/build.gradle.kts | 2 +- idea/jvm-debugger/eval4j/build.gradle.kts | 4 ++-- idea/jvm-debugger/jvm-debugger-core/build.gradle.kts | 2 +- idea/jvm-debugger/jvm-debugger-evaluation/build.gradle.kts | 2 +- idea/jvm-debugger/jvm-debugger-sequence/build.gradle.kts | 2 +- idea/jvm-debugger/jvm-debugger-util/build.gradle.kts | 2 +- plugins/kapt3/kapt3-base/build.gradle.kts | 4 ++-- plugins/kapt3/kapt3-compiler/build.gradle.kts | 4 ++-- 9 files changed, 17 insertions(+), 11 deletions(-) diff --git a/buildSrc/src/main/kotlin/dependencies.kt b/buildSrc/src/main/kotlin/dependencies.kt index c1c9b8c2355..f62aca7bd9f 100644 --- a/buildSrc/src/main/kotlin/dependencies.kt +++ b/buildSrc/src/main/kotlin/dependencies.kt @@ -133,6 +133,12 @@ fun Project.firstFromJavaHomeThatExists(vararg paths: String, jdkHome: File = Fi logger.warn("Cannot find file by paths: ${paths.toList()} in $jdkHome") } +fun Project.toolsJarApi(): Any = + if (kotlinBuildProperties.isInJpsBuildIdeaSync) + files(toolsJarFile() ?: error("tools.jar is not found!")) + else + dependencies.project(":dependencies:tools-jar-api") + fun Project.toolsJar(): FileCollection = files(toolsJarFile() ?: error("tools.jar is not found!")) fun Project.toolsJarFile(jdkHome: File = File(this.property("JDK_18") as String)): File? = diff --git a/compiler/cli/build.gradle.kts b/compiler/cli/build.gradle.kts index 9e0dddbf576..1a68c855b0d 100644 --- a/compiler/cli/build.gradle.kts +++ b/compiler/cli/build.gradle.kts @@ -30,7 +30,7 @@ dependencies { compile(project(":kotlin-util-io")) compile(project(":compiler:ir.serialization.common")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) compileOnly(intellijCoreDep()) { includeJars("intellij-core") } compileOnly(intellijDep()) { includeIntellijCoreJarDependencies(project) } diff --git a/idea/jvm-debugger/eval4j/build.gradle.kts b/idea/jvm-debugger/eval4j/build.gradle.kts index fdd77decb3f..6fe44b11665 100644 --- a/idea/jvm-debugger/eval4j/build.gradle.kts +++ b/idea/jvm-debugger/eval4j/build.gradle.kts @@ -7,10 +7,10 @@ dependencies { compile(kotlinStdlib()) compile(project(":compiler:backend")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) compileOnly(intellijCoreDep()) { includeJars("intellij-core", "asm-all", rootProject = rootProject) } - testCompileOnly(project(":dependencies:tools-jar-api")) + testCompileOnly(toolsJarApi()) testCompile(project(":kotlin-test:kotlin-test-junit")) testCompile(commonDep("junit:junit")) testCompile(intellijDep()) { includeJars("asm-all", rootProject = rootProject) } diff --git a/idea/jvm-debugger/jvm-debugger-core/build.gradle.kts b/idea/jvm-debugger/jvm-debugger-core/build.gradle.kts index ce69d4d2930..e78067d314c 100644 --- a/idea/jvm-debugger/jvm-debugger-core/build.gradle.kts +++ b/idea/jvm-debugger/jvm-debugger-core/build.gradle.kts @@ -11,7 +11,7 @@ dependencies { compile(project(":idea:ide-common")) compile(project(":idea:jvm-debugger:jvm-debugger-util")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) compileOnly(intellijDep()) Platform[192].orHigher { diff --git a/idea/jvm-debugger/jvm-debugger-evaluation/build.gradle.kts b/idea/jvm-debugger/jvm-debugger-evaluation/build.gradle.kts index 9b8862d303d..bd8d836bafa 100644 --- a/idea/jvm-debugger/jvm-debugger-evaluation/build.gradle.kts +++ b/idea/jvm-debugger/jvm-debugger-evaluation/build.gradle.kts @@ -10,7 +10,7 @@ dependencies { compile(project(":idea:idea-j2k")) compile(project(":idea:jvm-debugger:jvm-debugger-util")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) Platform[192].orHigher { compileOnly(intellijPluginDep("java")) } diff --git a/idea/jvm-debugger/jvm-debugger-sequence/build.gradle.kts b/idea/jvm-debugger/jvm-debugger-sequence/build.gradle.kts index aa5730ffba4..000cc3c6d66 100644 --- a/idea/jvm-debugger/jvm-debugger-sequence/build.gradle.kts +++ b/idea/jvm-debugger/jvm-debugger-sequence/build.gradle.kts @@ -7,7 +7,7 @@ dependencies { compile(project(":compiler:backend")) compile(project(":idea:ide-common")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) compileOnly(intellijDep()) Platform[192].orHigher { compileOnly(intellijPluginDep("java")) diff --git a/idea/jvm-debugger/jvm-debugger-util/build.gradle.kts b/idea/jvm-debugger/jvm-debugger-util/build.gradle.kts index 0534d3d5c5f..a81fb8454a5 100644 --- a/idea/jvm-debugger/jvm-debugger-util/build.gradle.kts +++ b/idea/jvm-debugger/jvm-debugger-util/build.gradle.kts @@ -11,7 +11,7 @@ dependencies { // TODO: get rid of this compile(project(":idea:jvm-debugger:eval4j")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) Platform[192].orHigher { compileOnly(intellijPluginDep("java")) diff --git a/plugins/kapt3/kapt3-base/build.gradle.kts b/plugins/kapt3/kapt3-base/build.gradle.kts index 35a1578cbdb..74eac71849c 100644 --- a/plugins/kapt3/kapt3-base/build.gradle.kts +++ b/plugins/kapt3/kapt3-base/build.gradle.kts @@ -5,10 +5,10 @@ plugins { dependencies { compile(kotlinStdlib()) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) testCompile(commonDep("junit:junit")) - testCompileOnly(project(":dependencies:tools-jar-api")) + testCompileOnly(toolsJarApi()) } sourceSets { diff --git a/plugins/kapt3/kapt3-compiler/build.gradle.kts b/plugins/kapt3/kapt3-compiler/build.gradle.kts index 5434cad1588..effc013bf75 100644 --- a/plugins/kapt3/kapt3-compiler/build.gradle.kts +++ b/plugins/kapt3/kapt3-compiler/build.gradle.kts @@ -27,7 +27,7 @@ dependencies { compile(project(":compiler:frontend.java")) compile(project(":compiler:plugin-api")) - compileOnly(project(":dependencies:tools-jar-api")) + compileOnly(toolsJarApi()) compileOnly(project(":kotlin-annotation-processing-cli")) compileOnly(project(":kotlin-annotation-processing-base")) compileOnly(project(":kotlin-annotation-processing-runtime")) @@ -40,7 +40,7 @@ dependencies { testCompile(commonDep("junit:junit")) testCompile(project(":kotlin-annotation-processing-runtime")) - testCompileOnly(project(":dependencies:tools-jar-api")) + testCompileOnly(toolsJarApi()) testRuntimeOnly(toolsJar()) embedded(project(":kotlin-annotation-processing-runtime")) { isTransitive = false }