Added property for overriding konan distribution location

#KT-50463 Fixed

Merge-request: KT-MR-10310
Merged-by: Dmitrii Krasnov <Dmitrii.Krasnov@jetbrains.com>
This commit is contained in:
Dmitrii Krasnov
2023-07-12 12:36:51 +00:00
committed by Space Team
parent 2f7f69ed4f
commit f2816a5531
32 changed files with 174 additions and 108 deletions
@@ -119,13 +119,18 @@ fun generatePlatformLibraries(args: Array<String>) = usingNativeMemoryAllocator
description = "Override konan.properties.values"
).multiple().delimiter(";")
val konanDataDir by argParser.option(ArgType.String,
fullName = "Xkonan-data-dir",
description = "Path to konan and dependencies root folder")
argParser.parse(args)
val distribution = Distribution(
KonanHomeProvider.determineKonanHome(),
onlyDefaultProfiles = false,
runtimeFileOverride = null,
propertyOverrides = parseKeyValuePairs(overrideKonanProperties)
propertyOverrides = parseKeyValuePairs(overrideKonanProperties),
konanDataDir = konanDataDir
)
val platformManager = PlatformManager(distribution)
@@ -163,6 +168,11 @@ fun generatePlatformLibraries(args: Array<String>) = usingNativeMemoryAllocator
add("-Xoverride-konan-properties")
add(overrideKonanProperties.joinToString(";"))
}
konanDataDir?.let {
add("-Xkonan-data-dir")
add(it)
}
}
)
@@ -40,7 +40,9 @@ fun invokeInterop(flavor: String, args: Array<String>, runFromDaemon: Boolean):
val repos = arguments.repo
val targetRequest = if (arguments is CInteropArguments) arguments.target
else (arguments as JSInteropArguments).target.toString()
val target = PlatformManager(KonanHomeProvider.determineKonanHome()).targetManager(targetRequest).target
val target = PlatformManager(
KonanHomeProvider.determineKonanHome(),
konanDataDir = arguments.konanDataDir).targetManager(targetRequest).target
val cinteropArgsToCompiler = Interop().interop(flavor, args,
InternalInteropOptions(generatedDir.absolutePath,