[FIR] Add SourceSet.generatedDir() and use it in build.gradle.kts
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -20,7 +20,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
"test" { none() }
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
"test" { none() }
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
"test" { none() }
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
"test" { none() }
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ dependencies {
|
||||
sourceSets {
|
||||
"main" {
|
||||
projectDefault()
|
||||
this.java.srcDir("gen")
|
||||
generatedDir()
|
||||
}
|
||||
"test" {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user