@@ -34,157 +34,7 @@ concurrency:
34
34
cancel-in-progress : true
35
35
36
36
jobs :
37
- stage1 :
38
- if : github.repository_owner == 'llvm'
39
- runs-on : libcxx-self-hosted-linux
40
- container : ghcr.io/llvm/libcxx-linux-builder:b6bb9dc5abd7c6452c13a53fa8949cb259db459b
41
- continue-on-error : false
42
- strategy :
43
- fail-fast : false
44
- matrix :
45
- config : [
46
- ' frozen-cxx03-headers' ,
47
- ' generic-cxx03' ,
48
- ' generic-cxx26' ,
49
- ' generic-modules'
50
- ]
51
- cc : [ 'clang-21' ]
52
- cxx : [ 'clang++-21' ]
53
- include :
54
- - config : ' generic-gcc'
55
- cc : ' gcc-14'
56
- cxx : ' g++-14'
57
- steps :
58
- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
59
- - name : ${{ matrix.config }}.${{ matrix.cxx }}
60
- run : libcxx/utils/ci/run-buildbot ${{ matrix.config }}
61
- env :
62
- CC : ${{ matrix.cc }}
63
- CXX : ${{ matrix.cxx }}
64
- - uses : actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
65
- if : always()
66
- with :
67
- name : ${{ matrix.config }}-${{ matrix.cxx }}-results
68
- path : |
69
- **/test-results.xml
70
- **/*.abilist
71
- **/CMakeConfigureLog.yaml
72
- **/CMakeError.log
73
- **/CMakeOutput.log
74
- **/crash_diagnostics/*
75
- stage2 :
76
- if : github.repository_owner == 'llvm'
77
- runs-on : libcxx-self-hosted-linux
78
- container : ghcr.io/llvm/libcxx-linux-builder:b6bb9dc5abd7c6452c13a53fa8949cb259db459b
79
- needs : [ stage1 ]
80
- continue-on-error : false
81
- strategy :
82
- fail-fast : false
83
- matrix :
84
- config : [
85
- ' generic-cxx11' ,
86
- ' generic-cxx14' ,
87
- ' generic-cxx17' ,
88
- ' generic-cxx20' ,
89
- ' generic-cxx23'
90
- ]
91
- cc : [ 'clang-21' ]
92
- cxx : [ 'clang++-21' ]
93
- include :
94
- - config : ' generic-gcc-cxx11'
95
- cc : ' gcc-14'
96
- cxx : ' g++-14'
97
- - config : ' generic-cxx26'
98
- cc : ' clang-20'
99
- cxx : ' clang++-20'
100
- - config : ' generic-cxx26'
101
- cc : ' clang-19'
102
- cxx : ' clang++-19'
103
- steps :
104
- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
105
- - name : ${{ matrix.config }}
106
- run : libcxx/utils/ci/run-buildbot ${{ matrix.config }}
107
- env :
108
- CC : ${{ matrix.cc }}
109
- CXX : ${{ matrix.cxx }}
110
- - uses : actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
111
- if : always() # Upload artifacts even if the build or test suite fails
112
- with :
113
- name : ${{ matrix.config }}-${{ matrix.cxx }}-results
114
- path : |
115
- **/test-results.xml
116
- **/*.abilist
117
- **/CMakeConfigureLog.yaml
118
- **/CMakeError.log
119
- **/CMakeOutput.log
120
- **/crash_diagnostics/*
121
- stage3 :
122
- if : github.repository_owner == 'llvm'
123
- needs : [ stage2 ]
124
- continue-on-error : false
125
- strategy :
126
- fail-fast : false
127
- max-parallel : 8
128
- matrix :
129
- config : [
130
- ' generic-abi-unstable' ,
131
- ' generic-hardening-mode-debug' ,
132
- ' generic-hardening-mode-extensive' ,
133
- ' generic-hardening-mode-fast' ,
134
- ' generic-hardening-mode-fast-with-abi-breaks' ,
135
- ' generic-merged' ,
136
- ' generic-modules-cxx17-lsv' ,
137
- ' generic-no-exceptions' ,
138
- ' generic-no-experimental' ,
139
- ' generic-no-filesystem' ,
140
- ' generic-no-localization' ,
141
- ' generic-no-terminal' ,
142
- ' generic-no-random_device' ,
143
- ' generic-no-threads' ,
144
- ' generic-no-tzdb' ,
145
- ' generic-no-unicode' ,
146
- ' generic-no-wide-characters' ,
147
- ' generic-no-rtti' ,
148
- ' generic-optimized-speed' ,
149
- ' generic-static' ,
150
- ' bootstrapping-build'
151
- ]
152
- machine : [ 'libcxx-self-hosted-linux' ]
153
- include :
154
- - config : ' generic-cxx26'
155
- machine : libcxx-self-hosted-linux
156
- - config : ' generic-asan'
157
- machine : libcxx-self-hosted-linux
158
- - config : ' generic-tsan'
159
- machine : libcxx-self-hosted-linux
160
- - config : ' generic-ubsan'
161
- machine : libcxx-self-hosted-linux
162
- # Use a larger machine for MSAN to avoid timeout and memory allocation issues.
163
- - config : ' generic-msan'
164
- machine : libcxx-self-hosted-linux
165
- runs-on : ${{ matrix.machine }}
166
- container : ghcr.io/llvm/libcxx-linux-builder:b6bb9dc5abd7c6452c13a53fa8949cb259db459b
167
- steps :
168
- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
169
- - name : ${{ matrix.config }}
170
- run : libcxx/utils/ci/run-buildbot ${{ matrix.config }}
171
- env :
172
- CC : clang-21
173
- CXX : clang++-21
174
- - uses : actions/upload-artifact@26f96dfa697d77e81fd5907df203aa23a56210a8 # v4.3.0
175
- if : always()
176
- with :
177
- name : ${{ matrix.config }}-results
178
- path : |
179
- **/test-results.xml
180
- **/*.abilist
181
- **/CMakeConfigureLog.yaml
182
- **/CMakeError.log
183
- **/CMakeOutput.log
184
- **/crash_diagnostics/*
185
-
186
37
macos :
187
- needs : [ stage3 ]
188
38
strategy :
189
39
fail-fast : false
190
40
matrix :
@@ -236,52 +86,3 @@ jobs:
236
86
**/CMakeOutput.log
237
87
**/crash_diagnostics/*
238
88
239
- windows :
240
- runs-on : windows-2022
241
- needs : [ stage2 ]
242
- strategy :
243
- fail-fast : false
244
- matrix :
245
- include :
246
- - { config: clang-cl-dll, mingw: false }
247
- - { config: clang-cl-static, mingw: false }
248
- - { config: clang-cl-no-vcruntime, mingw: false }
249
- - { config: clang-cl-debug, mingw: false }
250
- - { config: clang-cl-static-crt, mingw: false }
251
- - { config: mingw-dll, mingw: true }
252
- - { config: mingw-static, mingw: true }
253
- - { config: mingw-dll-i686, mingw: true }
254
- - { config: mingw-incomplete-sysroot, mingw: true }
255
- steps :
256
- - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
257
- - name : Install dependencies
258
- run : |
259
- choco install -y ninja
260
- pip install psutil
261
- - name : Install a current LLVM
262
- if : ${{ matrix.mingw != true }}
263
- run : |
264
- choco install -y llvm --version=19.1.7 --allow-downgrade
265
- - name : Install llvm-mingw
266
- if : ${{ matrix.mingw == true }}
267
- run : |
268
- curl -LO https://github.com/mstorsjo/llvm-mingw/releases/download/20250114/llvm-mingw-20250114-ucrt-x86_64.zip
269
- powershell Expand-Archive llvm-mingw*.zip -DestinationPath .
270
- del llvm-mingw*.zip
271
- mv llvm-mingw* c:\llvm-mingw
272
- echo "c:\llvm-mingw\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
273
- - name : Simulate a from-scratch build of llvm-mingw
274
- if : ${{ matrix.config == 'mingw-incomplete-sysroot' }}
275
- run : |
276
- rm -r c:\llvm-mingw\include\c++
277
- rm -r c:\llvm-mingw\*-w64-mingw32\lib\libc++*
278
- rm -r c:\llvm-mingw\*-w64-mingw32\lib\libunwind*
279
- - name : Add Git Bash to the path
280
- run : |
281
- echo "c:\Program Files\Git\usr\bin" | Out-File -FilePath $Env:GITHUB_PATH -Encoding utf8 -Append
282
- - name : Set up the MSVC dev environment
283
- if : ${{ matrix.mingw != true }}
284
- uses : ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
285
- - name : Build and test
286
- run : |
287
- bash libcxx/utils/ci/run-buildbot ${{ matrix.config }}
0 commit comments