Re: [PATCH 1/4] ci(gitlab,windows): provision GNU Rust for SDK-based MinGW builds
flat view
From: Johannes Schindelin <hidden>
Date: 2026-09-24 19:26:14
Hi Patrick, On Thu, 24 Sep 2026, Patrick Steinhardt wrote:
On Sat, Sep 19, 2026 at 12:12:10PM +0000, Johannes Schindelin via GitGitGadget wrote:quoted
From: Johannes Schindelin <redacted> The minimal Git for Windows SDK already supplies Git and GCC. The MinGW Makefile build needs the GNU Rust toolchain, not another Git installation or Meson.Huh, what's GNU Rust?
Sorry, poor wording. I meant the Rust toolchain compatible with GCC (as opposed to the Rust toolchain producing Visual C-compatible libraries). Will reword. Using `git history reword`, thank you so much for that!
quoted
Let the dependency installer serve this configuration while keeping the existing package set for MSVC builds.Okay. What's implicit here is that we in fact don't use this script at all at the current point in time for our MinGW build, we rather use the "install-sdk.ps1" script. I assume it will be wired up in the next step, so let's read on.
Correct. Will clarify the commit message.
quoted
diff --git a/ci/install-dependencies.ps1 b/ci/install-dependencies.ps1 index e3b367fa54..8c68fb0cfc 100755 --- a/ci/install-dependencies.ps1 +++ b/ci/install-dependencies.ps1@@ -41,6 +42,17 @@ function Invoke-Installer { } } +$rustTarget = if ($Mingw) { 'gnu' } else { 'msvc' } +$rustMsi = Get-Installer "rust-$rustTarget.msi" ( + "https://static.rust-lang.org/dist/" + + "rust-$RustVersion-x86_64-pc-windows-$rustTarget.msi") +Invoke-Installer msiexec.exe @('/i', $rustMsi, 'INSTALLDIR=C:\Rust', + 'ADDLOCAL=Rustc,Cargo,Std', '/quiet', '/norestart') + +if ($Mingw) { + return +} + $gitAssetVersion = $GitVersion -replace '\.windows\.\d+$', '' $gitInstaller = Get-Installer "Git-Installer.exe" ` "https://github.com/git-for-windows/git/releases/download/v$GitVersion/PortableGit-$gitAssetVersion-64-bit.7z.exe"Okay, so installing Rust is the only thing we will want to do on both MSVC and MinGW builds.
Precisely (or as Claude would say: You're absolutely right!), Johannes