Fix opt-in related bootstrap problem in kotlin-native/build-tools
This commit is contained in:
committed by
Space Team
parent
bf4d48e208
commit
774bed875a
@@ -53,7 +53,7 @@ private fun Executor.service(project: Project) = object: ExecutorService {
|
|||||||
val execSpec = project.objects.newInstance<DefaultExecSpec>().apply {
|
val execSpec = project.objects.newInstance<DefaultExecSpec>().apply {
|
||||||
action.execute(this)
|
action.execute(this)
|
||||||
}
|
}
|
||||||
val request = ExecuteRequest(
|
val request = executeRequest(
|
||||||
executableAbsolutePath = execSpec.executable,
|
executableAbsolutePath = execSpec.executable,
|
||||||
args = execSpec.args,
|
args = execSpec.args,
|
||||||
).apply {
|
).apply {
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import org.gradle.api.file.RegularFileProperty
|
|||||||
import org.gradle.api.provider.Property
|
import org.gradle.api.provider.Property
|
||||||
import org.gradle.api.tasks.*
|
import org.gradle.api.tasks.*
|
||||||
import org.gradle.kotlin.dsl.getByType
|
import org.gradle.kotlin.dsl.getByType
|
||||||
import org.gradle.process.ExecOperations
|
|
||||||
import org.gradle.workers.WorkAction
|
import org.gradle.workers.WorkAction
|
||||||
import org.gradle.workers.WorkParameters
|
import org.gradle.workers.WorkParameters
|
||||||
import org.gradle.workers.WorkerExecutor
|
import org.gradle.workers.WorkerExecutor
|
||||||
@@ -51,7 +50,7 @@ private abstract class RunGTestJob : WorkAction<RunGTestJob.Parameters> {
|
|||||||
with(parameters) {
|
with(parameters) {
|
||||||
reportFileUnprocessed.asFile.get().parentFile.mkdirs()
|
reportFileUnprocessed.asFile.get().parentFile.mkdirs()
|
||||||
|
|
||||||
executor.execute(ExecuteRequest(this@with.executable.asFile.get().absolutePath).apply {
|
executor.execute(executeRequest(this@with.executable.asFile.get().absolutePath).apply {
|
||||||
this.args.add("--gtest_output=xml:${reportFileUnprocessed.asFile.get().absolutePath}")
|
this.args.add("--gtest_output=xml:${reportFileUnprocessed.asFile.get().absolutePath}")
|
||||||
filter.orNull?.also {
|
filter.orNull?.also {
|
||||||
this.args.add("--gtest_filter=${it}")
|
this.args.add("--gtest_filter=${it}")
|
||||||
|
|||||||
@@ -61,6 +61,13 @@ data class ExecuteRequest(
|
|||||||
inline fun copying(block: ExecuteRequest.() -> Unit): ExecuteRequest = copy().apply(block)
|
inline fun copying(block: ExecuteRequest.() -> Unit): ExecuteRequest = copy().apply(block)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Helper for [ExecuteRequest] creation.
|
||||||
|
* Allows to create it without opting in [kotlin.time.ExperimentalTime] for API < 1.6.
|
||||||
|
*/
|
||||||
|
fun executeRequest(executableAbsolutePath: String, args: MutableList<String> = mutableListOf()): ExecuteRequest =
|
||||||
|
ExecuteRequest(executableAbsolutePath, args)
|
||||||
|
|
||||||
data class ExecuteResponse(
|
data class ExecuteResponse(
|
||||||
/**
|
/**
|
||||||
* Process exit code if it exited by itself, or `null` if it was killed by a timeout.
|
* Process exit code if it exited by itself, or `null` if it was killed by a timeout.
|
||||||
|
|||||||
+1
-1
@@ -17,7 +17,7 @@ private fun defaultDeviceName(target: KonanTarget) = when (target.family) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun Executor.run(executableAbsolutePath: String, vararg args: String) = ByteArrayOutputStream().let {
|
private fun Executor.run(executableAbsolutePath: String, vararg args: String) = ByteArrayOutputStream().let {
|
||||||
this.execute(ExecuteRequest(executableAbsolutePath).apply {
|
this.execute(executeRequest(executableAbsolutePath).apply {
|
||||||
this.args.addAll(args)
|
this.args.addAll(args)
|
||||||
stdout = it
|
stdout = it
|
||||||
workingDirectory = File("").absoluteFile
|
workingDirectory = File("").absoluteFile
|
||||||
|
|||||||
Reference in New Issue
Block a user