|
1 | 1 | steps:
|
2 |
| -# If we need to download a custom MinGW, do so here and set the path |
3 |
| -# appropriately. |
4 |
| -# |
5 |
| -# Here we also do a pretty heinous thing which is to mangle the MinGW |
6 |
| -# installation we just downloaded. Currently, as of this writing, we're using |
7 |
| -# MinGW-w64 builds of gcc, and that's currently at 6.3.0. We use 6.3.0 as it |
8 |
| -# appears to be the first version which contains a fix for #40546, builds |
9 |
| -# randomly failing during LLVM due to ar.exe/ranlib.exe failures. |
10 |
| -# |
11 |
| -# Unfortunately, though, 6.3.0 *also* is the first version of MinGW-w64 builds |
12 |
| -# to contain a regression in gdb (#40184). As a result if we were to use the |
13 |
| -# gdb provided (7.11.1) then we would fail all debuginfo tests. |
14 |
| -# |
15 |
| -# In order to fix spurious failures (pretty high priority) we use 6.3.0. To |
16 |
| -# avoid disabling gdb tests we download an *old* version of gdb, specifically |
17 |
| -# that found inside the 6.2.0 distribution. We then overwrite the 6.3.0 gdb |
18 |
| -# with the 6.2.0 gdb to get tests passing. |
19 |
| -# |
20 |
| -# Note that we don't literally overwrite the gdb.exe binary because it appears |
21 |
| -# to just use gdborig.exe, so that's the binary we deal with instead. |
22 |
| -- bash: | |
23 |
| - set -e |
24 |
| - curl -o mingw.7z $MINGW_URL/$MINGW_ARCHIVE |
25 |
| - 7z x -y mingw.7z > /dev/null |
26 |
| - curl -o $MINGW_DIR/bin/gdborig.exe $MINGW_URL/2017-04-20-${MSYS_BITS}bit-gdborig.exe |
27 |
| - echo "##vso[task.prependpath]`pwd`/$MINGW_DIR/bin" |
28 |
| - condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'), ne(variables['MINGW_URL'],'')) |
29 |
| - displayName: Download custom MinGW |
30 |
| - |
31 |
| -# Otherwise install MinGW through `pacman` |
32 |
| -- bash: | |
33 |
| - set -e |
34 |
| - arch=i686 |
35 |
| - if [ "$MSYS_BITS" = "64" ]; then |
36 |
| - arch=x86_64 |
37 |
| - fi |
38 |
| - pacman -S --noconfirm --needed mingw-w64-$arch-toolchain mingw-w64-$arch-cmake mingw-w64-$arch-gcc mingw-w64-$arch-python2 |
39 |
| - echo "##vso[task.prependpath]$(System.Workfolder)/msys2/mingw$MSYS_BITS/bin" |
40 |
| - condition: and(succeeded(), eq(variables['Agent.OS'], 'Windows_NT'), eq(variables['MINGW_URL'],'')) |
41 |
| - displayName: Download standard MinGW |
42 | 2 |
|
43 | 3 | # Note that this is originally from the github releases patch of Ninja
|
44 | 4 | - bash: |
|
|
0 commit comments