Re: [PATCH 1/4] ci(gitlab,windows): provision GNU Rust for SDK-based MinGW builds
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Sep 24, 2026, 19:26 UTC
- Message-ID
- <e58bdd38-59df-5fd0-8c80-e9ab9714dd97@gmx.de>
- In-Reply-To
- <arUHyjHAX20ovmr8@pks.im>
Hi Patrick,
On Thu, 24 Sep 2026, Patrick Steinhardt wrote:
Show 8 quoted lines
> On Sat, Sep 19, 2026 at 12:12:10PM +0000, Johannes Schindelin via GitGitGadget wrote: > > From: Johannes Schindelin <johannes.schindelin@gmx.de> > > > > 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!
Show 7 quoted lines
> > 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.
Show 25 quoted lines
> > 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