@@ -33,18 +33,22 @@ jobs:
3333 os : windows-2022
3434 arch : x64
3535 with_asserts : false
36+ clang_version : 19.1.3 # the MSVC headers require clang 16+
3637 - job_name : Windows x64 withAsserts
3738 os : windows-2022
3839 arch : x64
3940 with_asserts : true
41+ clang_version : 19.1.3 # the MSVC headers require clang 16+
4042 - job_name : Windows x86
4143 os : windows-2022
4244 arch : x86
4345 with_asserts : false
46+ clang_version : 19.1.3 # the MSVC headers require clang 16+
4447 - job_name : Windows x86 withAsserts
4548 os : windows-2022
4649 arch : x86
4750 with_asserts : true
51+ clang_version : 19.1.3 # the MSVC headers require clang 16+
4852 - job_name : Linux x86_64
4953 os : ubuntu-20.04
5054 arch : x86_64
5357 os : ubuntu-20.04
5458 arch : x86_64
5559 with_asserts : true
60+ - job_name : Linux aarch64
61+ os : ubuntu-22.04-arm # Ubuntu 20 not natively supported
62+ container_image : ubuntu:20.04
63+ arch : aarch64
64+ with_asserts : false
65+ clang_version : 15.0.3 # 15.0.6 requires a more recent libstdc++.so.6 than shipped with Ubuntu 20
66+ - job_name : Linux aarch64 withAsserts
67+ os : ubuntu-22.04-arm # Ubuntu 20 not natively supported
68+ container_image : ubuntu:20.04
69+ arch : aarch64
70+ with_asserts : true
71+ clang_version : 15.0.3 # 15.0.6 requires a more recent libstdc++.so.6 than shipped with Ubuntu 20
5672 - job_name : macOS arm64
5773 os : macos-15
5874 arch : arm64
@@ -71,16 +87,23 @@ jobs:
7187 with_asserts : true
7288 name : ${{ matrix.job_name }}
7389 runs-on : ${{ matrix.os }}
90+ container : ${{ matrix.container_image }}
7491 timeout-minutes : 240
7592 env :
7693 MACOSX_DEPLOYMENT_TARGET : ${{ matrix.arch == 'arm64' && '11.0' || '10.12' }}
7794 steps :
95+ - name : ' Container: Install git and sudo'
96+ if : matrix.container_image
97+ shell : bash
98+ run : |
99+ set -eux
100+ apt-get -q update
101+ DEBIAN_FRONTEND=noninteractive apt-get -yq install git-core sudo
78102 - uses : actions/checkout@v4
79103 - name : Install prerequisites
80104 uses : ./.github/actions/1-setup
81105 with :
82- # on Windows, the MSVC headers require clang 16+
83- clang_version : ${{ runner.os == 'Windows' && '19.1.3' || env.CLANG_VERSION }}
106+ clang_version : ${{ matrix.clang_version || env.CLANG_VERSION }}
84107 arch : ${{ matrix.arch }}
85108 # BOLT supports ELF binaries only, so include it for Linux packages only
86109 - name : Build & install LLVM incl. LLD, compiler-rt${{ runner.os == 'Linux' && ', BOLT' || '' }}
@@ -134,7 +157,7 @@ jobs:
134157 uses : ./.github/actions/1-setup
135158 with :
136159 clang_version : ${{ env.CLANG_VERSION }}
137- arch : ${{ matrix.arch }}
160+ arch : x86_64
138161 - name : Build native llvm-tblgen
139162 shell : bash
140163 run : |
0 commit comments