@@ -33,18 +33,22 @@ jobs:
33
33
os : windows-2022
34
34
arch : x64
35
35
with_asserts : false
36
+ clang_version : 19.1.3 # the MSVC headers require clang 16+
36
37
- job_name : Windows x64 withAsserts
37
38
os : windows-2022
38
39
arch : x64
39
40
with_asserts : true
41
+ clang_version : 19.1.3 # the MSVC headers require clang 16+
40
42
- job_name : Windows x86
41
43
os : windows-2022
42
44
arch : x86
43
45
with_asserts : false
46
+ clang_version : 19.1.3 # the MSVC headers require clang 16+
44
47
- job_name : Windows x86 withAsserts
45
48
os : windows-2022
46
49
arch : x86
47
50
with_asserts : true
51
+ clang_version : 19.1.3 # the MSVC headers require clang 16+
48
52
- job_name : Linux x86_64
49
53
os : ubuntu-20.04
50
54
arch : x86_64
53
57
os : ubuntu-20.04
54
58
arch : x86_64
55
59
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
56
72
- job_name : macOS arm64
57
73
os : macos-15
58
74
arch : arm64
@@ -71,16 +87,23 @@ jobs:
71
87
with_asserts : true
72
88
name : ${{ matrix.job_name }}
73
89
runs-on : ${{ matrix.os }}
90
+ container : ${{ matrix.container_image }}
74
91
timeout-minutes : 240
75
92
env :
76
93
MACOSX_DEPLOYMENT_TARGET : ${{ matrix.arch == 'arm64' && '11.0' || '10.12' }}
77
94
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
78
102
- uses : actions/checkout@v4
79
103
- name : Install prerequisites
80
104
uses : ./.github/actions/1-setup
81
105
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 }}
84
107
arch : ${{ matrix.arch }}
85
108
# BOLT supports ELF binaries only, so include it for Linux packages only
86
109
- name : Build & install LLVM incl. LLD, compiler-rt${{ runner.os == 'Linux' && ', BOLT' || '' }}
@@ -134,7 +157,7 @@ jobs:
134
157
uses : ./.github/actions/1-setup
135
158
with :
136
159
clang_version : ${{ env.CLANG_VERSION }}
137
- arch : ${{ matrix.arch }}
160
+ arch : x86_64
138
161
- name : Build native llvm-tblgen
139
162
shell : bash
140
163
run : |
0 commit comments