fix: Make sure only MSVC is allowed on windows, other two don't work

This commit is contained in:
FalsePattern 2024-11-07 15:47:22 +01:00
parent 0d7a321ebc
commit 493eb6b02f
Signed by: falsepattern
GPG key ID: E930CDEC50C50E23

View file

@ -43,7 +43,9 @@ import com.intellij.util.download.DownloadableFileService
import com.intellij.util.io.Decompressor import com.intellij.util.io.Decompressor
import com.intellij.util.system.CpuArch import com.intellij.util.system.CpuArch
import com.intellij.util.system.OS import com.intellij.util.system.OS
import com.jetbrains.cidr.execution.debugger.CidrDebuggerPathManager
import com.jetbrains.cidr.execution.debugger.backend.bin.UrlProvider import com.jetbrains.cidr.execution.debugger.backend.bin.UrlProvider
import com.jetbrains.cidr.execution.debugger.backend.lldb.LLDBDriverConfiguration
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.runInterruptible import kotlinx.coroutines.runInterruptible
import kotlinx.coroutines.withContext import kotlinx.coroutines.withContext
@ -66,12 +68,12 @@ class ZigDebuggerToolchainService {
} }
fun lldbAvailability(): DebuggerAvailability<LLDBBinaries> { fun lldbAvailability(): DebuggerAvailability<LLDBBinaries> {
// if (LLDBDriverConfiguration.hasBundledLLDB()) return DebuggerAvailability.Bundled if (LLDBDriverConfiguration.hasBundledLLDB()) return DebuggerAvailability.Bundled
val (frameworkPath, frontendPath) = when { val (frameworkPath, frontendPath) = when {
SystemInfo.isMac -> "LLDB.framework" to "LLDBFrontend" SystemInfo.isMac -> "LLDB.framework" to "LLDBFrontend"
SystemInfo.isUnix -> "lib/liblldb.so" to "bin/LLDBFrontend" SystemInfo.isUnix -> "lib/liblldb.so" to "bin/LLDBFrontend"
SystemInfo.isWindows -> "bin/liblldb.dll" to "bin/LLDBFrontend.exe" // SystemInfo.isWindows -> "bin/liblldb.dll" to "bin/LLDBFrontend.exe"
else -> return DebuggerAvailability.Unavailable else -> return DebuggerAvailability.Unavailable
} }
@ -94,11 +96,11 @@ class ZigDebuggerToolchainService {
fun gdbAvailability(): DebuggerAvailability<GDBBinaries> { fun gdbAvailability(): DebuggerAvailability<GDBBinaries> {
if (SystemInfo.isMac) return DebuggerAvailability.Unavailable if (SystemInfo.isMac) return DebuggerAvailability.Unavailable
// if (CidrDebuggerPathManager.getBundledGDBBinary().exists()) return DebuggerAvailability.Bundled if (CidrDebuggerPathManager.getBundledGDBBinary().exists()) return DebuggerAvailability.Bundled
val gdbBinaryPath = when { val gdbBinaryPath = when {
SystemInfo.isUnix -> "bin/gdb" SystemInfo.isUnix -> "bin/gdb"
SystemInfo.isWindows -> "bin/gdb.exe" // SystemInfo.isWindows -> "bin/gdb.exe"
else -> return DebuggerAvailability.Unavailable else -> return DebuggerAvailability.Unavailable
} }
@ -116,7 +118,7 @@ class ZigDebuggerToolchainService {
} }
suspend fun msvcAvailability(): DebuggerAvailability<MSVCBinaries> { suspend fun msvcAvailability(): DebuggerAvailability<MSVCBinaries> {
// if (!SystemInfo.isWindows) return DebuggerAvailability.Unavailable if (!SystemInfo.isWindows) return DebuggerAvailability.Unavailable
val msvcBinaryPath = "vsdbg.exe" val msvcBinaryPath = "vsdbg.exe"