Build: Make task inputs relative to improve caching

This commit is contained in:
Vyacheslav Gerasimov
2020-01-20 21:24:02 +03:00
parent 8e0dd604af
commit 1f3755248c
3 changed files with 19 additions and 11 deletions
+7 -3
View File
@@ -1,3 +1,4 @@
import org.gradle.api.tasks.PathSensitivity.RELATIVE
import java.io.File
plugins {
@@ -20,9 +21,9 @@ val prepareSources by tasks.registering(Sync::class) {
val serialize by tasks.registering(NoDebugJavaExec::class) {
dependsOn(prepareSources)
val outDir = "$buildDir/$name"
val outDir = buildDir.resolve(name)
val inDirs = arrayOf(builtinsSrc, builtinsNative, builtinsCherryPicked)
inDirs.forEach { inputs.dir(it) }
inDirs.forEach { inputs.dir(it).withPathSensitivity(RELATIVE) }
outputs.dir(outDir)
outputs.cacheIf { true }
@@ -30,7 +31,10 @@ val serialize by tasks.registering(NoDebugJavaExec::class) {
classpath(rootProject.buildscript.configurations["bootstrapCompilerClasspath"])
main = "org.jetbrains.kotlin.serialization.builtins.RunKt"
jvmArgs("-Didea.io.use.nio2=true")
args(outDir, *inDirs)
args(
outDir.relativeTo(projectDir),
*inDirs.map { it.relativeTo(projectDir) }.toTypedArray()
)
}
val builtinsJar by task<Jar> {