Cleanup custom mingw in CI
This commit is contained in:
parent
bdbbb6c6a7
commit
f63931bc1a
3
.github/workflows/ci.yml
vendored
3
.github/workflows/ci.yml
vendored
@ -155,9 +155,6 @@ jobs:
|
|||||||
- name: checkout submodules
|
- name: checkout submodules
|
||||||
run: src/ci/scripts/checkout-submodules.sh
|
run: src/ci/scripts/checkout-submodules.sh
|
||||||
|
|
||||||
- name: install MSYS2
|
|
||||||
run: src/ci/scripts/install-msys2.sh
|
|
||||||
|
|
||||||
- name: install MinGW
|
- name: install MinGW
|
||||||
run: src/ci/scripts/install-mingw.sh
|
run: src/ci/scripts/install-mingw.sh
|
||||||
|
|
||||||
|
@ -378,7 +378,6 @@ auto:
|
|||||||
# We are intentionally allowing an old toolchain on this builder (and that's
|
# We are intentionally allowing an old toolchain on this builder (and that's
|
||||||
# incompatible with LLVM downloads today).
|
# incompatible with LLVM downloads today).
|
||||||
NO_DOWNLOAD_CI_LLVM: 1
|
NO_DOWNLOAD_CI_LLVM: 1
|
||||||
CUSTOM_MINGW: 1
|
|
||||||
<<: *job-windows-8c
|
<<: *job-windows-8c
|
||||||
|
|
||||||
- image: x86_64-mingw
|
- image: x86_64-mingw
|
||||||
@ -390,7 +389,6 @@ auto:
|
|||||||
# We are intentionally allowing an old toolchain on this builder (and that's
|
# We are intentionally allowing an old toolchain on this builder (and that's
|
||||||
# incompatible with LLVM downloads today).
|
# incompatible with LLVM downloads today).
|
||||||
NO_DOWNLOAD_CI_LLVM: 1
|
NO_DOWNLOAD_CI_LLVM: 1
|
||||||
CUSTOM_MINGW: 1
|
|
||||||
<<: *job-windows-8c
|
<<: *job-windows-8c
|
||||||
|
|
||||||
- image: dist-x86_64-msvc
|
- image: dist-x86_64-msvc
|
||||||
@ -439,7 +437,6 @@ auto:
|
|||||||
# incompatible with LLVM downloads today).
|
# incompatible with LLVM downloads today).
|
||||||
NO_DOWNLOAD_CI_LLVM: 1
|
NO_DOWNLOAD_CI_LLVM: 1
|
||||||
SCRIPT: python x.py dist bootstrap --include-default-paths
|
SCRIPT: python x.py dist bootstrap --include-default-paths
|
||||||
CUSTOM_MINGW: 1
|
|
||||||
DIST_REQUIRE_ALL_TOOLS: 1
|
DIST_REQUIRE_ALL_TOOLS: 1
|
||||||
<<: *job-windows-8c
|
<<: *job-windows-8c
|
||||||
|
|
||||||
@ -453,7 +450,6 @@ auto:
|
|||||||
# We are intentionally allowing an old toolchain on this builder (and that's
|
# We are intentionally allowing an old toolchain on this builder (and that's
|
||||||
# incompatible with LLVM downloads today).
|
# incompatible with LLVM downloads today).
|
||||||
NO_DOWNLOAD_CI_LLVM: 1
|
NO_DOWNLOAD_CI_LLVM: 1
|
||||||
CUSTOM_MINGW: 1
|
|
||||||
DIST_REQUIRE_ALL_TOOLS: 1
|
DIST_REQUIRE_ALL_TOOLS: 1
|
||||||
<<: *job-windows-8c
|
<<: *job-windows-8c
|
||||||
|
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# If we need to download a custom MinGW, do so here and set the path
|
# If we need to download a custom MinGW, do so here and set the path
|
||||||
# appropriately.
|
# appropriately.
|
||||||
#
|
|
||||||
# Otherwise install MinGW through `pacman`
|
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
IFS=$'\n\t'
|
IFS=$'\n\t'
|
||||||
@ -16,19 +14,16 @@ if isWindows && isKnownToBeMingwBuild; then
|
|||||||
case "${CI_JOB_NAME}" in
|
case "${CI_JOB_NAME}" in
|
||||||
*i686*)
|
*i686*)
|
||||||
bits=32
|
bits=32
|
||||||
arch=i686
|
|
||||||
mingw_archive="${MINGW_ARCHIVE_32}"
|
mingw_archive="${MINGW_ARCHIVE_32}"
|
||||||
;;
|
;;
|
||||||
*x86_64*)
|
*x86_64*)
|
||||||
bits=64
|
bits=64
|
||||||
arch=x86_64
|
|
||||||
mingw_archive="${MINGW_ARCHIVE_64}"
|
mingw_archive="${MINGW_ARCHIVE_64}"
|
||||||
;;
|
;;
|
||||||
*aarch64*)
|
*aarch64*)
|
||||||
# aarch64 is a cross-compiled target. Use the x86_64
|
# aarch64 is a cross-compiled target. Use the x86_64
|
||||||
# mingw, since that's the host architecture.
|
# mingw, since that's the host architecture.
|
||||||
bits=64
|
bits=64
|
||||||
arch=x86_64
|
|
||||||
mingw_archive="${MINGW_ARCHIVE_64}"
|
mingw_archive="${MINGW_ARCHIVE_64}"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@ -38,13 +33,9 @@ if isWindows && isKnownToBeMingwBuild; then
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [[ "${CUSTOM_MINGW:-0}" == 0 ]]; then
|
|
||||||
pacman -S --noconfirm --needed mingw-w64-$arch-toolchain
|
|
||||||
else
|
|
||||||
mingw_dir="mingw${bits}"
|
mingw_dir="mingw${bits}"
|
||||||
|
|
||||||
curl -o mingw.7z "${MIRRORS_BASE}/${mingw_archive}"
|
curl -o mingw.7z "${MIRRORS_BASE}/${mingw_archive}"
|
||||||
7z x -y mingw.7z > /dev/null
|
7z x -y mingw.7z > /dev/null
|
||||||
ciCommandAddPath "$(pwd)/${mingw_dir}/bin"
|
ciCommandAddPath "$(pwd)/${mingw_dir}/bin"
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# Clean up and prepare the MSYS2 installation.
|
|
||||||
# MSYS2 is used by the MinGW toolchain for assembling things.
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
IFS=$'\n\t'
|
|
||||||
|
|
||||||
source "$(cd "$(dirname "$0")" && pwd)/../shared.sh"
|
|
||||||
if isWindows; then
|
|
||||||
# Detect the native Python version installed on the agent. On GitHub
|
|
||||||
# Actions, the C:\hostedtoolcache\windows\Python directory contains a
|
|
||||||
# subdirectory for each installed Python version.
|
|
||||||
#
|
|
||||||
# The -V flag of the sort command sorts the input by version number.
|
|
||||||
native_python_version="$(ls /c/hostedtoolcache/windows/Python | sort -Vr | head -n 1)"
|
|
||||||
|
|
||||||
# Make sure we use the native python interpreter instead of some msys equivalent
|
|
||||||
# one way or another. The msys interpreters seem to have weird path conversions
|
|
||||||
# baked in which break LLVM's build system one way or another, so let's use the
|
|
||||||
# native version which keeps everything as native as possible.
|
|
||||||
python_home="/c/hostedtoolcache/windows/Python/${native_python_version}/x64"
|
|
||||||
if ! [[ -f "${python_home}/python3.exe" ]]; then
|
|
||||||
cp "${python_home}/python.exe" "${python_home}/python3.exe"
|
|
||||||
fi
|
|
||||||
ciCommandAddPath "C:\\hostedtoolcache\\windows\\Python\\${native_python_version}\\x64"
|
|
||||||
ciCommandAddPath "C:\\hostedtoolcache\\windows\\Python\\${native_python_version}\\x64\\Scripts"
|
|
||||||
fi
|
|
Loading…
Reference in New Issue
Block a user