Skip to content

Commit c7a48a5

Browse files
committed
Revert back to Git-for-Windows for MinGW CI builds
In rust-lang#121182 the mingw build was changed to use MSYS2's version of Git. This commit reverts that, as it was considered too slow.
1 parent e27c472 commit c7a48a5

File tree

2 files changed

+21
-13
lines changed

2 files changed

+21
-13
lines changed

INSTALL.md

+13-7
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,15 @@ toolchain.
145145

146146
1. Download the latest [MSYS2 installer][msys2] and go through the installer.
147147

148+
2. Download and install [Git for Windows](https://git-scm.com/download/win).
149+
Make sure that it's in your Windows PATH. To enable access to it from within
150+
MSYS2, edit the relevant `mingw[32|64].ini` file in your MSYS2 installation
151+
directory and uncomment the line `MSYS2_PATH_TYPE=inherit`.
152+
153+
You could install and use MSYS2's version of git instead with `pacman`,
154+
however this is not recommended as it's excrutiatingly slow, and not frequently
155+
tested for compatability.
156+
148157
2. Start a MINGW64 or MINGW32 shell (depending on whether you want 32-bit
149158
or 64-bit Rust) either from your start menu, or by running `mingw64.exe`
150159
or `mingw32.exe` from your MSYS2 installation directory (e.g. `C:\msys64`).
@@ -160,8 +169,7 @@ toolchain.
160169
# Note that it is important that you do **not** use the 'python2', 'cmake',
161170
# and 'ninja' packages from the 'msys2' subsystem.
162171
# The build has historically been known to fail with these packages.
163-
pacman -S git \
164-
make \
172+
pacman -S make \
165173
diffutils \
166174
tar \
167175
mingw-w64-x86_64-python \
@@ -176,11 +184,9 @@ toolchain.
176184
python x.py setup dist && python x.py build && python x.py install
177185
```
178186

179-
If you want to use the native versions of Git, Python, or CMake you can remove
180-
them from the above pacman command and install them from another source. Make
181-
sure that they're in your Windows PATH, and edit the relevant `mingw[32|64].ini`
182-
file in your MSYS2 installation directory by uncommenting the line
183-
`MSYS2_PATH_TYPE=inherit` to include them in your MSYS2 PATH.
187+
If you want to try the native Windows versions of Python or CMake, you can remove
188+
them from the above pacman command and install them from another source. Follow
189+
the instructions in step 2 to get them on PATH.
184190

185191
Using Windows native Python can be helpful if you get errors when building LLVM.
186192
You may also want to use Git for Windows, as it is often *much* faster. Turning

src/ci/scripts/install-msys2.sh

+8-6
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,14 @@ if isWindows; then
3131
# Delete these pre-installed tools so we can't accidentally use them, because we are using the
3232
# MSYS2 setup action versions instead.
3333
# Delete pre-installed version of MSYS2
34+
echo "Cleaning up tools in PATH"
3435
rm -r "/c/msys64/"
3536
# Delete Strawberry Perl, which contains a version of mingw
3637
rm -r "/c/Strawberry/"
3738
# Delete these other copies of mingw, I don't even know where they come from.
3839
rm -r "/c/mingw64/"
3940
rm -r "/c/mingw32/"
41+
echo "Finished cleaning up tools in PATH"
4042

4143
if isKnownToBeMingwBuild; then
4244
# Use the mingw version of CMake for mingw builds.
@@ -46,11 +48,11 @@ if isWindows; then
4648
# Install mingw-w64-$arch-cmake
4749
pacboy -S --noconfirm cmake:p
4850

49-
# We use Git-for-Windows for MSVC builds, and MSYS2 Git for mingw builds,
50-
# so that both are tested.
51-
# Delete Windows-Git
52-
rm -r "/c/Program Files/Git/"
53-
# Install MSYS2 git
54-
pacman -S --noconfirm git
51+
# It would be nice to use MSYS's git in MinGW builds so that it's tested and known to
52+
# work. But it makes everything extremely slow, so it's commented out for now.
53+
# # Delete Windows-Git
54+
# rm -r "/c/Program Files/Git/"
55+
# # Install MSYS2 git
56+
# pacman -S --noconfirm git
5557
fi
5658
fi

0 commit comments

Comments
 (0)