diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts index ff202a7..74bd1bc 100644 --- a/build/gulpfile.reh.ts +++ b/build/gulpfile.reh.ts @@ -54,2 +54,3 @@ const BUILD_TARGETS = [ { platform: 'linux', arch: 'riscv64' }, + { platform: 'linux', arch: 'loong64' }, { platform: 'alpine', arch: 'arm64' }, diff --git a/build/gulpfile.scan.ts b/build/gulpfile.scan.ts index dd5bb56..e7881de 100644 --- a/build/gulpfile.scan.ts +++ b/build/gulpfile.scan.ts @@ -26,2 +26,3 @@ const BUILD_TARGETS = [ { platform: 'linux', arch: 'riscv64' }, + { platform: 'linux', arch: 'loong64' }, ]; diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts index b64dd9a..e146586 100644 --- a/build/gulpfile.vscode.linux.ts +++ b/build/gulpfile.vscode.linux.ts @@ -34,2 +34,3 @@ function getDebPackageArch(arch: string): string { case 'riscv64': return 'riscv64'; + case 'loong64': return 'loong64'; default: throw new Error(`Unknown arch: ${arch}`); @@ -146,2 +147,3 @@ function getRpmPackageArch(arch: string): string { case 'riscv64': return 'riscv64'; + case 'loong64': return 'loong64'; default: throw new Error(`Unknown arch: ${arch}`); @@ -292,2 +294,3 @@ const BUILD_TARGETS = [ { arch: 'riscv64' }, + { arch: 'loong64' }, ]; diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts index 15bd141..cabe16f 100644 --- a/build/gulpfile.vscode.ts +++ b/build/gulpfile.vscode.ts @@ -509,2 +509,3 @@ const BUILD_TARGETS = [ { platform: 'linux', arch: 'riscv64' }, + { platform: 'linux', arch: 'loong64' }, ]; diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs index f1afd87..0a5e6df 100644 --- a/cli/src/update_service.rs +++ b/cli/src/update_service.rs @@ -188,2 +188,3 @@ pub enum Platform { LinuxRISCV64, + LinuxLoong64, DarwinX64, @@ -208,2 +209,3 @@ impl Platform { Platform::LinuxRISCV64 => "riscv64", + Platform::LinuxLoong64 => "loong64", Platform::DarwinX64 => "x64", @@ -229,2 +231,3 @@ impl Platform { Platform::LinuxRISCV64 => "linux", + Platform::LinuxLoong64 => "linux", Platform::DarwinX64 => "darwin", @@ -261,2 +264,4 @@ impl Platform { Some(Platform::LinuxRISCV64) + } else if cfg!(all(target_os = "linux", target_arch = "loongarch64")) { + Some(Platform::LinuxLoong64) } else if cfg!(all(target_os = "macos", target_arch = "x86_64")) { @@ -290,2 +295,3 @@ impl fmt::Display for Platform { Platform::LinuxRISCV64 => "LinuxRISCV64", + Platform::LinuxLoong64 => "LinuxLoong64", Platform::DarwinX64 => "DarwinX64", diff --git a/cli/src/util/prereqs.rs b/cli/src/util/prereqs.rs index 1a37552..ff191a1 100644 --- a/cli/src/util/prereqs.rs +++ b/cli/src/util/prereqs.rs @@ -86,2 +86,4 @@ impl PreReqChecker { Platform::LinuxRISCV64 + } else if cfg!(target_arch = "loongarch64") { + Platform::LinuxLoong64 } else { diff --git a/resources/server/bin/helpers/check-requirements-linux.sh b/resources/server/bin/helpers/check-requirements-linux.sh index b18e402..0b7aa4e 100644 --- a/resources/server/bin/helpers/check-requirements-linux.sh +++ b/resources/server/bin/helpers/check-requirements-linux.sh @@ -57,2 +57,3 @@ case $ARCH in riscv64) LDCONFIG_ARCH="RISC-V";; + loongarch64) LDCONFIG_ARCH="double-float";; esac diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts index b607327..7162d83 100644 --- a/src/vs/platform/extensionManagement/common/extensionManagement.ts +++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts @@ -50,2 +50,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) { case TargetPlatform.LINUX_RISCV64: return 'Linux RISC-V 64'; + case TargetPlatform.LINUX_LOONG64: return 'Linux Loong64'; @@ -75,2 +76,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform { case TargetPlatform.LINUX_RISCV64: return TargetPlatform.LINUX_RISCV64; + case TargetPlatform.LINUX_LOONG64: return TargetPlatform.LINUX_LOONG64; @@ -116,2 +118,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string | } + if (arch === 'loong64') { + return TargetPlatform.LINUX_LOONG64; + } return TargetPlatform.UNKNOWN; diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts index 96d08cb..51e67ea 100644 --- a/src/vs/platform/extensions/common/extensions.ts +++ b/src/vs/platform/extensions/common/extensions.ts @@ -332,2 +332,3 @@ export const enum TargetPlatform { LINUX_RISCV64 = 'linux-riscv64', + LINUX_LOONG64 = 'linux-loong64',