[Gradle, JS] Add arguments for building caches
This commit is contained in:
+11
-21
@@ -112,11 +112,9 @@ abstract class KotlinJsIrLink @Inject constructor(
|
||||
allCacheDirectories
|
||||
)
|
||||
|
||||
args.freeArgs += "-Xcache-directory=${
|
||||
cacheArgs.joinToString(File.pathSeparator) {
|
||||
it.normalize().absolutePath
|
||||
}
|
||||
}"
|
||||
args.cacheDirectories = cacheArgs.joinToString(File.pathSeparator) {
|
||||
it.normalize().absolutePath
|
||||
}
|
||||
}
|
||||
super.callCompilerAsync(args, sourceRoots, changedFiles)
|
||||
}
|
||||
@@ -235,10 +233,7 @@ internal class CacheBuilder(
|
||||
visitedFiles,
|
||||
compileClasspath.files,
|
||||
cacheDirectory,
|
||||
(allCacheDirectories + associatedCaches).distinct(),
|
||||
|
||||
|
||||
file.name
|
||||
(allCacheDirectories + associatedCaches).distinct()
|
||||
)
|
||||
allCacheDirectories.add(cacheDirectory)
|
||||
}
|
||||
@@ -278,9 +273,7 @@ internal class CacheBuilder(
|
||||
.flatMap { it.moduleArtifacts }
|
||||
.map { it.file },
|
||||
cacheDirectory,
|
||||
dependenciesCacheDirectories,
|
||||
|
||||
library.name
|
||||
dependenciesCacheDirectories
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -290,10 +283,7 @@ internal class CacheBuilder(
|
||||
visitedFiles: MutableSet<File>,
|
||||
dependencies: Collection<File>,
|
||||
cacheDirectory: File,
|
||||
dependenciesCacheDirectories: Collection<File>,
|
||||
|
||||
|
||||
jsName: String
|
||||
dependenciesCacheDirectories: Collection<File>
|
||||
) {
|
||||
if (file in visitedFiles) return
|
||||
val compilerArgs = compilerArgsFactory()
|
||||
@@ -307,11 +297,11 @@ internal class CacheBuilder(
|
||||
|
||||
visitedFiles.add(file)
|
||||
compilerArgs.includes = file.normalize().absolutePath
|
||||
compilerArgs.outputFile = cacheDirectory.resolve("${jsName}.js").normalize().absolutePath
|
||||
compilerArgs.freeArgs += "-Xcache-directory=${dependenciesCacheDirectories.joinToString(File.pathSeparator)}"
|
||||
|
||||
// Change it for produce caches
|
||||
compilerArgs.irProduceJs = true
|
||||
compilerArgs.outputFile = cacheDirectory.normalize().absolutePath
|
||||
if (dependenciesCacheDirectories.isNotEmpty()) {
|
||||
compilerArgs.cacheDirectories = dependenciesCacheDirectories.joinToString(File.pathSeparator)
|
||||
}
|
||||
compilerArgs.irBuildCache = true
|
||||
|
||||
compilerArgs.libraries = dependencies
|
||||
.filter { it.exists() && libraryFilter(it) }
|
||||
|
||||
Reference in New Issue
Block a user