[PL] Introduce new CLI parameter: -Xpartial-linkage-loglevel

The parameter controls the level of logs produced during the compile time by the partial linkage: 'info', 'warn' (default for now), and 'error'.
This commit is contained in:
Dmitriy Dolovov
2023-03-20 12:11:13 +01:00
committed by Space Team
parent d8902816d0
commit 831611d577
9 changed files with 57 additions and 6 deletions
@@ -540,13 +540,20 @@ class K2JSCompilerArguments : CommonCompilerArguments() {
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xpartial-linkage", description = "Allow unlinked symbols")
@Argument(value = "-Xpartial-linkage", description = "Enable partial linkage mode")
var partialLinkage = false
set(value) {
checkFrozen()
field = value
}
@Argument(value = "-Xpartial-linkage-loglevel", valueDescription = "{info|warning|error}", description = "Partial linkage compile-time log level")
var partialLinkageLogLevel: String? = null
set(value) {
checkFrozen()
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xwasm", description = "Use experimental WebAssembly compiler backend")
var wasm = false
set(value) {
@@ -424,9 +424,16 @@ class K2NativeCompilerArguments : CommonCompilerArguments() {
@Argument(value = "-Xlazy-ir-for-caches", valueDescription = "{disable|enable}", description = "Use lazy IR for cached libraries")
var lazyIrForCaches: String? = null
@Argument(value = "-Xpartial-linkage", description = "Allow unlinked symbols")
@Argument(value = "-Xpartial-linkage", description = "Enable partial linkage mode")
var partialLinkage: Boolean = false
@Argument(value = "-Xpartial-linkage-loglevel", valueDescription = "{info|warning|error}", description = "Partial linkage compile-time log level")
var partialLinkageLogLevel: String? = null
set(value) {
checkFrozen()
field = if (value.isNullOrEmpty()) null else value
}
@Argument(value = "-Xomit-framework-binary", description = "Omit binary when compiling framework")
var omitFrameworkBinary: Boolean = false