diff --git a/core/builtins/build.gradle.kts b/core/builtins/build.gradle.kts index d8de0b7d66f..badc151963c 100644 --- a/core/builtins/build.gradle.kts +++ b/core/builtins/build.gradle.kts @@ -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 { diff --git a/libraries/reflect/build.gradle.kts b/libraries/reflect/build.gradle.kts index 5e91419d3f9..3fae07e42eb 100644 --- a/libraries/reflect/build.gradle.kts +++ b/libraries/reflect/build.gradle.kts @@ -4,6 +4,7 @@ import com.github.jengelman.gradle.plugins.shadow.transformers.Transformer import com.github.jengelman.gradle.plugins.shadow.transformers.TransformerContext import kotlinx.metadata.jvm.KmModuleVisitor import kotlinx.metadata.jvm.KotlinModuleMetadata +import org.gradle.api.tasks.PathSensitivity.RELATIVE import proguard.gradle.ProGuardTask import shadow.org.apache.tools.zip.ZipEntry import shadow.org.apache.tools.zip.ZipOutputStream @@ -126,7 +127,7 @@ val stripMetadata by tasks.registering { dependsOn(reflectShadowJar) val inputJar = provider { reflectShadowJar.get().outputs.files.singleFile } val outputJar = File("$libsDir/kotlin-reflect-stripped.jar") - inputs.file(inputJar) + inputs.file(inputJar).withPathSensitivity(RELATIVE) outputs.file(outputJar) outputs.cacheIf { true } doLast { diff --git a/libraries/stdlib/js-v1/build.gradle b/libraries/stdlib/js-v1/build.gradle index f3d04362d79..e67b7949b1f 100644 --- a/libraries/stdlib/js-v1/build.gradle +++ b/libraries/stdlib/js-v1/build.gradle @@ -23,8 +23,8 @@ def builtinsSrcDir2 = "${buildDir}/builtin-sources-for-builtins" def commonSrcDir = "${projectDir}/../src/kotlin" def commonSrcDir2 = "${projectDir}/../common/src" def jsCommonDir = "${projectDir}/../js" -def coroutinesExpJsSrcDir = "${rootDir}/libraries/stdlib/coroutines-experimental/js/src" +def coroutinesExpJsSrcDir = "${rootDir}/libraries/stdlib/coroutines-experimental/js/src" def builtinsDir = "${rootDir}/core/builtins" def unsignedCommonSrcDir = "${rootDir}/libraries/stdlib/unsigned/src" def coroutinesJsModuleName = 'kotlin-stdlib-coroutines' @@ -146,7 +146,10 @@ compileKotlin2Js { sourceMap = true sourceMapPrefix = "./" freeCompilerArgs += [ - "-source-map-base-dirs", [builtinsSrcDir, jsSrcDir, jsCommonSrcDir, commonSrcDir, commonSrcDir2, unsignedCommonSrcDir].collect { file(it).absoluteFile }.join(File.pathSeparator), + "-source-map-base-dirs", + [builtinsSrcDir, jsSrcDir, jsCommonSrcDir, commonSrcDir, commonSrcDir2, unsignedCommonSrcDir] + .collect { file(it).absoluteFile } + .join(File.pathSeparator), "-Xuse-experimental=kotlin.Experimental", "-Xuse-experimental=kotlin.ExperimentalMultiplatform", "-Xuse-experimental=kotlin.contracts.ExperimentalContracts", @@ -184,11 +187,11 @@ compileTestKotlin2Js { task compileJs(type: NoDebugJavaExec) { dependsOn compileBuiltinsKotlin2Js, compileKotlin2Js, compileCoroutinesExperimentalKotlin2Js - inputs.files(compileBuiltinsKotlin2Js.outputs.files) - inputs.files(compileKotlin2Js.outputs.files) - inputs.files(compileCoroutinesExperimentalKotlin2Js.outputs.files) - inputs.dir(jsSrcDir) - inputs.dir(jsCommonSrcDir) + inputs.files(compileBuiltinsKotlin2Js.outputs.files).withPathSensitivity(PathSensitivity.RELATIVE) + inputs.files(compileKotlin2Js.outputs.files).withPathSensitivity(PathSensitivity.RELATIVE) + inputs.files(compileCoroutinesExperimentalKotlin2Js.outputs.files).withPathSensitivity(PathSensitivity.RELATIVE) + inputs.dir(jsSrcDir).withPathSensitivity(PathSensitivity.RELATIVE) + inputs.dir(jsCommonSrcDir).withPathSensitivity(PathSensitivity.RELATIVE) outputs.file(jsOutputFile) outputs.file("${jsOutputFile}.map")