[build][native] don't ever fix dist, take it with API
This commit is contained in:
+3
-3
@@ -44,6 +44,7 @@ import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||
import org.jetbrains.kotlin.konan.target.buildDistribution
|
||||
import org.jetbrains.kotlin.konan.target.customerDistribution
|
||||
import org.jetbrains.kotlin.konan.util.DependencyProcessor
|
||||
import org.jetbrains.kotlin.*
|
||||
import java.io.File
|
||||
import javax.inject.Inject
|
||||
|
||||
@@ -87,8 +88,7 @@ internal fun Project.setProperty(property: KonanPlugin.ProjectProperty, value: A
|
||||
// konanHome extension is set by downloadKonanCompiler task.
|
||||
internal val Project.konanHome: String
|
||||
get() {
|
||||
assert(hasProperty(KonanPlugin.ProjectProperty.KONAN_HOME))
|
||||
return project.file(getProperty(KonanPlugin.ProjectProperty.KONAN_HOME)).canonicalPath
|
||||
return project.kotlinNativeDist.absolutePath
|
||||
}
|
||||
|
||||
internal val Project.konanVersion: CompilerVersion
|
||||
@@ -346,7 +346,7 @@ class KonanPlugin @Inject constructor(private val registry: ToolingModelBuilderR
|
||||
project.warnAboutDeprecatedProperty(ProjectProperty.KONAN_HOME)
|
||||
|
||||
// Set additional project properties like org.jetbrains.kotlin.native.home, konan.build.targets etc.
|
||||
if (!project.hasProperty(ProjectProperty.KONAN_HOME)) {
|
||||
if (!project.useCustomDist) {
|
||||
project.setProperty(ProjectProperty.KONAN_HOME, project.konanCompilerDownloadDir())
|
||||
project.setProperty(ProjectProperty.DOWNLOAD_COMPILER, true)
|
||||
}
|
||||
|
||||
+2
@@ -27,6 +27,7 @@ import org.jetbrains.kotlin.konan.target.HostManager
|
||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||
import org.jetbrains.kotlin.konan.util.DependencyProcessor
|
||||
import java.nio.file.Files
|
||||
import org.jetbrains.kotlin.*
|
||||
|
||||
internal interface KonanToolRunner: Named {
|
||||
val mainClass: String
|
||||
@@ -105,6 +106,7 @@ internal abstract class KonanCliRunner(
|
||||
.escapeQuotesForWindows()
|
||||
.toMap()
|
||||
)
|
||||
exec.systemProperty("konan.home", project.kotlinNativeDist.absolutePath)
|
||||
exec.args(listOf(toolName) + transformArgs(args))
|
||||
this@KonanCliRunner.blacklistEnvironment.forEach { environment.remove(it) }
|
||||
exec.environment(environment)
|
||||
|
||||
+2
-1
@@ -7,6 +7,7 @@ import org.jetbrains.kotlin.gradle.plugin.konan.KonanCompilerRunner
|
||||
import org.jetbrains.kotlin.gradle.plugin.konan.konanHome
|
||||
import org.jetbrains.kotlin.konan.target.CompilerOutputKind
|
||||
import org.jetbrains.kotlin.konan.target.PlatformManager
|
||||
import org.jetbrains.kotlin.*
|
||||
import java.io.File
|
||||
|
||||
enum class KonanCacheKind(val outputKind: CompilerOutputKind) {
|
||||
@@ -45,7 +46,7 @@ open class KonanCacheTask: DefaultTask() {
|
||||
@Input
|
||||
/** Path to a compiler distribution that is used to build this cache. */
|
||||
val compilerDistributionPath: Property<File> = project.objects.property(File::class.java).apply {
|
||||
set(project.provider { project.file(project.konanHome) })
|
||||
set(project.provider { project.kotlinNativeDist })
|
||||
}
|
||||
|
||||
@TaskAction
|
||||
|
||||
+2
-1
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.konan.MetaVersion
|
||||
import org.jetbrains.kotlin.konan.util.DependencyProcessor
|
||||
import org.jetbrains.kotlin.konan.util.DependencySource
|
||||
import java.io.IOException
|
||||
import org.jetbrains.kotlin.*
|
||||
|
||||
open class KonanCompilerDownloadTask : DefaultTask() {
|
||||
|
||||
@@ -40,7 +41,7 @@ open class KonanCompilerDownloadTask : DefaultTask() {
|
||||
@TaskAction
|
||||
fun downloadAndExtract() {
|
||||
if (!project.hasProperty(KonanPlugin.ProjectProperty.DOWNLOAD_COMPILER)) {
|
||||
val konanHome = project.getProperty(KonanPlugin.ProjectProperty.KONAN_HOME)
|
||||
val konanHome = project.kotlinNativeDist
|
||||
logger.info("Use a user-defined compiler path: $konanHome")
|
||||
} else {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user