[Native][Tests] Always use -Xllvm-variant=dev
FileCheck tests force using dev LLVM distribution. It breaks invocation of LLVM Clang which tries to look for executable in a wrong directory. Let's keep things simple and always pass dev variant to our tests.
This commit is contained in:
committed by
Space Team
parent
96e5b2be79
commit
30c91e47a9
-1
@@ -18,7 +18,6 @@ import org.jetbrains.kotlin.konan.test.blackbox.support.runner.TestRunChecks
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.settings.LLDB
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.settings.PipelineType
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.settings.Timeouts
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.settings.configurables
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.util.ClangDistribution
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.util.LLDBSessionSpec
|
||||
import org.jetbrains.kotlin.konan.test.blackbox.support.util.compileWithClang
|
||||
|
||||
+3
-1
@@ -66,6 +66,9 @@ internal abstract class BasicCompilation<A : TestCompilationArtifact>(
|
||||
add(
|
||||
"-Xverify-ir=error"
|
||||
)
|
||||
// We use dev distribution for tests as it provides a full set of testing utilities,
|
||||
// which might not be available in user distribution.
|
||||
add("-Xllvm-variant=dev")
|
||||
addFlattened(binaryOptions.entries) { (name, value) -> listOf("-Xbinary=$name=$value") }
|
||||
}
|
||||
|
||||
@@ -476,7 +479,6 @@ internal class ExecutableCompilation(
|
||||
|
||||
internal fun ArgsBuilder.applyFileCheckArgs(fileCheckStage: String?, fileCheckDump: File?) =
|
||||
fileCheckStage?.let {
|
||||
add("-Xllvm-variant=dev") // FileCheck utility is provided in `LLVM dev`, not `LLVM user`
|
||||
add("-Xsave-llvm-ir-after=$it")
|
||||
add("-Xsave-llvm-ir-directory=${fileCheckDump!!.parent}")
|
||||
}
|
||||
|
||||
+5
-4
@@ -52,16 +52,17 @@ internal fun AbstractNativeSimpleTest.compileWithClang(
|
||||
ClangMode.C -> "clang"
|
||||
ClangMode.CXX -> "clang++"
|
||||
}
|
||||
val configurables = testRunSettings.configurables
|
||||
val clangPath = when (clangDistribution) {
|
||||
ClangDistribution.Toolchain -> "${testRunSettings.configurables.absoluteTargetToolchain}/bin/$clangExecutableName"
|
||||
ClangDistribution.Llvm -> "${testRunSettings.configurables.absoluteLlvmHome}/bin/$clangExecutableName"
|
||||
ClangDistribution.Toolchain -> "${configurables.absoluteTargetToolchain}/bin/$clangExecutableName"
|
||||
ClangDistribution.Llvm -> "${configurables.absoluteLlvmHome}/bin/$clangExecutableName"
|
||||
}
|
||||
val process = ProcessBuilder(
|
||||
clangPath,
|
||||
*sourceFiles.map { it.absolutePath }.toTypedArray(),
|
||||
*includeDirectories.flatMap { listOf("-I", it.absolutePath) }.toTypedArray(),
|
||||
"-isysroot", testRunSettings.configurables.absoluteTargetSysRoot,
|
||||
"-target", testRunSettings.configurables.targetTriple.toString(),
|
||||
"-isysroot", configurables.absoluteTargetSysRoot,
|
||||
"-target", configurables.targetTriple.toString(),
|
||||
"-g", "-fmodules",
|
||||
*frameworkDirectories.flatMap { listOf("-F", it.absolutePath) }.toTypedArray(),
|
||||
*libraryDirectories.flatMap { listOf("-L", it.absolutePath) }.toTypedArray(),
|
||||
|
||||
Reference in New Issue
Block a user