diff --git a/buildSrc/src/main/kotlin/sourceSets.kt b/buildSrc/src/main/kotlin/sourceSets.kt index c921eff6b3b..dc8fcaddd1e 100644 --- a/buildSrc/src/main/kotlin/sourceSets.kt +++ b/buildSrc/src/main/kotlin/sourceSets.kt @@ -37,19 +37,27 @@ val SourceSet.projectDefault: Project.() -> Unit } } -val SourceSet.generatedTestDir: Project.() -> Unit +val SourceSet.generatedDir: Project.() -> Unit get() = { - val generationRoot = projectDir.resolve("tests-gen") - java.srcDir(generationRoot.name) - - if (kotlinBuildProperties.isInJpsBuildIdeaSync) { - apply(plugin = "idea") - idea { - this.module.generatedSourceDirs.add(generationRoot) - } - } + generatedDir(this, "gen") } +val SourceSet.generatedTestDir: Project.() -> Unit + get() = { + generatedDir(this, "tests-gen") + } + +private fun SourceSet.generatedDir(project: Project, dirName: String) { + val generationRoot = project.projectDir.resolve(dirName) + java.srcDir(generationRoot.name) + + if (project.kotlinBuildProperties.isInJpsBuildIdeaSync) { + project.apply(plugin = "idea") + project.idea { + this.module.generatedSourceDirs.add(generationRoot) + } + } +} val Project.sourceSets: SourceSetContainer get() = javaPluginExtension().sourceSets diff --git a/compiler/fir/checkers/build.gradle.kts b/compiler/fir/checkers/build.gradle.kts index f67b4a58ebb..1af04aeac2f 100644 --- a/compiler/fir/checkers/build.gradle.kts +++ b/compiler/fir/checkers/build.gradle.kts @@ -20,7 +20,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } "test" { none() } } diff --git a/compiler/fir/checkers/checkers.js/build.gradle.kts b/compiler/fir/checkers/checkers.js/build.gradle.kts index 65f103341bb..e4e1f8e1557 100644 --- a/compiler/fir/checkers/checkers.js/build.gradle.kts +++ b/compiler/fir/checkers/checkers.js/build.gradle.kts @@ -22,7 +22,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } "test" { none() } } diff --git a/compiler/fir/checkers/checkers.jvm/build.gradle.kts b/compiler/fir/checkers/checkers.jvm/build.gradle.kts index 906bbeac80d..795d3e7042c 100644 --- a/compiler/fir/checkers/checkers.jvm/build.gradle.kts +++ b/compiler/fir/checkers/checkers.jvm/build.gradle.kts @@ -23,7 +23,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } "test" { none() } } diff --git a/compiler/fir/checkers/checkers.native/build.gradle.kts b/compiler/fir/checkers/checkers.native/build.gradle.kts index 65f103341bb..e4e1f8e1557 100644 --- a/compiler/fir/checkers/checkers.native/build.gradle.kts +++ b/compiler/fir/checkers/checkers.native/build.gradle.kts @@ -22,7 +22,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } "test" { none() } } diff --git a/compiler/fir/tree/build.gradle.kts b/compiler/fir/tree/build.gradle.kts index f2284e86f47..7715c39a2dd 100644 --- a/compiler/fir/tree/build.gradle.kts +++ b/compiler/fir/tree/build.gradle.kts @@ -16,7 +16,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } } diff --git a/compiler/ir/ir.tree/build.gradle.kts b/compiler/ir/ir.tree/build.gradle.kts index 0b46c02918c..40ffe7f1729 100644 --- a/compiler/ir/ir.tree/build.gradle.kts +++ b/compiler/ir/ir.tree/build.gradle.kts @@ -19,7 +19,7 @@ dependencies { sourceSets { "main" { projectDefault() - this.java.srcDir("gen") + generatedDir() } "test" {} }