Revert "[K/N][gradle][interop] Refactored ToolConfig"

This reverts commit d9c1b1f6f7.
This commit is contained in:
Igor Chevdar
2021-11-26 14:01:40 +05:00
parent 031d92e21f
commit 4b53a8e3c7
9 changed files with 57 additions and 96 deletions
@@ -27,7 +27,6 @@ import org.jetbrains.kotlin.konan.util.DependencyDirectories
import java.io.File
import java.util.Properties
import org.jetbrains.kotlin.compilerRunner.KotlinToolRunner
import org.jetbrains.kotlin.konan.target.AbstractToolConfig
internal interface KonanToolRunner {
fun run(args: List<String>)
@@ -68,10 +67,10 @@ internal abstract class KonanCliRunner(
""".trimIndent()
}
data class IsolatedClassLoaderCacheKey(val classpath: Set<java.io.File>, val project: Project)
data class IsolatedClassLoaderCacheKey(val classpath: Set<java.io.File>)
// TODO: can't we use this for other implementations too?
final override val isolatedClassLoaderCacheKey get() = IsolatedClassLoaderCacheKey(classpath, project)
final override val isolatedClassLoaderCacheKey get() = IsolatedClassLoaderCacheKey(classpath)
override fun transformArgs(args: List<String>) = listOf(toolName) + args
@@ -104,16 +103,6 @@ internal class KonanCliCompilerRunner(
}
}
private val load0 = Runtime::class.java.getDeclaredMethod("load0", Class::class.java, String::class.java).also {
it.isAccessible = true
}
internal class CliToolConfig(konanHome: String, target: String) : AbstractToolConfig(konanHome, target, emptyMap()) {
override fun loadLibclang() {
load0.invoke(Runtime.getRuntime(), String::class.java, libclang)
}
}
/** Kotlin/Native C-interop tool runner */
internal class KonanCliInteropRunner(
project: Project,
@@ -132,10 +121,6 @@ internal class KonanCliInteropRunner(
result
}
fun init(target: String) {
CliToolConfig(konanHome, target).prepare()
}
private val llvmExecutablesPath: String? by lazy {
if (HostManager.host == KonanTarget.MINGW_X64) {
// TODO: Read it from Platform properties when it is accessible.
@@ -36,10 +36,8 @@ import javax.inject.Inject
open class KonanInteropTask @Inject constructor(@Internal val workerExecutor: WorkerExecutor) : KonanBuildingTask(), KonanInteropSpec {
private val interopRunner = KonanCliInteropRunner(project, project.konanExtension.jvmArgs)
@get:Internal
override val toolRunner: KonanToolRunner = interopRunner
override val toolRunner: KonanToolRunner = KonanCliInteropRunner(project, project.konanExtension.jvmArgs)
override fun init(config: KonanBuildingConfig<*>, destinationDir: File, artifactName: String, target: KonanTarget) {
super.init(config, destinationDir, artifactName, target)
@@ -176,8 +174,6 @@ open class KonanInteropTask @Inject constructor(@Internal val workerExecutor: Wo
}
override fun run() {
interopRunner.init(target)
destinationDir.mkdirs()
if (dumpParameters) {
dumpProperties(this)