From 5338705402783bc2b0c60700e7294da6444033e6 Mon Sep 17 00:00:00 2001 From: Pavel Punegov Date: Tue, 6 Jul 2021 00:51:47 +0300 Subject: [PATCH] [Native] Enable parallel platform libs generation on parameter Use kotlin.native.platformLibs.parallel to control parallel generation. Disable parallel execution of platform libs on MacOS aarch64 --- kotlin-native/platformLibs/build.gradle | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/kotlin-native/platformLibs/build.gradle b/kotlin-native/platformLibs/build.gradle index b8ce128f38c..4c5bc3a2810 100644 --- a/kotlin-native/platformLibs/build.gradle +++ b/kotlin-native/platformLibs/build.gradle @@ -25,6 +25,7 @@ ext.setProperty("org.jetbrains.kotlin.native.home", konanHome) ext.setProperty("konan.jvmArgs", jvmArgs) apply plugin: 'konan' +apply plugin: 'java' //#region Util functions. private ArrayList targetDefFiles(KonanTarget target) { @@ -42,6 +43,14 @@ private String defFileToLibName(String target, String name) { } //#endregion +if (HostManager.host.name == "macos_arm64") { + java { + toolchain { + languageVersion = JavaLanguageVersion.of(17) + } + } +} + // TODO: I think most for the non-DSL language below can either be incorporated into DSL // or moved out of .gradle file. rootProject.project("kotlin-native").ext.platformManager.enabled.each { target -> @@ -85,7 +94,9 @@ rootProject.project("kotlin-native").ext.platformManager.enabled.each { target - libTask.configure { it.dependsOn df.config.depends.collect { defFileToLibName(targetName, it) } it.dependsOn ":kotlin-native:${targetName}CrossDist" - it.enableParallel = true + it.enableParallel = project.hasProperty("kotlin.native.platformLibs.parallel") + ? project.findProperty("kotlin.native.platformLibs.parallel")?.toString()?.toBoolean() + : HostManager.host != "macos_arm64" } def klibInstallTask = tasks.register("$libName", KlibInstall) {