mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2025-10-06 00:02:44 +02:00
* changed from Build Tools to Community (congrats Microsoft very cool) * add spining to show it didnt stopped installing Signed-off-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2611 Reviewed-by: crueter <crueter@eden-emu.dev> Reviewed-by: MaranBr <maranbr@eden-emu.dev> Co-authored-by: Caio Oliveira <caiooliveirafarias0@gmail.com> Co-committed-by: Caio Oliveira <caiooliveirafarias0@gmail.com>
61 lines
2.6 KiB
PowerShell
Executable File
61 lines
2.6 KiB
PowerShell
Executable File
# SPDX-FileCopyrightText: 2025 Eden Emulator Project
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
$ErrorActionPreference = "Stop"
|
|
|
|
# Check if running as administrator
|
|
if (-not ([bool](net session 2>$null))) {
|
|
Write-Host "This script must be run with administrator privileges!"
|
|
Exit 1
|
|
}
|
|
|
|
$VSVer = "17"
|
|
$ExeFile = "vs_community.exe"
|
|
$Uri = "https://aka.ms/vs/$VSVer/release/$ExeFile"
|
|
$Destination = "./$ExeFile"
|
|
|
|
Write-Host "Downloading Visual Studio Build Tools from $Uri"
|
|
$WebClient = New-Object System.Net.WebClient
|
|
$WebClient.DownloadFile($Uri, $Destination)
|
|
Write-Host "Finished downloading $ExeFile"
|
|
|
|
$Arguments = @(
|
|
"--quiet", # Suppress installer UI
|
|
"--wait", # Wait for installation to complete
|
|
"--norestart", # Prevent automatic restart
|
|
"--force", # Force installation even if components are already installed
|
|
"--add Microsoft.VisualStudio.Workload.NativeDesktop", # Desktop development with C++
|
|
"--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64", # Core C++ compiler/tools for x86/x64
|
|
"--add Microsoft.VisualStudio.Component.Windows11SDK.26100",# Windows 11 SDK (26100)
|
|
"--add Microsoft.VisualStudio.Component.Windows10SDK.19041",# Windows 10 SDK (19041)
|
|
"--add Microsoft.VisualStudio.Component.VC.Llvm.Clang", # LLVM Clang compiler
|
|
"--add Microsoft.VisualStudio.Component.VC.Llvm.ClangToolset", # LLVM Clang integration toolset
|
|
"--add Microsoft.VisualStudio.Component.Windows11SDK.22621",# Windows 11 SDK (22621)
|
|
"--add Microsoft.VisualStudio.Component.VC.CMake.Project", # CMake project support
|
|
"--add Microsoft.VisualStudio.ComponentGroup.VC.Tools.142.x86.x64", # VC++ 14.2 toolset
|
|
"--add Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Llvm.Clang" # LLVM Clang for native desktop
|
|
)
|
|
|
|
Write-Host "Installing Visual Studio Build Tools"
|
|
$InstallProcess = Start-Process -FilePath $Destination -NoNewWindow -PassThru -ArgumentList $Arguments
|
|
|
|
# Spinner while installing
|
|
$Spinner = "|/-\"
|
|
$i = 0
|
|
while (-not $InstallProcess.HasExited) {
|
|
Write-Host -NoNewline ("`rInstalling... " + $Spinner[$i % $Spinner.Length])
|
|
Start-Sleep -Milliseconds 250
|
|
$i++
|
|
}
|
|
|
|
# Clear spinner line
|
|
Write-Host "`rSetup completed! "
|
|
|
|
$ExitCode = $InstallProcess.ExitCode
|
|
if ($ExitCode -ne 0) {
|
|
Write-Host "Error installing Visual Studio Build Tools (Error: $ExitCode)"
|
|
Exit $ExitCode
|
|
}
|
|
|
|
Write-Host "Finished installing Visual Studio Build Tools"
|