[K/N][build] Fixes to caching and stdlib build

This commit is contained in:
Pavel Punegov
2021-10-18 20:32:13 +03:00
committed by Space
parent 67eedbe03e
commit eb5518d6d7
2 changed files with 13 additions and 6 deletions
+1 -1
View File
@@ -78,7 +78,7 @@ targetList.each { target ->
compilerDistributionPath.set(distDir)
// TODO: should depend on stdlib producer task and its properties
def clibs = [:]
clibs.put(project.file("$dist/klib/common/stdlib"), project.file("$dist/klib/cache/${target}-gSTATIC/stdlib-cache"))
clibs.put(project.file("$dist/klib/common/stdlib"), project.file("$dist/klib/cache/${target}-g$cacheKind/stdlib-cache"))
cachedLibraries = clibs
dependsOn "$library.projectName:${target}${library.taskName}"
+12 -5
View File
@@ -408,18 +408,18 @@ lateinit var stdlibBuildTask: TaskProvider<Task>
konanArtifacts {
library("stdlib") {
baseDir(project.buildDir.resolve("stdlib"))
enableMultiplatform(true)
extraOpts(args + project.globalBuildArgs)
extraOpts(
"-module-name", "stdlib",
"-Xmulti-platform",
"-opt-in=kotlin.RequiresOptIn",
"-opt-in=kotlin.contracts.ExperimentalContracts",
"-opt-in=kotlin.ExperimentalMultiplatform",
"-opt-in=kotlin.native.internal.InternalForKotlinNative",
"-opt-in=kotlin.native.SymbolNameIsDeprecated"
)
commonStdlibSrcDirs.forEach { extraOpts(it) }
srcFiles(commonBuiltinsSrc)
commonStdlibSrcDirs.forEach { extraOpts(it) }
testAnnotationCommonSrcDir.forEach { extraOpts(it) }
testCommonSrcDir.forEach { extraOpts(it) }
extraOpts(interopRuntimeCommonSrcDir)
@@ -432,9 +432,15 @@ konanArtifacts {
stdLibSrcDirs.forEach { srcDir(it) }
}
stdlibBuildTask = project.findKonanBuildTask("stdlib", project.platformManager.hostPlatform.target)
stdlibBuildTask.configure {
dependsOn(":kotlin-native:distCompiler")
stdlibBuildTask = project.findKonanBuildTask("stdlib", project.platformManager.hostPlatform.target).apply {
configure {
dependsOn(":kotlin-native:distCompiler")
// Configure inputs and outputs
stdLibSrcDirs.forEach { inputs.dir(it) }
commonStdlibSrcDirs.forEach { inputs.dir(it) }
outputs.dir(project.buildDir.resolve("stdlib"))
}
}
}
@@ -468,6 +474,7 @@ targetList.forEach { targetName ->
originalKlib = project.buildDir.resolve("${targetName}Stdlib")
cacheRoot = project.buildDir.resolve("cache/$targetName").absolutePath
dependsOn("${targetName}Stdlib")
dependsOn(":kotlin-native:${targetName}CrossDistRuntime")
}
}