[CLI] Introduce new compiler arguments for registering compiler plugins

With new syntax each plugin should be registered in separate argument with syntax
`-Xcompiler-plugin=classpath1,classpath2[=argument1=value1,argument2=value2]`
This commit is contained in:
Dmitriy Novozhilov
2022-06-29 15:02:58 +03:00
committed by teamcity
parent 8919703448
commit 928416c9c5
39 changed files with 361 additions and 67 deletions
@@ -144,10 +144,11 @@ class IncrementalFirJvmCompilerRunner(
if (collector.hasErrors()) return ExitCode.COMPILATION_ERROR to emptyList()
// -- plugins
val pluginClasspaths: Iterable<String> = args.pluginClasspaths?.asIterable() ?: emptyList()
val pluginClasspaths = args.pluginClasspaths?.toList() ?: emptyList()
val pluginOptions = args.pluginOptions?.toMutableList() ?: ArrayList()
val pluginConfigurations = args.pluginConfigurations?.toList() ?: emptyList()
// TODO: add scripting support when ready in FIR
val pluginLoadResult = PluginCliParser.loadPluginsSafe(pluginClasspaths, pluginOptions, configuration)
val pluginLoadResult = PluginCliParser.loadPluginsSafe(pluginClasspaths, pluginOptions, pluginConfigurations, configuration)
if (pluginLoadResult != ExitCode.OK) return pluginLoadResult to emptyList()
// -- /plugins